分享很全的Linux監控命令,圖文詳述,應有盡有。
1.1 top
1.1.1 命令說明
Top 命令能夠實時監控系統的運行狀態,並且可以按照cpu、內存和執行時間進行排序
實用的top命令 http://www.linuxidc.com/Linux/2014-11/109769.htm
為什麼 Linux 的 htop 命令完勝 top 命令 http://www.linuxidc.com/Linux/2014-06/102626.htm
Ubuntu下最強大的進程監視器htop使用 http://www.linuxidc.com/Linux/2013-05/85030.htm
CentOS 6.5中安裝htop進程管理監控工具 http://www.linuxidc.com/Linux/2014-03/97775.htm
top命令引起系統負載升高 http://www.linuxidc.com/Linux/2014-11/109997.htm
1.1.2 參數說明
- 命令行啟動參數:
- 用法: top -hv | -bcisSHM -d delay -n iterations [-u user | -U user] -p pid [,pid ...]
- -b : 批次模式運行。通常用作來將top的輸出的結果傳送給其他程式或儲存成文件
- -c : 顯示執行任務的命令行
- -d : 設定延遲時間
- -h : 幫助
- -H : 顯示線程。當這個設定開啟時,將顯示所有進程產生的線程
- -i : 顯示空閒的進程
- -n : 執行次數。一般與-b搭配使用
- -u : 監控指定用戶相關進程
- -U : 監控指定用戶相關進程
- -p : 監控指定的進程。當監控多個進程時,進程ID以逗號分隔。這個選項只能在命令行下使用
- -s : 安全模式操作
- -S : 累計時間模式
- -v : 顯示top版本,然後退出。
- -M : 自動顯示內存單位(k/M/G)
1.全局命令
- 回車、空格 : 刷新顯示信息
- ?、h : 幫助
- = : 移除所有任務顯示的限制
- A : 交替顯示模式切換
- B : 粗體顯示切換
- d、s : 更改界面刷新時間間隔
- G : 選擇其它窗口/欄位組
- I : Irix或Solaris模式切換
- u、U : 監控指定用戶相關進程
- k : 結束進程
- q : 退出top
- r : 重新設定進程的nice值
- W : 存儲當前設定
- Z : 改變顏色模板
2.摘要區命令
- l : 平均負載及系統運行時間顯示開關
- m : 內存及交換空間使用率顯示開關
- t : 當前任務及CPU狀態顯示開關
1 : 匯總顯示CPU狀態或分開顯示每個CPU狀態
1.任務區命令
- 外觀樣式
- b : 黑體/反色顯示高亮的行/列。控制x和y交互命令的顯示樣式
- x : 高亮顯示排序的列
- y : 高亮顯示正在運行的任務
- z : 彩色/黑白顯示。
- 顯示內容
- c : 任務執行的命令行或進程名稱
- f、o : 增加和移除進程信息欄位及調整進程信息欄位顯示順序
- H : 顯示線程
- S : 時間累計模式
- u : 監控指定用戶相關進程
- 任務顯示的數量
- i : 顯示空閒的進程
- n或# : 設置任務顯示最大數量
- 任務排序(shift+f)
- M : 按內存使用率排序
- N : 按PID排序
- P : 按CPU使用率排序
- T : 按Time+排序
- < : 按當前排序欄位左邊相鄰欄位排序
- > : 按當前排序欄位右邊相鄰欄位排序
- F 或 O : 選擇排序欄位
- R : 反向排序
1.1.3 結果說明
1.2 free
1.2.1 命令說明
Free命令是監控系統內存最常用的命令
1.2.2.參數說明
-m:以M為單位查看內存使用情況(默認為kb)
-b:以字節為單位查看內存使用情況
-s:可以在指定時間段內不簡單監控內存的使用情況
1.2.3 結果說明
- total:總計物理內存的大小。
- Used:已使用多大。
- Free:可用有多少。
- shared:多個進程共享的內存總額。
- buffers/cached:磁盤緩存的大小。
1.3 vmstat
1.1.1命令說明
可以監控操作系統的進程狀態、內存、虛擬內存、磁盤IO、上下文、CPU的信息。
1.1.2參數說明
vmstat [-a] [-n] [-S unit] [delay [ count]]
- -a:顯示活躍和非活躍內存
- -m:顯示slabinfo
- -n:只在開始時顯示一次各字段名稱。
- -s:顯示內存相關統計信息及多種系統活動數量。
- delay:刷新時間間隔。如果不指定,只顯示一條結果。
- count:刷新次數。如果不指定刷新次數,但指定了刷新時間間隔,這時刷新次數為無窮。
- -d:顯示各個磁盤相關統計信息。
- -S:使用指定單位顯示。參數有 k 、K 、m 、M ,分別代表1000、1024、1000000、1048576字節(byte)。默認單位為K(1024 bytes)
- -V:顯示vmstat版本信息。
- -p:顯示指定磁盤分區統計信息
- -D:顯示磁盤總體信息
1.1.3 結果說明
- Procs
- R:等待被執行的進程數,即表示運行和等待CPU時間片的進程數
- B:排隊的進程數,即等待資源的進程數
- Memory
- Swap : 虛擬內存,切換到虛擬內存的內存大小
- Free: 空閒的物理內存大小
- Buff: 緩沖區大小
- Cache: 緩存大小
- Swap
- Si:磁盤寫入虛擬內存,即由內存進入到虛擬內存的大小。
- So:虛擬內存寫入磁盤,即由虛擬內存進入到磁盤的大小。
Io
- Bi:由塊設備讀入的數據總量,讀磁盤
- Bo:由塊設備寫入的數據總量,寫磁盤
- System
- In: 每秒設備中斷數
- Cs:每秒上下文切換的次數
- Cpu
- Us:用戶進程消耗cpu百分比
- Sy:內核進程消耗cpu百分比
- Id:cpu處於空閒狀態的時間百分比
- Wa:Io等待cpu所占時間的百分比
1.4 iostat
1.4.1命令說明
Iostat是對系統磁盤IO操作進行監控,它的輸出主要顯示磁盤的讀寫操作的統計信息。同時給出cpu的使用情況
1.4.2參數說明
iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ device [ ... ] | ALL ] [ -p [ device | ALL ] ] [ interval [ count ] ]
各選項以及參數含義如下:
- -c: 僅顯示CPU統計信息.與-d選項互斥.
- -d :僅顯示磁盤統計信息.與-c選項互斥.
- -k :以K為單位顯示每秒的磁盤請求數,默認單位塊.
- -p :device | ALL
與-x選項互斥,用於顯示塊設備及系統分區的統計信息.也可以在-p後指定一個設備名,如:
# iostat -p had
或顯示所有設備
# iostat -p ALL
- -t :在輸出數據時,打印搜集數據的時間.
- -V :打印版本號和幫助信息.
- -x device 輸出指定要統計的磁盤設備名稱,默認為所有磁盤設備.
- - interval :指兩次統計間隔時間
- - count :按照interval 指定的時間間隔統計的次數
使用vmstat和iostat命令進行Linux性能監控 http://www.linuxidc.com/Linux/2014-10/108135.htm
RH442攻略之iostat http://www.linuxidc.com/Linux/2014-03/98254.htm
Linux 下使用iostat命令生成CPU和I/O的統計報告 http://www.linuxidc.com/Linux/2014-02/96689.htm
安裝iostat和mpstat工具 http://www.linuxidc.com/Linux/2013-10/91570.htm
Linux iostat命令輸出簡要說明 http://www.linuxidc.com/Linux/2013-06/86703.htm
Linux iostat命令 http://www.linuxidc.com/Linux/2013-03/80163.htm
Linux iostat命令實例詳解 http://www.linuxidc.com/Linux/2014-07/104151.htm
1.4.3結果說明
Iostat的簡單應用
Iostat磁盤監控
- rrqm/s:每秒進行 merge 的讀操作數目,即 delta(rmerge)/s 。
- wrqm/s:每秒進行 merge 的寫操作數目,即 delta(wmerge)/s 。
- r/s:每秒完成的讀 I/O 設備次數,即 delta(rio)/s 。
- w/s: 每秒完成的寫 I/O 設備次數,即 delta(wio)/s 。
- rsec/s:每秒讀扇區數,即 delta(rsect)/s。
- wsec/s:每秒寫扇區數,即 delta(wsect)/s
- rkB/s:每秒讀K字節數,是 rsect/s 的一半,因為每扇區大小為512字節。
- wkB/s:每秒寫K字節數,是 wsect/s 的一半
- avgrq-sz:平均每次設備I/O操作的數據大小 (扇區),即 delta(rsect+wsect)/delta(rio+wio) 。
- avgqu-sz:平均I/O隊列長度,即 delta(aveq)/s/1000 (因為aveq的單位為毫秒)。
- Await:平均每次設備I/O操作的等待時間 (毫秒),即 delta(ruse+wuse)/delta(rio+wio) 。
- Svctm:平均每次設備I/O操作的服務時間 (毫秒),即 delta(use)/delta(rio+wio) 。
- %util:一秒中有百分之多少的時間用於 I/O 操作,或者說一秒中有多少時間 I/O 隊列是非空的,
即 delta(use)/s/1000 (因為use的單位為毫秒) 。
Iostat cpu 監控
- %usr:用戶進程消耗的CPU時間百分比。
- %nice: 運行正常進程消耗的CPU時間百分比。
- %system:系統進程消耗的CPU時間百分比。
- %iowait:I/O等待所占CPU時間百分比。
- %steal:在內存緊張環境下,pagein強制對不同的頁面進行的steal操作。
- %idle:CPU空閒狀態的時間百分比。
更多詳情見請繼續閱讀下一頁的精彩內容: http://www.linuxidc.com/Linux/2015-01/111577p2.htm