Postfix 加上 DNSBL, Postgrey 防 Spam

看到 Leeym 長輩發表的 "ORDB 要關門了,改改 DNSBL 設定吧" 這篇文章後, 想想, 好像自己被垃圾信困擾很久, 都已經直接把連絡方式改成 gmail 了, 但是自己平常管理的系統還是一堆廣告信, 總是很煩~

之前防 Spam 的處理已經全被我拿掉了, 自從我發現到那些處理會讓每封信進來, 都讓 CPU 滿載一次~ 我就全權交給 gmail 了(記得好像是會經過兩次防毒, 一次 spamassassin, 然後 procmail filter ... 等等).. XD

閱讀全文〈Postfix 加上 DNSBL, Postgrey 防 Spam〉

MySQL Master Crash, Slave Replication 快速修復

MySQL Master 如果意外的當掉, 重新開機.. 等等狀況, 造成 Replication 不會動, 通常會是 binlog 壞掉造成的, 通常看到這個能做的大多是重新把 Master 的資料倒出來, 再倒回 Slave, 然後重新開始, 但是當運氣不太好, 三天兩頭就有機器又燒起來的狀況, 就會去想更好的解法......

閱讀全文〈MySQL Master Crash, Slave Replication 快速修復〉

讓遠端可 VNC 或 AOC 進 NAT 內的電腦(IPTABLES)

讓遠端外面的機器可以連進 NAT 的某台電腦, 只要 iptables 設定兩個 port 即可.

/sbin/iptables -t nat -A PREROUTING -p tcp --dport 5800 -i ppp0 -j DNAT --to 192.168.1.1
/sbin/iptables -t nat -A PREROUTING -p tcp --dport 5900 -i ppp0 -j DNAT --to 192.168.1.1

  • ppp0: 看對外的網卡是哪個, 就換成哪個 ex: eth0, eth1
  • 192.168.1.1: 要連進內部的 IP 是哪個, 由此設定.

閱讀全文〈讓遠端可 VNC 或 AOC 進 NAT 內的電腦(IPTABLES)〉

Unix 基本指令: Cut

突然發現 cut 的好用, 來做 Linux (Unix) 基本指令介紹, 也當做筆記來用~~

cut 有三個參數:

  • -c list: 一段範圍清單, 以','隔開, 直列切割(ex: 1,3,5-10,33)
  • -d delim: 可以設中間間隔符號要哪種, 預設是tab分隔切割, 通常會搭配 -f(決定要取切割欄位的哪欄)
  • -f list: 以欄位為主, 作剪下的動作, list 是欄位編號或一段範圍的清單(類同 -c 參數)

閱讀全文〈Unix 基本指令: Cut〉

rsync - get 和 push 目錄同步

rsync 兩台機器間的檔案要相互同步, 只比對時間較新就是新資料.(記得兩台機器都得要有 rsync)

以下例子假設兩台機器的 src 目錄要同步(刪除檔案若要相互刪掉, 需各加 --delete)

get:

rsync -avuzb HOSTNAME:PATH/src PATH

push:

rsync -Cavuzb PATH/src HOSTNAME:PATH

每次要 sync, 就先 get 再 push 即可(類同 cvs update 再 commit, 但沒 cvs 那麼強大功能, 請小心使用.), 可以加入以下兩個 alias(請自行修改, 將 HOSTNAME、PATH、DIST_PATH 換掉)

alias rget='rsync -avuzb HOSTNAME:PATH/src DIST_PATH'
alias rpush='rsync -Cavuzb PATH/src HOSTNAME:DIST_PATH'

閱讀全文〈rsync - get 和 push 目錄同步〉

在 Ubuntu 上安裝 Freemind

FreeMind at Gea-Suan Lin's BLOG 後, 就會很心動想要裝來玩.

原本想說有 deb 檔應該是直接安裝即可, 沒想到有些麻煩存在, freemind 的 deb 檔並不會自己去把相關的 library 拉進來, 但是卻會造成其它 package 有衝突的狀況, 不過依照他的錯誤訊息狀況, 照以下順序即可完成.

以下有一部份轉載自: FreeMind 在 Ubuntu Edgy Eft 中的安?

因安裝時忘了記錄, 正好看到此文章寫的很完整, 所以下述是摘要此文的流程, 如有不清楚的, 可以直接參考上述文章. 🙂

閱讀全文〈在 Ubuntu 上安裝 Freemind〉

debian php and mysql upgrade

今天心血來潮, 突然想到來把 php & mysql 一起升級, 升級到 php5 & mysql5 ~

升級流程:

  1. backup mysql, mysql config, php config
  2. mysqldump --all-databases --user=root --password='xxx' > mysql-date.sql
  3. tar zcvf mysql-date.tgz /var/lib/mysql # 保險還是整個壓起來, 出問題可以 rollback 用
  4. tar zcvf mysql_conf.tgz /etc/mysql
  5. tar zcvf php_conf.tgz /etc/php4
  6. apt-get install php5 ... (和 其它相關 package, 這個在 restart apache 時看錯誤, 再解決即可)
  7. apache 會出現的錯誤大概就是 php4.conf 要移掉 .. 還有在 php.ini 若有修改, 在 php5 也記得要改.
  8. apt-get install mysql-server (自動會抓 mysql-server 5.0)

沒想到這麼簡單就升級完成, 不用做任何匯入匯出的動作~ :p

目前看起來狀況好像還不錯, 先試用看看囉 🙂

閱讀全文〈debian php and mysql upgrade〉

Email 認證用 Domain Key(Gmail)

有很多系統在製作時, 都會寄些通知信, 或者其它提醒之類的信, 但是發現寄到 gmail 都被退信.

仔細看一下被退的信才知道, 現在一定得要有設 domain key 才能寄的進去(被退的信裡面有教怎麼設定此 domain key)...

詳細可見: Google Mail Help Page: Bulk Email Senders

其它參考:

閱讀全文〈Email 認證用 Domain Key(Gmail)〉

Firefox 效能最佳化(效能調校)

相信大家使用 Firefox 時總會遇到一個問題, 就是網頁多開一點, 記憶體就會用光了, 特別是 Javascript 用較多的網頁, 都會有此狀況.

但是實際上是不需要用那麼多記憶體的, 大多都是頁面整個畫完後, 就可以釋放掉的記憶體, 但卻都留在上面, 不知道該怎麼清除.

閱讀全文〈Firefox 效能最佳化(效能調校)〉

PHP mysql_connect() 出現 function not define 問題解決

Redhat MySQL 預設會將 mysql.sock 放在 /var/lib/mysql/mysql.sock, 但是另外自己 make 的 php, 預設會去拉 /tmp/mysql.sock, 所以會連不到 MySQL, 或者 mysql_connect() 會出現 function not define 等問題(php.ini 有 extension=mysql.so, 並也 restart apache, 卻還出現此錯誤).

只要去修改 my.cnf, 將 /var/lib/mysql/mysql.sock 的路徑, 改到 /tmp/mysql.sock 即可. 如同以下步驟:

  1. vi /etc/my.cnf
  2. #socket=/var/lib/mysql/mysql.sock # 註解掉
  3. socket=/tmp/mysql.sock # 設到 /tmp/mysql.sock

此完成後即可正常使用.

閱讀全文〈PHP mysql_connect() 出現 function not define 問題解決〉