一、dmesg命令
用于显示或控制内核环形缓冲区的内容。允许用户查看或操作内核消息,这些消息通常记录了系统启动过程、硬件检测、驱动加载、系统错误等关键信息。
1.命令格式
dmesg [选项]
2.常用选项
| 选项 | 作用 |
|---|---|
| -C | 清除内核环形缓冲区的消息 |
| -c | 读取并清除所有消息 |
| -D | 禁止向终端打印消息 |
| -e | 以易读格式显示本地时间和时间差 |
| -F | 用文件代替内核日志缓冲区 |
| -H | 以易读的格式显示消息 |
| -T | 显示时间 |
| -k | 只显示内核产生的消息 |
| -l | 只显示指定级别的消息 |
| -w | 实时监视并输出新的内核消息 |
3.支持的日志设施
内核消息 kern
随机的用户级消息 user
邮件系统 mail
系统守护进程 daemon
安全/认证消息 auth
syslogd 内部生成的消息 syslog
行打印机子系统 lpr
网络新闻子系统 news
4.支持的日志等级
emerg 系统无法使用
alert 操作必须立即执行
crit 紧急条件
err 错误条件
warn 警告条件
notice 正常但重要的条件
info 信息
debug 调试级别的消息
二、nmon命令
非常轻量级的linux/UNIX系统监控工具,能实时监控CPU、内存、磁盘I/O、网络等资源。
1.命令格式
nmon #直接执行,交互式命令,类似top命令
2.常用交互指令
| 指令 | 作用 |
|---|---|
| h | 帮助 |
| q | 退出 |
| c,l,C,U | 监控cpu利用率(折线、宽视、详细信息) |
| m | 监控内存使用情况 |
| V | 监控虚拟内存 |
| d | 磁盘使用率 |
| . | 是显示忙碌的disk/proc |
| N | 监控虚拟文件系统 |
| j | 监控文件系统 |
| n | 监控网络 |
| k | 监控内核 |
| r | 显示操作系统 |
| t | 开启top方式(可根据提示输入数字进行排序) |
| +,- | 增加减刷新时间间隔 |
3.后台监控
常用参数
| 参数 | 作用 | |
|---|---|---|
| -f | 关闭交互模式,将数据保存到本地目录中的CSV电子表格格式的 .nmon 文件 | |
| -s | 指定间隔时间(s) | |
| -c | 指定收集次数 | |
| -F | 指定文件的保存名 | |
| -p | 指定监控某个进程的pid | |
| -t | 统计包含top进程 | 、 |
| -T | 在输出中包括最繁忙的进程 |
#不指定文件名,默认生成到当前目录下,文件名是主机名+时间
[root@work1 ~]# nmon -f -s 1 -c 300 -F ./test.nmon
4.图形报表工具
工具下载地址:https://nmon.sourceforge.io/pmwiki.php?n=Site.Nmon-Analyser

将nmon文件添加到分析工具进行转换分析

三、sar命令
sar是系统性能分析工具sysstat的一部分,它可以报告系统的活动,包括CPU利用率、内存使用、I/O、网络统计等。
1.安装及配置
#如果系统中没有sar命令,需要安装sysstat
[root@work1 ~]# yum install -y sysstat
配置文件/etc/sysconfig/sysstat,配置了收集数据的保存时长,什么时候开始压缩,压缩方式和保存方式等信息,可自定义修改。
[root@work1 ~]# cat /etc/sysconfig/sysstat
# sysstat-10.1.5 configuration file.
# How long to keep log files (in days).
# If value is greater than 28, then log files are kept in
# multiple directories, one for each month.
HISTORY=28
# Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER=31
# Parameters for the system activity data collector (see sadc manual page)
# which are used for the generation of log files.
SADC_OPTIONS="-S DISK"
# Compression program to use.
ZIP="bzip2"
同时收集数据的时间间隔,也可自定义修改
[root@work1 ~]# cat /etc/cron.d/sysstat
# Run system activity accounting tool every 10 minutes
*/10 * * * * root /usr/lib64/sa/sa1 1 1
# 0 * * * * root /usr/lib64/sa/sa1 600 6 &
# Generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib64/sa/sa2 -A
2.sar命令的语法格式
sar [选项] [时间间隔] [次数]
3.常用选项
| 选项 | 含义 |
|---|---|
| -A | 所有报告的总和 |
| -b | I/O传输速率信息状态 |
| -d | 输出每个块设备的信息 |
| -C或-u | CPU使用情况 |
| -P [cpu编号] | 配合-C和-u使用,查询某一个cpu的使用情况 |
| -r | 输出内存和交换空间信息 |
| -v | 输出inode、文件和其他内核表的统计信息 |
| -n [关键词] | 网络情况,DEV、IP等 |
| -o file | 将命令执行结果以二进制格式保存到文件中 |
[root@work1 ~]# sar -u 1 3
Linux 3.10.0-957.el7.x86_64 (work1) 10/30/2024 _x86_64_ (1 CPU)
03:55:30 PM CPU %user %nice %system %iowait %steal %idle
03:55:31 PM all 1.01 0.00 1.01 0.00 0.00 97.98
03:55:32 PM all 0.00 0.00 2.00 0.00 0.00 98.00
03:55:33 PM all 0.00 0.00 1.02 0.00 0.00 98.98
Average: all 0.34 0.00 1.35 0.00 0.00 98.32