# Linux系統如何查看負載
## 概述
在Linux系統管理和性能調優中,系統負載(Load Average)是衡量系統運行狀態的重要指標之一。它反映了CPU、內存、磁盤I/O等資源的綜合使用情況。本文將詳細介紹如何查看和分析Linux系統的負載情況。
---
## 一、什么是系統負載?
系統負載是指單位時間內,系統處于運行狀態和等待狀態的進程數。通常以1分鐘、5分鐘、15分鐘的平均值表示(如:`0.75 0.50 0.25`):
- **負載值 < CPU核心數**:系統空閑
- **負載值 ≈ CPU核心數**:資源充分利用
- **負載值 > CPU核心數**:可能存在性能瓶頸
---
## 二、查看負載的常用命令
### 1. `uptime`命令
最直接的負載查看方式,顯示系統運行時間、用戶數和平均負載:
```bash
$ uptime
10:30:45 up 2 days, 3:45, 2 users, load average: 1.25, 0.98, 0.72
top
命令實時監控工具,首行顯示負載信息:
$ top
top - 10:32:17 up 2 days, 3:47, 2 users, load average: 1.05, 0.95, 0.70
w
命令結合用戶登錄信息和負載:
$ w
10:33:01 up 2 days, 3:48, 2 users, load average: 0.85, 0.90, 0.68
cat /proc/loadavg
直接讀取內核提供的負載數據:
$ cat /proc/loadavg
1.02 0.89 0.65 2/985 4210
(第四列為運行/總進程數,第五列為最近運行的進程ID)
vmstat
- 綜合性能監控$ vmstat 1 # 每秒刷新一次
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 504312 84532 1020560 0 0 25 32 101 156 15 5 78 2 0
mpstat
- CPU核心級分析$ mpstat -P ALL 1 # 查看每個CPU核心利用率
Linux 5.4.0-91-generic (host) 12/01/2023 _x86_64_ (4 CPU)
10:35:01 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
10:35:02 AM all 15.21 0.00 4.63 1.02 0.00 0.25 0.00 0.00 0.00 78.89
iotop
- 磁盤I/O分析$ sudo iotop -o # 顯示實際產生I/O的進程
Total DISK READ: 12.54 K/s | Total DISK WRITE: 156.32 K/s
PID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
4567 be/4 mysql 0.00 B/s 58.12 K/s 0.00 % 1.25 % mysqld
top
查看%CPU
高的進程nice/renice
)vmstat
的wa
值 > 5% 或 iotop
觀察free -h
查看剩余內存ps aux | grep 'Z'
nmon
或glances
進行圖形化監控Prometheus + Grafana
實現負載可視化load average > CPU核心數*0.7
時觸發告警通過本文介紹的工具組合,可以全面掌握Linux系統的負載狀態及根源。建議日常運維中建立基線數據(如正常負載范圍),當指標異常時快速定位問題。對于生產環境,建議結合日志分析工具(如ELK)進行長期跟蹤。 “`
注:實際字符數約750字(含代碼塊和格式標記)??筛鶕枰鰷p內容,例如增加具體案例或更詳細的調優方法。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。