(Linux)- 監控 Linux 效能命令大全

(Linux)- 監控 Linux 效能命令大全

(Linux)- 監控 Linux 效能命令大全  

 

 

談到系統性能監控和分析工具,就不得不提 Brendan Gregg 的系統分析,他的圖非常系統化的展示了應用程式,系統呼叫,核心,協議棧,硬體等各塊之間的互動。有興趣的朋友可以根據這張圖裡的命令進行組合進行系統問題的監控,分析,定位。  

 

1. top — Linux 系統程序監控

top 命令是效能監控程式,它可以在很多 Linux/Unix 版本下使用,並且它也是 Linux 系統管理員經常使用的監控系統性能的工具。Top 命令可以定期顯示所有正在執行和實際執行並且更新到列表中,它顯示出 CPU 的使用、記憶體的使用、交換記憶體、快取大小、緩衝區大小、過程控制、使用者和更多命令。它也會顯示記憶體和 CPU 使用率過高的正在執行的程序。當我們對 Linux 系統需要去監控和採取正確的行動時,top 命令對於系統管理員是非常有用的。讓我們看下 top 命令的實際操作。

 

2. vmstat — 虛擬記憶體統計

vmstat 命令是用於顯示虛擬記憶體、核心執行緒、磁碟、系統程序、I/O 模組、中斷、CPU 活躍狀態等更多資訊。在預設的情況下,Linux 系統是沒有 vmstat 這個命令的,如果你要使用它,必須安裝一個包名叫 sysstat 的程式包。


3. lsof — 開啟檔案列表

lsof 命令對於很多 Linux/Unix 系統都可以使用,主要以列表的形式顯示開啟的檔案和程序。

開啟的檔案主要包括磁碟檔案、網路套接字、管道、裝置和程序。使用這個命令的主要原因是一個一個盤不能解除安裝並且顯示檔案正在使用或者開啟的錯誤資訊。這個命令很容易看出哪些檔案正在使用。這個命令最常用的格式:

# lsof

 

4. tcpdump — 網路資料包分析器

tcpdump 是一種使用最廣泛的命令列網路資料包分析器或資料包嗅探程式,主要用於捕獲和過濾 TCP/IP 包收到或者轉移在一個網路的特定藉口資訊。它也提供了一個選項引數去儲存將捕獲的包在一個檔案中用於以後分析使用,tcpdump 幾乎在所有的 Linux 版本中都是可用的。

# tcpdump -i eth0


5. netstat — 網路統計

netstat 命令是一個監控網路資料包傳入和傳出的統計介面的命令列工具。它對於許多系統管理員去監控網路效能和解決網路相關問題是一個非常有用的工具。

# netstat -a | more

6. htop — 程序監控

htop 是一個更加先進的互動式的實時監控工具。htop 與 top 命令非常相似,但是他有一些非常豐富的功能,如使用者友好介面管理程序、快捷鍵、橫向和縱向程序等更多的。htop 是一個第三方工具並不包括在 Linux 系統中,需要使用包管理工具進行安裝。

# htop


7. iotop — 監控 Linux 磁碟 I/O

iotop 也是和 top 和 htop 命令相似,但是它會有一個報告功能去監控和顯示實時的磁碟 I/O 輸入和輸出和程式程序。這個工具對於查詢精確的高的磁碟讀/寫過程是非常有用的。

# iotop

 

8. iostat — 輸入/輸出統計

iostat 是收集和展示系統輸入和輸出儲存裝置統計的簡單工具。這個工具通常用於查詢儲存裝置效能問題,包括裝置、本地磁碟、例如 NFS 遠端磁碟。

# iostat

 

9. IPTraf —實時IP區域網監控

IPTraf 是一個基於開源的 Linux 系統實時網路(IP 網路)監測的工具。它能收集到各種各樣的資訊,如通過網路對 IP 流量監測,包括 TCP 標誌資訊、ICMP 詳細細節、TCP/UDP 流量故障、TCP 連線的資料包和拜恩計數。並且它還收集 TCP,UDP,ICMP,IP,非 IP,IP 校驗錯誤,介面活性等一般資訊和詳細資訊的介面統計資料。

 

10. Psacct 或者 Acct — 監視使用者活動

Psacct 或者 Acct 是用於監測每個使用者對系統的活躍狀態的一個非常有用的工具。在後臺有兩個守護程序在執行,一個是密切關注系統上每個使用者的整體活動,另一個程序關注有哪些資源被它們消耗。

這個工具對於系統管理員是非常有用的去跟蹤每個使用者的活動,可以知道使用者正在做什麼,發出了什麼樣的命令,佔用了多少資源,多長時間活躍在系統上。

 

11. Monit — 程式和服務監測

這是一個免費的開源的基於 web 程式的自動監控和管理系統程序、程式、檔案、目錄、許可權、校驗檔案系統。它監控的服務包括 Apache、MYSQL、Mail、FTP、Nginx 等等。系統狀態是可以從命令列或者自己的網路介面來檢視。

 

12. NetHogs — 監視每個程序的網路頻寬

NetHogs 是一個開源的漂亮的小程式(類似於 Linux 上面的 top 命令),在您的系統上保持每個程序的網路活動狀態。它也保持了一個程式或者應用實時的網路流量頻寬使用情況。

 

13. iftop — 網路頻寬監控

iftop 是另一個基於終端的開源的系統監測工具,主要功能是通過你自己系統上的網路介面顯示一個經常更新的網路頻寬利用率的列表(即源主機和目的主機)。iftop 監控的是網路的使用情況,而 top 監控的是 CPU 的使用情況。iftop 監視一個選定的介面並且顯示兩臺主機之間當前寬頻的使用情況。

 

14. Monitorix — 系統和網路監控

Monitorix 是一個儘可能多的在 Linux/Unix 上一個輕量級監控工具,主要設計是監控正在執行的系統和網路資源。它有一個內建的 HTTP web 服務去定期收集系統和網路資訊並顯示成圖片。它可以監視系統的平均負載使用、記憶體的分配、磁碟驅動器、系統服務、網路埠、郵件統計(Sendmail、Postfix、Dovecot 等等)、MYSQL 資料庫等等更多的服務。它的主要目的是監控整個系統的效能,並且有助於監測故障、瓶頸、異常活動等狀況。

 

15. Arpwatch — 乙太網活動監控器

Arpwatch是一種用來監視 Linux 網路的乙太網的網路流量的地址解析(網路地址轉換)的一個程式。它一直隨著網路時間戳的變化監視乙太網流量和產生日誌的 IP 和 MAC 地址對。當一個 IP 地址或 MAC 地址對發生變化的時候,它會發送電子郵件通知管理員。

並且它在檢測 ARP 攻擊是非常有用的。

 

16. Suricata — 網路安全監控

Suricata 是一個高效能的開源的網路安全與入侵檢測與預防 Linux、FreeBSD、Windows 等作業系統的監控工具。它是一個非營利基金 OISF(Open Information Security Foundation)擁有的。

 

17. VnStat PHP — 監測網路頻寬

VnStat PHP 是一個 web 前端應用最流行的社交工具叫“vnstat”。 VnStat PHP 使用了很好的圖形模式監控網路流量的使用情況。它顯示了每時、每天、每月的總結報告中的網路流量使用情況。

 

18. Nagios — 網路/伺服器監控

Nagios 是一個領先的開源的強大的監控系統,網路/系統管理員在他們影響主要業務流程之前識別和解決伺服器相關的問題。Nagios 可以監控遠端 Linux、Windows、開關、單視窗的路由器和印表機。它能顯示你的網路和伺服器關鍵的告警,有利於在錯誤反生之前幫助你解決問題。

 

19. Nmon — 監控Linux系統性能

Nmon(即奈吉爾效能監視器)工具用來監視 Linux 系統的所有資源包括:CPU、記憶體、磁碟使用率、網路上的程序、NFS、核心等等。這個工具有兩個模式:即線上模式和捕捉模式。線上模式適用於實時監控,捕捉模式用於儲存輸出為 CSV 格式後的處理。

 

20. Collectl — 一體化效能檢測工具

Collectl 是另一個功能強大的基於命令列的監控工具,它可用於收集有關係統資源的資訊,包括 CPU 使用率、記憶體、網路、節點、程序、NFS、TCP 套接等等。

 

21.tsar- Linux程序和服務監控工具

tsar是淘寶自己開發的一個採集工具,主要用來收集伺服器的系統資訊(如cpu,io,mem,tcp等),以及應用資料(如squid haproxy nginx等)。收集到的資料儲存在磁碟上,可以隨時查詢歷史資訊,輸出方式靈活多樣,另外支援將資料儲存到MySQL中,也可以將資料傳送到nagios報警伺服器。tsar在展示資料時,可以指定模組,並且可以對多條資訊的資料進行merge輸出,帶–live引數可以輸出秒級的實時資訊。

 

22. free

free命令報告記憶體資訊

 

23. mpstat

mpstat檢視多執行緒處理情況

 

24. sar – sar 1

sar實用工具提供監視每一事件的能力。它至少有15個單獨的報告類別,包括CPU、磁碟、網路、程序、交換區等等。

 

 

免責聲明:

1.本影像檔案皆從網上搜集轉載,不承擔任何技術及版權問題。

2.如有下載連結僅供寬頻測試研究用途,請下載後在24小時內刪除,請勿用於商業。

3.若侵犯了您的合法權益,請來信通知我們,我們會及時刪除,給您帶來的不便,深表歉意。



發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *