linux 磁碟效能監控,linux磁碟效能

來源:互聯網
上載者:User

linux 磁碟效能監控,linux磁碟效能

linux下對於查看進程的命令很多也很強大,常用的如:ps  top

但是在磁碟效能監控方面就沒有那麼統一了。

下面列舉一些磁碟監控命令,此處只是起到拋磚引玉作用,詳細使用參數請參考man手冊。

一 df

df命令可以擷取硬碟被佔用了多少空間,目前還剩下多少空間等資訊,它也可以顯示所有檔案系統對i節點和磁碟塊的使用方式。

常見的使用方法如:df -h  以人類容易閱讀的方式顯示。


二 du

du的英文原義為“disk usage”,含義為顯示磁碟空間的使用方式,統計目錄(或檔案)所佔磁碟空間的大小。該命令的功能是逐級進入指定目錄的每一個子目錄並顯示該目錄佔用檔案系統資料區塊(1024位元組)的情況。若沒有給出指定目錄,則對目前的目錄進行統計。

常見使用方式有:列出目前的目錄大小:du -sh   如果希望列出目前的目錄中各個子目錄大小 :du -sh *


三 fdisk

可以對磁碟進行分區,同時也可以查看整個磁碟大小,尤其是在磁碟剛買來還沒有分區格式化的時候使用,可以使用:

fdisk /dev/(your disk name)  進入後使用p命令可以查看磁碟的詳細資料。


四 iostat 可以提供豐富的IO狀態資料  

$ iostat -d -k 1 10

參數 -d 表示,顯示裝置(磁碟)使用狀態;-k某些使用block為單位的列強制使用Kilobytes為單位;1 10表示,資料顯示每隔1秒重新整理一次,共顯示10次。

使用-x參數可以獲得更多統計資訊,部分顯示參數解釋如下:

rrqm/s:每秒這個裝置相關的讀取請求有多少被Merge了(當系統調用需要讀取資料的 時候,VFS將請求發到各個FS,如果FS發現不同的讀取請求讀取的是相同Block的資料,FS會將這個請求合并Merge);wrqm/s:每秒這個 裝置相關的寫入請求有多少被Merge了。


rsec/s:每秒讀取的扇區數;wsec/: 每秒寫入的扇區數。r/s:The number of read requests that were issued to the device per second;w/s:The number of write requests that were issued to the device per second;


await:每一個IO請求的處理的平均時間(單位是微秒)。這裡可以理解為IO的響應時 間,一般地系統IO回應時間應該低於5ms,如果大於10ms就比較大了。


%util:在統計時間內所有處理IO時間,除以總共統計時間。例如,如果統計間隔1秒,該 裝置有0.8秒在處理IO,而0.2秒閑置,那麼該裝置的%util = 0.8/1 = 80%,所以該參數暗示了裝置的繁忙程度。一般地,如果該參數是100%表示裝置已經接近滿負荷運行了(當然如果是多磁碟,即使%util是100%,因 為磁碟的並發能力,所以磁碟使用未必就到了瓶頸)。


五 vmstat  即時產看記憶體使用量情況

不解釋了,直接上結果:

$ vmstat procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st 0  0      0 2037916 105012 725188    0    0    63    18  206  589  5  2 92  2  0
想看清楚一些可以加 -S  後面跟 K M

$ vmstat -S Mprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st 0  0      0   1903    104    723    0    0    57    17  207  613  5  2 92  2  0


六 dstat  強大的網路 磁碟 cpu監控命令

彩色顯示cpu、磁碟、網路、IO、記憶體等使用方式。

dstat ----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw   5   2  92   2   0   0| 266k   70k|   0     0 |   0     0 | 825  2532   2   2  82  14   0   0|3596k   84k| 352B    0 |   0     0 | 894    12k  3   3  83  11   0   0|2632k    0 |   0     0 |   0     0 |1025  7427   1   1  87  11   0   0|3020k   52k| 128B  142B|   0     0 | 534  4132   2   1  88   9   0   0|3236k    0 | 160B   78B|   0     0 | 597  6167 ^C

預設情況下分五個地區:

1、 --total-cpu-usage---- CPU使用率
usr:使用者空間的程式所佔百分比;
sys:系統空間程式所佔百分比;
idel:空閑百分比;
wai:等待磁碟I/O所消耗的百分比;
hiq:硬中斷次數;
siq:非強制中斷次數;
2、 -dsk/total- 磁碟統計
read:讀總數
writ:寫總數
3、 -net/total- 網路統計
recv:網路收包總數
send:網路發包總數
4、 ---paging-- 記憶體分頁統計
in: pagein(換入)
out:page out(換出)
註:系統的分頁活動。分頁指的是一種記憶體管理技術用於尋找系統情境,一個較大的分頁表明系統正在使用大量的交換空間,通常情況下當系統已經開始用交換空間的時候,就說明你的記憶體已經不夠用了,或者說記憶體非常分散,理想情況下page in(換入)和page out(換出)的值是0 0。
5、 --system-- 系統資訊
int:中斷次數
csw:環境切換
註:中斷(int)和環境切換(csw)。這項統計僅在有比較基準時才有意義。這一欄中較高的統計值通常表示大量的進程造成擁塞,需要對CPU進行關注。你的伺服器一般情況下都會運行運行一些程式,所以這項總是顯示一些數值。
預設情況下,dstat 會每隔一秒重新整理一次資料,一直重新整理並一直輸出,按 Ctrl+C 退出 "dstat"

七 iotop  查看進程的io效能

以上命令只能查看整個硬碟的io效能,不能對每個進程的io效能進行監控。iotop則用於監控每個進程的io效能,

類似於查看進程狀態的top命令,我這裡需要超級許可權才能運行

非常直觀的顯示每個進程的讀寫速度,不上結果了,自行驗證。

八 nload 命令列即時監控網速

nload <eth0 / wlan0>


附:查看系統中某個目錄下佔用空間最大的前十個檔案夾:

<pre name="code" class="python">sudo  du -sh * ./ | sort -n -r | head -n 10





聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.