Linux命令补充 - dmesg、nmon、sar

一、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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容