本文由 簡悅 SimpRead 轉碼, 原文地址 www.cnblogs.com
概 述
本文主要記錄一下 Linux 系統上一些常用的系統監控工具,非常好用。正所謂磨刀不誤砍柴工,花點時間總結一下是值得的!
本文內容腦圖如下:

top 命令
top 命令我想大家都挺熟悉吧! Linux 下的 top 命令有點類似於 Windows 下的任務管理器,能夠實時動態地監控並顯示系統中各個進程的資源占用狀況,是 Linux 下常用的性能監控和分析工具。
一個常見的 top 命令的執行視圖如下:

下面我們詳細在圖中標注出每個指標的含義,認真看圖對比理解吧(必要時可保存該圖備查哦):

怎么樣,理解起來夠直觀了吧,至於 top 命令的其他一些帶參數用法自行 help 吧,太多了,不再贅述了!
htop 命令
htop 是 Linux 下一個交互式的進程瀏覽器,可以完全替代上一小節中所講的 top 命令,與 top 命令對比,htop 命令有如下優點:
- 直接支持鼠標點擊操作( 就問你 6 不 6 !)
- 畫面可以水平垂直滾動,更像一個窗口
- 可以跟蹤進程,顯示進程打開的文件
- 支持進程的樹狀圖顯示
- 支持按照名稱查找進程
總之可視化方面做得 66 的,我們來體驗一下:

就該圖來說,分成三部分:
- 頂部是資源使用情況概覽,這進度條看着就挺酷炫
- 中間是進程表,和 top 命令的類似
- 下面是操作指引和快捷鍵清晰明了
我們接下來再來看一些圖形化的操作:
- 進程樹狀圖

- 鼠標點擊各種指標來排序

- 跟蹤進程功能


iotop 命令
iotop 是用來監控硬盤 IO 的使用情況,UI 界面和 top 類似,其中包括 PID、用戶、I/O、進程 等相關信息。
Linux 下系統自帶的 IO 統計工具如 iostat,nmon 等大多數是只能統計到 per 設備的讀寫情況,如果你想知道每個進程是如何使用 IO 的就比較麻煩,使用 iotop 命令可以很方便的查看。

iftop 命令
iftop 是 Linux 系統的流量和帶寬監控工具,可用於查看實時的網絡流量、監控 TCP/IP 連接等,也是非常有用的!
我們來做一下實驗,命令執行后效果如下:


iftop 命令常用的參數如下,這里做個小規模總結:
-i設定監測的網卡,如:# iftop -i eth1-B以 bytes 為單位顯示流量 (默認是 bits),如:# iftop -B-n使 host 信息默認直接都顯示 IP,如:# iftop -n-N使端口信息默認直接都顯示端口號,如:# iftop -N-F顯示特定網段的進出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0-h( display this message ),幫助,顯示參數信息-p使用這個參數后,中間的列表顯示的本地主機信息,出現了本機以外的 IP 信息;-b使流量圖形條默認就顯示;
再來總結一下,進入 iftop 視圖畫面后的一些操作命令 (注意大小寫):
- 按
h切換是否顯示幫助; - 按
n切換顯示本機的 IP 或主機名; - 按
s切換是否顯示本機的 host 信息; - 按
d切換是否顯示遠端目標主機的 host 信息; - 按
t切換顯示格式為 2 行 /1 行 / 只顯示發送流量 / 只顯示接收流量; - 按
N切換顯示端口號或端口服務名稱; - 按
S切換是否顯示本機的端口信息; - 按
D切換是否顯示遠端目標主機的端口信息; - 按
p切換是否顯示端口信息; - 按
P切換暫停 / 繼續顯示; - 按
b切換是否顯示平均流量圖形條; - 按
T切換是否顯示每個連接的總流量; - 按
l打開屏幕過濾功能,輸入要過濾的字符,比如 ip, 按回車后,屏幕就只顯示這個 IP 相關的流量信息; - 按
L切換顯示畫面上邊的刻度; 刻度不同,流量圖形條會有變化; - 按
j或按k可以向上或向下滾動屏幕顯示的連接記錄; - 按
1或2或3可以根據右側顯示的三列流量數據進行排序; - 按
<根據左邊的本機名或 IP 排序; - 按
>根據遠端目標主機的主機名或 IP 排序; - 按
o切換是否固定只顯示當前的連接;
后 記
由於能力有限,若有錯誤或者不當之處,還請大家批評指正,一起學習交流!
注: 本文首發於 My Personal Blog,歡迎光臨 小站
