Linux使用命令查看核心监控文件中的数据(绝对的技术干货)

admin 2026-03-06 18:57:20 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文系统介绍了Linux系统核心监控文件的查看方法,涵盖/proc、/sys、/var/log等关键目录,涉及CPU、内存、磁盘、网络、进程及安全日志等监控内容。文章采用表格形式呈现具体文件路径、查看命令和关键字段解读,结构清晰实用性强,是运维人员进行系统故障排查和安全审计的实用参考,适合作为日常运维速查指南。 综合评分: 78 文章分类: 安全运营,终端安全,安全建设


cover_image

Linux使用命令查看核心监控文件中的数据(绝对的技术干货)

原创

刘军军 刘军军

运维星火燎原

2026年3月6日 00:00 河北

一、CPU 相关监控文件(/proc/cpuinfo、/proc/stat 等)

| | | | | — | — | — | | 监控文件 | 查看命令 | 核心解读(关键字段) | | /proc/cpuinfo | cat /proc/cpuinfo | model name(CPU型号)、cpu cores(核心数)、processor(逻辑核心) | | /proc/stat | cat /proc/stat | cpu 行:us(用户态)、sy(内核态)、id(空闲)、wa(IO等待) | | /proc/loadavg | cat /proc/loadavg | 前3个数字:1/5/15分钟负载,4核机器>4表示CPU压力大 | | /proc/interrupts | cat /proc/interrupts | 各CPU核心的硬中断数,某列持续暴涨→硬件/驱动异常 | | /proc/softirqs | cat /proc/softirqs | 软中断统计,NET_RX/NET_TX暴涨→网络流量过载 |

二、内存相关监控文件(/proc/meminfo、/proc/swaps 等)

| | | | | — | — | — | | 监控文件 | 查看命令 | 核心解读(关键字段) | | /proc/meminfo | cat /proc/meminfo | MemTotal/MemFree(总/空闲内存)、SwapUsed(交换分区使用)、Buffers/Cached(缓存) | | /proc/swaps | cat /proc/swaps | 交换分区路径、大小、已用,Used>0且持续涨→内存不足 | | /proc/vmstat | cat /proc/vmstat | pginod/pgout(内存页换入/换出),数值大→内存紧张 | | /proc/zoneinfo | cat /proc/zoneinfo | 内存区域(ZONE)状态,free 列→各区域空闲内存 |

三、磁盘/IO 相关监控文件

| | | | | — | — | — | | 监控文件 | 查看命令 | 核心解读(关键字段) | | /proc/diskstats | cat /proc/diskstats | 每行对应一个磁盘:read_io(读IO数)、write_io(写IO数)、io_ticks(IO耗时) | | /proc/partitions | cat /proc/partitions | 磁盘分区大小(blocks,单位1KB)、分区名(sda1/nvme0n1p1) | | /proc/mounts | cat /proc/mounts | 已挂载文件系统:挂载点、文件系统类型(ext4/xfs)、挂载参数(rw/ro) |

四、网络相关监控文件

| | | | | — | — | — | | 监控文件 | 查看命令 | 核心解读(关键字段) | | /proc/net/dev | cat /proc/net/dev | 网卡流量:rx_bytes(接收字节)、tx_bytes(发送字节)、rx_dropped(丢包) | | /proc/net/tcp | cat /proc/net/tcp | TCP连接:local_address(本地IP:端口)、rem_address(远端IP:端口)、state(连接状态) | | /proc/net/udp | cat /proc/net/udp | UDP连接:同TCP,无状态字段 | | /proc/net/arp | cat /proc/net/arp | ARP表:IP address、HW address(MAC地址)、Device(网卡) |

五、进程相关监控文件(按PID查看)

以 PID=1(systemd)为例,替换为目标PID即可:

| | | | | — | — | — | | 监控文件 | 查看命令 | 核心解读(关键字段) | | /proc/1/status | cat /proc/1/status | VmRSS(物理内存)、Threads(线程数)、State(进程状态)、PPid(父进程ID) | | /proc/1/cmdline | cat /proc/1/cmdline | 进程启动完整命令(无空格,可加 tr ‘\0’ ‘ ‘ 格式化:`cat /proc/1/cmdline | | /proc/1/io | cat /proc/1/io | 进程IO:rchar(读字节)、wchar(写字节)、syscr(读系统调用) | | /proc/1/statm | cat /proc/1/statm | 内存极简版:依次为总内存、常驻内存、共享内存(单位:页,1页=4KB) |

六、内核/系统全局监控文件

| | | | | — | — | — | | 监控文件 | 查看命令 | 核心解读(关键字段) | | /proc/version | cat /proc/version | 内核版本(如 Linux version 5.10.0-167.oe2.x86_64)、编译信息 | | /proc/uptime | cat /proc/uptime | 第一个数:系统运行秒数;第二个数:CPU空闲秒数 | | /proc/sys/fs/file-nr | cat /proc/sys/fs/file-nr | 已打开文件数/最大文件数,第一个数>65535→文件描述符耗尽 | | /proc/modules | cat /proc/modules | 已加载内核模块:模块名、大小、依赖、状态 |

  1. 查看 /proc 下文本文件:直接用 cat 命令,核心是关注标注的「关键字段」;
  2. 进程相关文件:替换 PID 即可查看任意进程的详细数据;
  3. 动态监控:可搭配 watch 命令实时刷新(如 watch -n 1 cat /proc/loadavg,1秒刷新一次);
  4. 格式化输出:二进制/无空格文件(如cmdline)用 tr ‘\0’ ‘ ‘ 转成易读格式。

这些命令是查看 /proc 监控数据的「通用方法」,无需依赖任何第三方工具,直接读取内核暴露的原始数据,是排查系统问题最底层、最准确的方式。

七、CPU/硬件状态监控文件(/sys/devices/system/cpu/、/sys/class/thermal/)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq | cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq | CPU0 当前运行频率(单位:Hz),如 2200000 = 2.2GHz;多核心替换 cpu0 为 cpu1/cpu2 查看 | | /sys/devices/system/cpu/online | cat /sys/devices/system/cpu/online | 在线CPU核心列表(如 0-3 表示4核都在线),缺少数值→核心离线/故障 | | /sys/class/thermal/thermal_zone0/temp | cat /sys/class/thermal/thermal_zone0/temp | CPU温度(单位:毫摄氏度),如 55000 = 55℃;>85000→CPU过热,会降频卡顿 | | /sys/class/hwmon/hwmon0/temp1_input | cat /sys/class/hwmon/hwmon0/temp1_input | 主板/硬盘温度(部分机型),单位同上,数值异常→硬件故障 | | /sys/class/hwmon/hwmon0/fan1_input | cat /sys/class/hwmon/hwmon0/fan1_input | 风扇转速(单位:转/分钟),0→风扇停转,需警惕 |

八、网络状态监控文件(/sys/class/net/)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /sys/class/net/eth0/statistics/rx_bytes | cat /sys/class/net/eth0/statistics/rx_bytes | eth0 累计接收字节数(实时增长→有流量),替换 eth0 为实际网卡名(如 ens33) | | /sys/class/net/eth0/statistics/tx_bytes | cat /sys/class/net/eth0/statistics/tx_bytes | eth0 累计发送字节数,结合 rx_bytes 看网卡总流量 | | /sys/class/net/eth0/statistics/rx_dropped | cat /sys/class/net/eth0/statistics/rx_dropped | 接收丢包数,持续增长→网卡过载/网线故障/驱动问题 | | /sys/class/net/eth0/statistics/tx_errors | cat /sys/class/net/eth0/statistics/tx_errors | 发送错误数,非0→网络配置/硬件异常 | | /sys/class/net/eth0/operstate | cat /sys/class/net/eth0/operstate | 网卡状态(up=启用,down=禁用,unknown=异常) |

九、磁盘/存储监控文件(/sys/block/)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /sys/block/sda/stat | cat /sys/block/sda/stat | 磁盘IO统计(空格分隔字段):第1列=读IO数,第5列=写IO数,第10列=IO耗时(ms);数值暴涨→磁盘繁忙 | | /sys/block/sda/queue/rotational | cat /sys/block/sda/queue/rotational | 磁盘类型:0=SSD(固态硬盘),1=HDD(机械硬盘) | | /sys/block/sda/device/model | cat /sys/block/sda/device/model | 磁盘型号(如 VMware Virtual disk),确认硬件信息 | | /sys/fs/ext4/sda1/errors | cat /sys/fs/ext4/sda1/errors | ext4文件系统错误数,非0→文件系统损坏,需执行 fsck 检查 |

十、容器/Cgroup 资源监控文件(/sys/fs/cgroup/)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /sys/fs/cgroup/memory/memory.usage_in_bytes | cat /sys/fs/cgroup/memory/memory.usage_in_bytes | 当前Cgroup(容器/进程组)已用内存(字节),接近 memory.limit_in_bytes→内存不足 | | /sys/fs/cgroup/memory/memory.limit_in_bytes | cat /sys/fs/cgroup/memory/memory.limit_in_bytes | 内存上限(字节),9223372036854771712=无限制 | | /sys/fs/cgroup/cpu/cpuacct/usage | cat /sys/fs/cgroup/cpu/cpuacct/usage | CPU累计使用时间(纳秒),结合 watch 看增长速度→CPU占用率 | | /sys/fs/cgroup/cpu/cpu.cfs_quota_us | cat /sys/fs/cgroup/cpu/cpu.cfs_quota_us | CPU配额(微秒),-1=无限制,50000=限制50%CPU | | /sys/fs/cgroup/blkio/blkio.throttle.io_service_bytes | cat /sys/fs/cgroup/blkio/blkio.throttle.io_service_bytes | 磁盘IO字节数,看容器/进程的磁盘读写量 |

十一、电源/电池监控文件(/sys/class/power_supply/)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /sys/class/power_supply/AC/online | cat /sys/class/power_supply/AC/online | 市电状态:1=接电源,0=用电池(仅笔记本/物理机) | | /sys/class/power_supply/BAT0/capacity | cat /sys/class/power_supply/BAT0/capacity | 电池电量(百分比),如 80=80% |

通用技巧(查看/sys文件的核心方法)

  1. 实时监控数据变化:用 watch 命令刷新(1秒一次),比如:
   watch -n 1 cat /sys/class/net/eth0/statistics/rx_bytes
  1. 批量查看同类型文件:用 ls + grep 定位文件,比如找所有CPU频率文件:
   ls /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq
  1. 格式化输出(字节转可读单位):用 numfmt 转换字节数(如转成MB/GB):
   cat /sys/fs/cgroup/memory/memory.usage_in_bytes | numfmt --to=iec
  1. 查看 /sys 下的监控文件核心命令是 cat,结合 watch 可实时监控变化;
  2. 不同机型的 /sys 文件路径略有差异(如网卡名、hwmon编号),先用 ls 确认路径存在;
  3. 重点关注「数值持续增长」的字段(如丢包数、IO数、温度),这类数据是排查系统/硬件故障的关键;
  4. 容器/Cgroup 相关文件需进入对应容器的Cgroup目录(如 /sys/fs/cgroup/memory/docker/容器ID/)查看精准数据。

十二、登录/安全类监控文件(用户行为、认证审计)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /run/utmp | utmpdump /run/utmp | 当前登录用户:用户名、终端、IP、登录时间;陌生IP→疑似入侵 | | /run/wtmp | utmpdump /run/wtmp | 历史登录记录:谁登录过、从哪来、登录时长;半夜高频登录→异常 | | /run/btmp | utmpdump /run/btmp | 失败登录记录:Failed password→暴力破解,需封IP | | /var/log/lastlog | lastlog | 每个用户最后登录时间:长期不用的用户突然登录→风险 | | /var/log/secure | cat /var/log/secure / grep “Failed” /var/log/secure | SSH/sudo/su 认证日志:Accepted=登录成功,Failed=密码错误 | | /var/log/audit/audit.log | cat /var/log/audit/audit.log / grep “denied” /var/log/audit/audit.log | 安全审计日志:文件修改、权限变更、系统调用;denied=权限拒绝 |

十三、系统日志类监控文件(故障排查、服务状态)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /var/log/messages | cat /var/log/messages / tail -f /var/log/messages | 系统通用日志:服务启动失败、内核报错、硬件异常;关键字error/failed/timeout | | /var/log/dmesg | cat /var/log/dmesg / dmesg -T | 内核启动日志:硬件驱动、磁盘/网卡初始化;fail→硬件识别失败 | | /var/log/cron | cat /var/log/cron / grep “ERROR” /var/log/cron | 定时任务日志:任务执行结果;陌生任务→挖矿/后门风险 | | /run/log/journal/* | journalctl -f / journalctl -u 服务名 | systemd 二进制日志:实时监控指定服务(如journalctl -u nginx) | | /var/log/sa/saDD | sar -f /var/log/sa/sa23 / sar -u -f /var/log/sa/sa23 | sysstat 历史性能数据:DD=日期(如23号),查CPU/内存/磁盘历史负载 |

十四、磁盘/存储类监控文件(挂载、配额、文件系统)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /etc/mtab | cat /etc/mtab / mount | 实时挂载列表:挂载点、文件系统类型(ext4/xfs)、挂载参数(rw=可写,ro=只读);根目录ro→文件系统故障 | | /etc/fstab | cat /etc/fstab | 开机挂载配置:UUID、挂载点、挂载参数;配置错误→开机挂载失败 | | /aquota.user//aquota.group | quota -u 用户名 / cat /aquota.user | 用户/组磁盘配额:已用空间、配额上限;超配额→无法写入文件 | | /etc/blkid.tab | cat /etc/blkid.tab / blkid | 磁盘UUID/文件系统类型:确认磁盘标识,避免挂载错误 |

十五、网络配置类监控文件(DNS、网卡、连接跟踪)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /etc/resolv.conf | cat /etc/resolv.conf | DNS 配置:nameserver→DNS服务器;陌生地址→DNS劫持 | | /etc/hosts | cat /etc/hosts | 本地域名解析:异常IP映射→域名劫持 | | /etc/sysconfig/network-scripts/ifcfg-eth0 | cat /etc/sysconfig/network-scripts/ifcfg-eth0 | 网卡配置:IP、子网、网关、开机自启(ONBOOT=yes);配置错误→网络不通 | | /sys/fs/nf_conntrack | cat /sys/fs/nf_conntrack / conntrack -L | 防火墙连接跟踪:TCP/UDP连接数;数量暴增→SYN洪水攻击 |

十六、服务/进程类监控文件(PID、资源限制)

| | | | | — | — | — | | 监控文件路径 | 查看命令 | 核心解读(关键信息) | | /run/nginx/nginx.pid | cat /run/nginx/nginx.pid / ps -p $(cat /run/nginx/nginx.pid) | 服务PID文件:PID存在→服务运行;PID不存在→服务停止 | | /run/mysqld/mysqld.pid | cat /run/mysqld/mysqld.pid | MySQL PID:结合ps确认进程是否存活 | | /etc/security/limits.conf | cat /etc/security/limits.conf / ulimit -a | 系统资源限制:nofile=最大文件句柄,nproc=最大进程数;数值太小→业务报错“too many open files” | | /etc/passwd//etc/shadow | cat /etc/passwd / cat /etc/shadow | 用户列表/密码状态:/etc/shadow中!→账号禁用,陌生用户→入侵风险 |

十七、通用查看技巧(适配所有非/proc/sys监控文件)

  1. 实时监控文件变化(日志类首选):
   tail -f /var/log/messages  # 1秒刷新一次,按Ctrl+C退出
  1. 过滤关键信息(快速定位问题):
   grep -E "error|failed|timeout" /var/log/messages  # 只看错误/超时日志
   grep"Accepted" /var/log/secure | awk '{print $11}' | sort | uniq -c  # 统计成功登录的IP
  1. 二进制文件解析(utmp/wtmp/btmp):
   utmpdump /run/wtmp | less  # 分页查看历史登录记录
  1. 转换字节单位(磁盘/内存类):
   cat /aquota.user | numfmt --to=iec  # 字节转MB/GB,更易读
  1. 非 /proc//sys 的监控文件以日志文件、配置文件、PID文件为主,核心查看命令是 cat/tail -f/grep;
  2. 二进制文件(如utmp/wtmp)需用 utmpdump 解析,不能直接cat;
  3. 重点关注「关键字过滤」(如error/failed/陌生IP),是快速排查故障/入侵的核心;
  4. 结合 watch 命令可实时监控数值变化(如watch -n 1 cat /var/log/lastlog)。

免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:运维星火燎原 刘军军 刘军军《Linux使用命令查看核心监控文件中的数据(绝对的技术干货)》

评论:0   参与:  0