wget –recursive –page-requisites –html-extension=on –adjust-extension –convert-links="on" –domains="www.xxx.com" –no-parent http://www.xxx.com
分類彙整: 技術小抄
postfix 發送電子報亂碼問題
修改 /etc/postfix/main.cf
加上
line_length_limit=20480
smtp_line_length_limit=20480
CentOS 6.x 中把clamav 和 postfix 整合
傳統上都是把 clamav 和 mailscanner 或 amavisd-new 整合後再和postfix 整合。
但是一方面postfix已經能夠擋掉一大堆廣告信了,另一方面不知道為什麼,amavisd與 mailscanner跟CentOS的整合度真的太爛了,三不五時就出現一大堆perl module錯誤,每次都要搞個半死。
所以我這次乾脆不管了,直接把 clamav與 postfix接起來。
作法就是裝起 clamd 與 clamav-milter
修改一下 /etc/clamav-milter.conf 確認一下 soket 檔案的位置(照說不用修改)
確認一下 /etc/group ,postfix 必須屬於 clamav的群組
修改 /etc/postfix/main.cf 加上
milter_protocol = 2
smtpd_milters=unix:/var/clamav/clmilter.socket
然後把 clamd clamav-milter postfix都重跑,並且設定為開機自動啟動即可。
繁簡體轉換的問題
這是一個老問題,我們用過很多解法來解,甚至自己做過對照表,最近看到一種比較有效率的作法,利用php的 iconv()函數裡面的 //TRANSLIT//IGNORE 避免沒有對應碼時就中止輸出的問題。
$word=iconv(‘big5′,’gb2312’,$word); 這樣遇到缺碼就自動停止輸出
$word=iconv(‘big5′,’gb2312//IGNORE’,$word); 遇到缺碼就保持原輸入碼
$word=iconv(‘big5′,’gb2312//TRANSLIT’,$word); 遇到缺碼就用替代字(如果有的話)
$word=iconv(‘big5′,’gb2312//TRANSLIT//IGNORE’,$word); 這個最終極,遇到缺碼就用替代字(如果有的話),沒有替代字就保持原輸入碼
CentOS 6.2 的 dovecot 與 iPhone 的衝突 disable_plaintext_auth
最近剛剛更換 CentOS 6.2。
一堆iphone使用者來跟我抱怨pop3 imap 無法收信,後來我檢查 maillog才發現是這個問題
簡單的說,只要在
/etc/dovecot/dovecot.conf
裡面加上:
disable_plaintext_auth = no
/etc/init.d/dovecot restart
就可以了。
CentOS 5 與 GPT的硬碟分割
2T以上的硬碟必須用GPT的硬碟分割處理。但是CentOS的 grub 居然沒有辦法支援GTP分割,導致沒辦法安裝開機。
解決方案就是用
http://www.sysresccd.org
開進去,
把 root paration mount 在 /mnt 裡面,然後
用 grub-install –recheck –root-directory=/mnt /dev/sda
搞定!
可以參考:
http://www.wensley.org.uk/gpt
製作目錄裡面檔案索引(index.html)的小程式
<?php
if ($argc<=1)
{
echo " $argc gen_index.php dir_name Error!\n";
exit;
}
$targetdir=$argv[1];
echo "target=$targetdir \n";
$sdp=opendir($targetdir);
$fp=fopen($targetdir."/index.html","w");
fwrite($fp,'<html><head><meta http-equiv="Content-Type" content="text/html; charset=big5">
<title>Directory List</title></head><body>’);
while (false!==($file = readdir($sdp))) {
if ($file != "." && $file != ".." && $file !=’index.html’) {
$sd=$targetdir."/".$file;
if (is_dir($sd))
{
system("php gen_index.php ${targetdir}/$file");
fwrite($fp,iconv(‘utf-8′,’big5′,'<a href="’.$file.’/index.html">’.$file.'</a><br/>’."\n"));
}
else
fwrite($fp,iconv(‘utf-8′,’big5′,'<a href="’.$file.’">’.$file.'</a><br/>’."\n"));
}
}
fwrite($fp,'</body></html>’);
fclose($fp);
closedir($sdp);
?>
i7 上 CentOS 5.6的溫度偵測解法
標準的 CentOS 5.x 不能偵測i7 CPU 的溫度,使用以下的手法就可以搞定
yum install lm_sensors
cd /usr/sbin
rm -rf sensors-detect
wget http://dl.lm-sensors.org/lm-sensors/files/sensors-detect
chmod 755 sensors-detect
sensors-detect
全部接受 default
/usr/bin/sensors
就可以取得溫度了
USB開機隨身碟製作小抄
當然先要 fdisk 一下 /dev/sdb
#### make boot USB
mke2fs -j -L /boot /dev/sdb1
mount /dev/sdb1 /mnt/tmp/boot/
cd /mnt/tmp/boot/
cp -a ~tjm/boot/service/* .
sync
grub-install –recheck –root-directory=/mnt/tmp /dev/sdb
cd ..
umount /dev/sdb1
20101121技術組會議記錄
joshua 聖經錄音十一章上傳
tjm 處理聖經錄音問題
ksf 聯絡hinet 改年繳
大家開始研究Redhat ES 6.0