8个常用的Linux性能监测和排查命令,你掌握了几个?

艺帆风顺 发布于 2025-04-07 22 次阅读


图片来源网络

在Linux系统中,性能监测工具是很多的,下面我将生产环境常用的几个命令行工具进行介绍

1. top/htop

top:

功能:实时监控进程,显示CPU、内存、负载、交换区等信息。

常用快捷键:

快捷键说明
M按内存使用排序
P按CPU使用排序
k杀死进程,输入进程ID
q退出

htop

功能:top的增强版本,提供更友好的界面和交互性。

特点:支持用箭头键选择进程,并可以直接杀死、查看进程树。在显示界面会有提示键

最小化安装的系统需要自行安装htop

yum install -y htop

2. vmstat

功能:监控系统的内存、进程、CPU和I/O等。

输出字段:

字段说明
r运行队列中等待CPU的进程数(Runnable)
b处于等待状态的进程数(Blocked)
swpd已使用的虚拟内存
free空闲内存
buff用作缓冲区的内存
cache用作页面缓存的内存
si从交换空间读取的内存
so写入交换空间的内存量
bi每秒钟从块设备(如磁盘)读取的块数
bo每秒钟写入块设备的块数
in每秒中断的次数
cs每秒上下文切换的次数
us用户空间占用的CPU时间百分比(User)
sy内核空间占用的CPU时间百分比(System)
id空闲的CPU时间百分比(Idle)
wa等待I/O的CPU时间百分比(Wait)
st被虚拟机偷取的CPU时间百分比(Stolen)

常用操作

每1秒更新一次,输出5次

vmstat 1 5

3. iostat

功能:帮助用户分析磁盘的读写性能,监控设备I/O活动,以及了解系统的整体负载情况。

语法格式:

iostat [选项] [更新时间间隔  次数]

常用选项

选项说明
-c示 CPU 使用情况
-d显示磁盘设备的统计信息
-x显示扩展的磁盘统计信息
-p显示每个分区的统计信息
-h使用更友好的单位

主要输出字段:

输出字段说明
%user用户进程消耗的CPU百分比
%system系统进程消耗的CPU百分比
%iowait等待 I/O 的 CPU 时间百分比
%idle空闲的 CPU 时间百分比(Idle)
tps每秒钟的 I/O 操作次数
kB_read/s每秒读取的 KB 数
kB_wrtn/s每秒写入的 KB 数
kB_read从系统启动以来读取的总 KB 数
kB_wrtn从系统启动以来写入的总 KB 数

使用-x选项的扩展输出

输出内容说明
r_await每次读取操作的平均等待时间(ms)
w_await每次写入操作的平均等待时间(ms)
await所有 I/O 操作(读/写)的平均等待时间(ms)
svctm每次 I/O 操作的平均服务时间(ms)
%util磁盘的利用率

常用操作:

每 1 秒钟更新一次,输出 5 次统计信息。

iostat -x 1 5

4. netstat/ss

功能:查看网络连接、监听端口、路由信息等信息。

netstat和ss命令功能基本一样的。

常用选项:

选项说明
-a显示所有连接和监听端口
-t显示 TCP 协议的连接
-u显示 UDP 协议的连接
-l显示正在监听的套接字
-p显示哪个进程正在使用该连接
-n以数字格式显示地址和端口号(默认情况下,会显示主机名和服务名)。
-r显示路由表
-s显示网络统计信息
-i 显示网络接口信息

常用操作

显示正在监听的端口和使用这些端口的进程

netstat -lntup
ss -lnupt

ss命令也可以快速查看网络连接,通常比netstat更高效。

5. sar

功能:帮助用户监控系统状态,并生成关于 CPU 使用率、内存、I/O、网络、文件系统等的详细报告

sar属于sysstat包,需要单独安装。sar 默认并不会持续收集数据,还需要启动sysstat。

yum install sysstat
systemctl enable --now sysstat

常用操作

每秒报告一次CPU使用情况,报告三次。

sar -u 1 3

每秒报告一次内存使用情况,报告三次。

sar -r 1 3

6. iptraf

iptraf 是一个基于终端的交互式网络监控工具,主要用于实时监控和分析 Linux 系统的网络流量。它提供了详细的网络接口统计信息、网络连接状态、数据包计数、传输速率等内容,常用于网络性能调优和故障排查。iptraf 可以帮助系统管理员快速发现网络瓶颈、连接问题和流量异常。

安装

 yum install iptraf

使用

iptraf-ng

下面动图演示一下效果

里面涉及的一些输出字段大部分应该是比较熟悉的,就不展开讲解了

7. nmon

功能:图形化监控工具,支持多项性能指标。

常用操作:

输入nmon启动界面


按c查看CPU状态


按m查看内存情况

按d查看磁盘空间情况

8. strace

功能:跟踪系统调用,帮助调试程序。

安装

yum install strace

使用strace -p监控特定进程的系统调用,或使用strace ./your_program跟踪程序的执行。

先通过netstat或top命令找到对应的PID,然后再追踪

如有帮助,请点个赞和“在看”!如有不足,敬请指出!感谢你的关注与支持。

路虽远,行则将至!

事虽难,做则必成!共勉!

往期精彩文章