linux查看io
A. 如何查看linux cpu/內存/硬碟/IO等數據
cpu top 看進程和cpu的使用率
uptime 看cpu負載
內存 free 看內存呢虛擬內存 -m 是以兆為單位顯示
硬碟 df -hT 查看個各個分區的使用情況,-h是以G為單位顯示 -T是顯示分區的系統類型
iostat -x 1 可以查看磁碟的IO信息
B. 如何查看linux伺服器硬碟IO讀寫負載
打開終端
用top命令查看。輸入:
top#查看swap
iostat-x110#查看%util%idle
#如果iostat沒有要yuminstallsysstat#如果%util接近100%,說明產生的I/O請求太多,I/O系統已經滿負荷,該磁碟可能存在瓶頸。idle小於70%IO壓力就較大了,一般讀取速度有較多的wait.
#如果你想對硬碟做一個IO負荷的壓力測試可以用如下命令
timeddif=/dev/zerobs=1Mcount=2048of=direct_2G
#此命令為在當前目錄下新建一個2G的文件歡迎追問
C. 如何查看linux主機的I/O狀況
cat /proc/version
你的伺服器程序的前端程序有help的話一般會提供版本號
/usr/local/httpd/bin/mshttpd -v
D. linux 如何查看網路io
netstat -an看佔用埠
/sbin/ifconfig看多少個網卡,IP地址,路由信息等
E. linux 查看哪些進程io高
測試環境還費這勁,重裝個新系統就是了,花不了多少時間。
2.6.20開始,Linux內核才支持對IO的統計,所以就算找其他工具,也不太容易達到你的要求。可以試試把/proc/sys/vm/block_mp設為1,讓內核把對Block的讀寫mp到日誌中,之後再從dmesg命令的輸出中想辦法去查找讀寫最多的進程。別忘了最後再把block_mp設成0,這對系統性能影響很大。
另外有個不太准確的辦法,ps命令可以顯示進程的狀態,ps -eo pid,state,其中狀態D是「Uninterruptible sleep (usually IO)」,佔用IO多的進程,應該IO等待也多,所以寫個小腳本,每秒打出狀態為D的進程,佔用IO多的進程肯定在裡面。
F. linux怎樣查看那個進程佔用網路io
查看linux進程佔用埠步驟如下:
lsof -i 用以顯示符合條件的進程情況,lsof(list open files)是一個列出當前系統打開文件的工具。以root用戶來執行lsof -i命令,如下圖
G. 如何查看linux的io調度器
命令為 iostat 如果提示命令找不到,請先安裝 安裝命令為 yum install sysstat
H. linux 怎麼查看那個進程佔用的io
ps -ef | grep 進程名稱 或者直接pgrep 進程名稱
例如mysql
ps -ef | grep mysql
pgrep mysqlI. 怎麼查看linux支持的io引擎
1.使用iotop命令
使用該命令有個條件,Linux內核要高於2.6.20的版本,版本過低則沒有此命令
2:block_mp方法
首先,關閉syslog服務,然後開啟block_mp,最後正則表達式提取dmesg信息。
/etc/init.d/syslog stop
echo 1 > /proc/sys/vm/block_mp
dmesg | egrep "READ|WRITE|dirtied" | egrep -o '([a-zA-Z]*)' | sort | uniq -c | sort -rn | head
注意:操作完成後請關閉block_mp和啟動syslog
echo 0 > /proc/sys/vm/block_mp #關閉block_mp
/etc/init.d/syslog start #啟動syslog