# Linux系統中如何查看最消耗CPU/內存的進程
## 前言
在Linux系統管理和性能優化過程中,快速識別消耗大量CPU或內存的進程是解決問題的關鍵步驟。本文將介紹多種命令行工具的使用方法,幫助系統管理員精準定位資源占用問題。
## 一、使用top命令實時監控
`top` 是最基礎的實時系統監控工具,默認按CPU使用率排序:
```bash
top
top后按P鍵M鍵q鍵-d 秒數指定(如top -d 2)%CPU:進程CPU占用百分比%MEM:進程內存占用百分比RES:實際使用的物理內存(KB)htop 是top的現代化替代品,提供彩色界面和鼠標操作:
sudo apt install htop # Debian/Ubuntu
sudo yum install htop # RHEL/CentOS
htop
ps 命令配合排序參數可生成靜態快照:
ps -eo pid,ppid,cmd,%cpu,%mem --sort=-%cpu | head -n 6
ps -eo pid,ppid,cmd,%cpu,%mem --sort=-%mem | head -n 6
vmstat 提供系統整體資源概況:
vmstat 1 5 # 每秒1次,共5次
重點關注:
- r:運行隊列長度
- us:用戶CPU時間
- free:空閑內存(KB)
跨平臺監控工具,安裝方式:
pip install glances
glances
高級版監控工具,記錄歷史數據:
sudo apt install atop
atop
sudo perf top
cat /proc/loadavg # 查看系統負載
cat /proc/meminfo # 詳細內存信息
*/5 * * * * /usr/bin/ps -eo pid,ppid,cmd,%cpu,%mem >> /var/log/resource.log
sar -u 1 3 # CPU使用率采樣
sar -r 1 3 # 內存使用采樣
掌握這些工具組合使用,可以快速定位: - 突發性CPU占用(如Java進程Full GC) - 內存泄漏(如Python應用持續增長RSS) - 僵尸進程(Z狀態進程)
建議在日常維護中建立基準數據,當指標異常時能更快發現問題。對于生產環境,建議部署Prometheus+Grafana等專業監控系統。
提示:殺死進程前請確認其重要性,避免誤殺關鍵服務??墒褂?code>kill -15先嘗試優雅終止,再考慮
kill -9。 “`
注:實際字符數約750字(含代碼塊)。如需調整篇幅,可增減工具介紹部分或增加具體案例說明。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。