在Linux系统中监控系统性能是运维和开发人员的常见需求,以下是全面的解决方案和工具推荐:
top
/ htop
htop
需额外安装(sudo apt install htop
)。top
中按 P
(CPU排序)、M
(内存排序)、q
退出。htop
支持鼠标交互和颜色高亮。vmstat
vmstat 1 5
(每秒1次,共5次)。iostat
(sysstat包)
sudo apt install sysstat
。iostat -dx 2
(每2秒显示磁盘详情)。free
-h
人性化显示)。free -h
。df
/ du
df -h
(磁盘分区)、du -sh /path
(目录大小)。netstat
/ ss
ss -tulnp
(监听端口)。dstat
sudo apt install dstat
。dstat -cdngy
(组合监控)。sar
(sysstat包)
/etc/default/sysstat
启用日志。sar -u 1 3
(CPU使用率)。nmon
sudo apt install nmon
。nmon
后按快捷键(如c
=CPU,m
=内存)。gnome-system-monitor
Grafana
+ Prometheus
Netdata
bash <(curl -Ss https://my-netdata.io/kickstart.sh)
)。journalctl
journalctl -u nginx --since "1 hour ago"
。ELK Stack
(Elasticsearch+Logstash+Kibana)
monitor.sh
):
bash
#!/bin/bash
echo "CPU Load: $(uptime | awk -F'load average: ' '{print $2}')"
echo "Memory Free: $(free -h | awk '/Mem/{print $4}')"
crontab -e
添加:
bash
*/5 * * * * /path/to/monitor.sh >> /var/log/monitor.log
关键指标:
%user
>70%需警惕)。%util
(>80%可能瓶颈)。TX/RX
流量突增需排查。报警阈值:
Prometheus Alertmanager
或Zabbix
设置阈值告警。日志轮转:
logrotate
防止日志爆满。bpytop
:现代化htop
替代(Python编写)。Glances
:跨终端监控工具(pip install glances
)。Zabbix
:企业级监控方案。通过组合上述工具,可以构建从实时到历史、从命令行到可视化的全方位监控体系。根据需求选择轻量级命令(如htop
)或长期日志方案(如Prometheus
)。