本文共 1329字,閱讀大約需要 3分鐘 !
概 述
本文主要記錄一下 Linux系統上一些常用的系統監控工具,非常好用。正所謂磨刀不誤砍柴工,花點時間總結一下是值得的!
注: 本文首發於 My Personal Blog,歡迎光臨 小站
本文內容腦圖如下:

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:CodeSheep 程式羊
- 我的半年技術部落格之路
可 長按 或 掃描 下面的 小心心 來訂閱作者公眾號 CodeSheep,獲取更多 務實、能看懂、可復現的 原創文 ↓↓↓
