当前位置:首页>Linux>Linux 系统运行状态核心查看命令

Linux 系统运行状态核心查看命令

  • 2026-09-28 21:26:26
Linux 系统运行状态核心查看命令

技术弄巷

读完仅需

5
分钟

记得星标公众号

前言

在Linux系统运维中,快速掌握CPU、内存、硬盘、网卡等核心组件的运行状态,是排查性能问题、保障系统稳定的基础。本文整理了系统整体状态、CPU、内存、硬盘、网卡五大维度的核心查看命令,聚焦实用操作与关键输出解读,命令格式规整且附带核心注释,便于快速查阅和使用。

一、系统整体运行状态(top 核心命令)

top是Linux动态实时查看系统运行状态的核心命令,可同时监控CPU、内存、进程等关键信息,终端输入后实时刷新(按q退出)。

[root@localhost ~]# top  # 动态监控系统运行状态,按q退出# 核心输出解读(仅展示关键行,按列对齐)top - 13:51:58 up  4:45,  2 users,  load average: 0.00, 0.01, 0.05  # 系统整体状态Tasks: 124 total,   1 running, 123 sleeping,   0 stopped,   0 zombie # 进程状态%Cpu(s):  1.4 us,  0.0 sy,  0.0 ni, 98.6 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st # CPU使用率KiB Mem :   995924 total,   690372 free,   110360 used,   195192 buff/cache # 物理内存KiB Swap:  2097148 total,  2097148 free,        0 used.   707544 avail Mem # 交换分区

关键输出注释

  1. 系统负载
    :load average: 0.00, 0.01, 0.05→ 最近1/5/15分钟系统平均负载,该值不长期超过CPU核心数即为负载正常;
  2. CPU空闲率
    :%Cpu(s)中id列 → 98.6表示CPU空闲98.6%,数值越低CPU越繁忙;
  3. 内存可用
    :avail Mem→ 实际可分配给新进程的内存大小,比free列更具参考性;
  4. 进程状态
    :zombie为僵尸进程,需关注数值是否为0,非0则需清理。

补充:快速查看系统负载(uptime)

无需进入top交互界面,快速获取系统运行时间+平均负载:

[root@localhost ~]# uptime# 快速查看系统负载,输出与top第一行一致 13:58:08 up  4:52,  2 users,  load average: 0.00, 0.02, 0.05

二、CPU 状态监控

1. 查看CPU硬件信息(lscpu)

获取CPU架构、核心数、型号等静态硬件信息,核心数是判断系统负载的重要依据:

[root@localhost ~]# lscpu  # 查看CPU硬件详情,关键输出如下Architecture:          x86_64        # CPU架构(64位)CPU(s):                4             # 总逻辑CPU核心数Core(s) per socket:    2             # 每个CPU插槽的物理核心数Socket(s):             2             # CPU插槽数Model name:            Intel(R) Core(TM) i7-10510U CPU @ 1.80GHz # CPU型号

2. 查看CPU整体使用率(mpstat)

mpstat可定时采样CPU使用率,比top更适合统计一段时间的平均状态,格式:mpstat 采样间隔 采样次数

[root@localhost ~]# mpstat 2 4  # 每2秒采样1次,共采样4次,输出CPU平均使用率Linux 3.10.0-957.el7.x86_64 (localhost.localdomain) 	07/22/2022 	_x86_64_	(4 CPU)03:16:03 PM  CPU    %usr   %sys %iowait   %idle  # 核心列:用户态|内核态|IO等待|空闲03:16:05 PM  all    0.00    0.12    0.00   99.88  # all表示所有CPU,可指定核心(如mpstat -P 0 2 4查看0号CPU)03:16:07 PM  all    0.00    0.00    0.00  100.00

关键注释

  • %iowait
    :IO等待占比,数值过高表示硬盘IO瓶颈导致CPU等待;
  • 采样间隔建议设2-5秒,避免单次采样误差。

三、内存 状态监控

1. 查看内存容量(free -m)

free查看内存使用情况,-m以MB为单位(更易读),-g为GB单位,核心关注可用内存:

[root@localhost ~]# free -m  # 以MB为单位查看内存/交换分区使用情况              total        used        free      shared  buff/cache   availableMem:            972         107         574           7         291         690  # 物理内存Swap:          2047           0        2047                                      # 交换分区(虚拟内存)

关键注释

  • buff/cache
    :缓存/缓冲区,系统自动利用空闲内存做缓存,可释放给进程使用,并非实际占用;
  • available
    :物理内存实际可用大小,核心参考指标,无需关注free列的原始空闲值;
  • Swap
    :交换分区使用率若长期>0,说明物理内存不足,需扩容。

2. 动态查看内存IO(vmstat)

vmstat监控内存、进程、CPU、IO的综合状态,格式:vmstat 采样间隔 采样次数,无采样次数则持续输出:

[root@localhost ~]# vmstat 2 4  # 每2秒采样1次,共4次,聚焦内存与IOprocs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st 1  0      0 587852   2108 295912    0    0     3     0    9   13  0  0 100  0  0

核心列注释

  • swpd
    :交换分区使用量,非0表示内存不足;
  • si/so
    :从交换分区读/写内存的大小,均为0表示内存无交换,性能正常;
  • bi/bo
    :从块设备读/写数据的大小,反映硬盘IO情况。

四、硬盘 状态监控

1. 查看硬盘容量与挂载点(df -hT)

df查看文件系统磁盘使用情况,-h人类可读单位(G/M),-T显示文件系统类型,核心关注使用率%Use:

[root@localhost ~]# df -hT  # 查看硬盘容量、挂载点、文件系统类型,-h易读化,-T显示文件系统

2. 查看硬盘inode使用(df -i)

Linux中文件由inode标识,与磁盘容量相互独立,df -i查看inode使用情况,inode占满后即使硬盘有空间也无法创建文件:

[root@localhost ~]# df -i  # 查看inode使用情况,关键关注%Iused(inode使用率)

3. 查看磁盘IO性能(iostat)

iostat聚焦硬盘IO读写,排查硬盘瓶颈,格式:iostat 采样间隔 采样次数,核心关注磁盘读写速率和IO等待:

[root@localhost ~]# iostat 1 3  # 每1秒采样1次,共3次,查看磁盘IOLinux 3.10.0-957.el7.x86_64 (localhost.localdomain) 	07/22/2022 	_x86_64_	(4 CPU)avg-cpu:  %user   %nice %system %iowait  %steal   %idle  # CPU层面IO等待           0.02    0.00    0.03    0.00    0.00   99.95Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn  # 磁盘设备IOsda               0.40        10.97         1.13     258438      26525

关键注释

  • %iowait
    :CPU等待硬盘IO的时间占比,数值过高(如>10)表示硬盘IO存在瓶颈;
  • tps
    :每秒磁盘IO请求数,反映磁盘繁忙程度;
  • kB_read/s/kB_wrtn/s
    :磁盘每秒读/写速率,是硬盘IO的核心指标。

五、网卡 流量/IO监控(sar -n DEV)

sar是Linux系统活动报告工具,-n DEV专门监控网卡流量,格式:sar -n DEV 采样间隔 采样次数,无次数则持续输出:

[root@localhost ~]# sar -n DEV 2  # 每2秒采样1次,监控网卡实时流量,按Ctrl+C退出03:47:39 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s  # 核心列03:47:40 PM        lo      0.00      0.00      0.00      0.00  # 本地回环网卡,忽略03:47:40 PM     ens33      7.89     10.53      0.58      1.79  # 物理网卡,核心关注

关键列注释(核心关注物理网卡,如ens33/eth0/ens192)

  • rxpck/s
    :每秒接收的数据包数;
  • txpck/s
    :每秒发送的数据包数;
  • rxkB/s
    :每秒接收的字节数(KB),网卡入站流量;
  • txkB/s
    :每秒发送的字节数(KB),网卡出站流量;
  • 数值突然飙升表示网卡流量异常,需排查网络请求或攻击。

总结

  1. 系统整体状态用top(动态)/uptime(快速负载),核心看平均负载和CPU/内存空闲率;
  2. CPU关注核心数(lscpu)、使用率(mpstat)、负载(uptime),负载不超核心数即为正常;
  3. 内存核心看free -m的available列,vmstat的swpd/si/so判断是否内存不足;
  4. 硬盘关注df -hT的容量、df -i的inode、iostat的IO读写和%iowait;
  5. 网卡流量用sar -n DEV,聚焦物理网卡的rxkB/s(入站)和txkB/s(出站)。

最新文章

随机文章