先停掉syslog
service syslog stop
打開block dump:
echo 1 > /proc/sys/vm/block_dump
多次運行,查看結果
dmesg | egrep "READ|WRITE|dirtied" | egrep -o '([a-zA-Z]*)' | sort | uniq -c | sort -rn | head
排前的比較佔用io
抓完後關掉block_dump和啓動syslog:
echo 0 > /proc/sys/vm/block_dump
service syslog start
我的一臺負荷較重的服務器,iowait經常在10%以上,因此這樣查看了下,多次運行顯示:
1283 kjournald
1059 httpd
190 pdflush
-------------------------------------
1267 kjournald
1228 httpd
2 pdflush
-------------------------------------
1506 pdflush
661 kjournald
423 httpd
11 sh
6 nrpe
6 bash
3 check
2 egrep
-------------------------------------
1247 kjournald
1187 httpd
6 egrep
-------------------------------------
1288 httpd
1148 kjournald
6 egrep
-------------------------------------
1242 kjournald
1120 httpd
57 php
30 crond
8 bash
6 egrep
-------------------------------------
看來kjournald是罪魁禍首?httpd也蠻高的,需要優化。