乐闻世界logo
搜索文章和话题

Linux 系统性能监控有哪些常用工具,如何分析 CPU、内存、磁盘和网络的使用情况?

2月17日 23:36

Linux 系统性能监控是运维工程师的重要技能,需要掌握多种工具来诊断系统瓶颈。

CPU 监控:

  • top/htop:实时查看 CPU 使用率、进程信息
  • vmstat:报告虚拟内存统计信息,如 vmstat 1 5(每秒更新一次,共5次)
  • mpstat:显示各个 CPU 核心的使用情况,如 mpstat -P ALL 1
  • sar:系统活动报告,如 sar -u 1 10(每秒采集一次,共10次)

内存监控:

  • free:显示内存使用情况,free -h 以人类可读格式显示
  • vmstat:查看内存交换、缓存等信息
  • ps aux:查看进程的内存占用(VSZ、RSS)
  • pmap:查看进程的内存映射

磁盘监控:

  • df:查看磁盘空间使用情况,df -h 以人类可读格式显示
  • du:查看目录或文件的大小,du -sh directory
  • iostat:查看磁盘 I/O 统计信息,如 iostat -x 1
  • iotop:实时查看磁盘 I/O 使用情况(需要 root 权限)

网络监控:

  • ifconfig/ip:查看网络接口配置
  • netstat/ss:查看网络连接和端口监听,如 netstat -tulnp 或 ss -tulnp
  • nethogs:按进程查看网络带宽使用
  • tcpdump:抓包分析网络流量,如 tcpdump -i eth0 port 80

日志分析:

  • /var/log/messages:系统主日志
  • /var/log/syslog:系统日志(Debian/Ubuntu)
  • /var/log/dmesg:内核启动日志
  • journalctl:systemd 日志查看工具,如 journalctl -f(实时查看)

综合监控工具:

  • dstat:集成了 vmstat、iostat、netstat 等功能
  • glances:基于 Web 的系统监控工具
  • prometheus + grafana:企业级监控解决方案

性能优化建议:

  • CPU:优化算法、减少不必要的计算、使用多进程/多线程
  • 内存:减少内存泄漏、优化数据结构、使用缓存
  • 磁盘:使用 SSD、优化文件系统、减少 I/O 操作
  • 网络:使用 CDN、优化 TCP 参数、减少网络请求
标签:Linux