在Linux環境中,監控系統資源使用情況是系統管理和故障排查的關鍵環節。以下是一些主要的方法和命令來監控不同型別的系統資源:
1. CPU使用情況
-
top 或 htop:實時顯示系統中各個程序對CPU資源的使用狀況。
top
是一個經典的命令列工具,而htop
是其增強版本,提供了彩色介面和垂直/水平滾動功能。# 使用top命令 top # 如果系統中有htop,則使用htop命令 htop
-
mpstat:用於多處理器環境下的CPU使用情況統計,可顯示每個CPU核心的負載。
mpstat [interval] [count]
2. 記憶體使用情況
-
free:顯示系統總的記憶體使用情況,包括實體記憶體和交換空間。
free -h # 更人性化的單位顯示
-
vmstat:除了記憶體外,還可以檢視虛擬記憶體統計資訊,如頁入頁出、交換活動等。
vmstat [interval] [count]
3. 磁碟I/O監控
-
iostat:監控磁碟裝置的讀寫操作統計資訊。
iostat [-dx] [interval] [count]
-
iotop:類似於top命令,但專門用於顯示磁碟I/O使用情況,包括程序級別的讀寫速率和頻寬使用。
iotop
4. 系統整體統計
-
sar:系統活動報告工具,能記錄並報告CPU、記憶體、磁碟、網路等各種資源的歷史統計資料。
sar -u [interval] [count] # CPU使用率 sar -b [interval] [count] # I/O和傳輸速率 sar -d [interval] [count] # 磁碟I/O統計
5. 程序活動監控
-
ps 或 pgrep/pkill:檢視當前執行的程序及其資源使用情況。
ps aux # 檢視所有程序詳細資訊 pgrep <process_name> # 按程序名查詢程序ID pkill <process_name> # 結束指定名稱的程序
-
lsof:列出當前系統開啟的檔案及其對應的程序資訊。
lsof
6. 網路流量監控
-
netstat 或 ss:顯示網路連線、路由表、介面統計等資訊。
netstat -tulnp # 顯示監聽埠和網路連線 ss -s # 統計套接字資訊
7. 系統負載和執行時間
-
uptime:顯示系統執行時間和負載。
uptime
綜上所述,可以根據需要定期收集系統資料,並根據實際情況作出相應調整,例如最佳化記憶體分配、限制高負載程序、調整磁碟I/O排程策略等,以保持系統高效穩定執行。此外,還有其他高階監控工具如 collectd
、Prometheus
、Grafana
等可以配合使用,實現長期監控和視覺化展示。