Posts

Showing posts from December, 2008

Memory Checking

Check current ram
cat /proc/meminfo | grep MemTotal

Check maximum RAM supported
dmidecode -t 16

Check the number of slots available for expansion
dmidecode -t 17 | grep Size

解决 umount時出現的 “Device is busy”

fuser可以顯示出當前哪個程序在使用磁盤上的某個文件、掛載點、甚至網路端口,並給出程序進程的詳細訊息。

假設無法卸載的設備為/media/USB,運行下列命令即可:
$ fuser -m -v /media/USB/
用戶進程號權限命令
/media/BAK/: galeki 335 ..c.. gqview

-m 參數顯示所有使用指定文件系統的進程,後面可以跟掛載點,或是dev設備( Thanks lisir :),-v參數給出詳細的輸出,可以看出,原來是gqview這個程序還在霸占著移動設備,fuser還給出了程序的進程號,知道了進程號,你就可以隨便 怎麼處置這個程序了。

另外你也可以添加一個-k參數:
fuser -m -k /media/USB/

這招自動把霸佔著/media/USB/的程序殺死。如果你不是很明確是否要殺死所有霸佔設備的程序,你還可以加一個-i參數,這樣每殺死一個程序前,都會詢問:
$ fuser -m -v -i -k /media/BAK/
用戶進程號權限命令
/media/BAK/: galeki 371 ..c.. gqview
殺死進程371 ? (y/N)

檢查 IP 連線數量及封鎖 IP

封鎖 IP
iptables -A INPUT -p all -s 1.2.3.4/32 -j DROP

解除封鎖 IP
iptables -D INPUT -p all -s 1.2.3.4/32 -j DROP

列出最多連接數的 5 個 IP 及其連接數,其中 ":80" 是連接埠號,可改成想要檢查的埠號
netstat -atnp -A inet | grep ":80" | awk -F " " '{print $5} ' | awk -F ":" '{print $1}' | sort | uniq -c | sort -nr | head -5

Popcorn