(文章目录)


前言

最近了解了一下Prometheus监控软件,于是同时复习了下查看系统性能的一些命令,涵盖了cpu、进程、磁盘、内存、网络,学到就是赚到,一起来看看吧


lscpu——cpu详细参数

可以查看cpu的一些指标,包括核心数、线程数/每核、厂商等等 lscpu

top——内存、cpu、进程

top

top -n 1	# 刷新1次就中止

默认一直刷新,1.5秒刷新一次

top -d 3	# 每隔3秒刷新一次
top -n 3	# 刷新3次后退出

按q退出

默认以 cpu 使用率为进程排序,也可以按 P 来根据 cpu 排序 按 M 以内存使用率进行排序,按 m 改变内存指标的显示形式 按 1 显示每个 cpu 核心信息

top -p 33638	# 指定监控某个进程

cpu主要指标:%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

us——用户进程消耗,sy——系统进程消耗,id——空闲--idle,hi——硬中断,si——软中断


首行指标: top - 16:28:40 up 1:49, 1 user, load average: 0.00, 0.01, 0.05

top - 当前时间 up 持续开机时间,当前用户在线数 user,load average:过去1分钟、5分钟、15分钟的平均负载

平均负载:系统平均负载是处于运行、就绪或阻塞状态的进程的平均数量。负载平均值并不是针对系统中的CPU数量进行标准化的,因此平均负载为1意味着单个CPU系统一直处于负载状态,而在4 CPU系统上则意味着75%的时间处于空闲状态。

一般对于一个核心来说,超过1表示比较忙了,但不超过5就还可以接受


第二行指标:Tasks: 104 total, 1 running, 103 sleeping, 0 stopped, 0 zombie

Tasks:总进程数,正在运行进程数,就绪或阻塞状态进程数,挂起进程数,僵尸进程数


内存指标:

KiB Mem :  1865280 total,  1586532 free,   113260 used,   165488 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.  1576800 avail Mem 

Swap:交换分区,位于磁盘内,将不常使用的进程放到Swap中以节省内存,默认物理内存剩余30%时启用交换分区,一般设为0提升内存利用率

shared:共享内存,有时多个进程会共享一部分内存,都可以访问,也算已使用内存

buffer:内存-->data-->磁盘,buffer满了再写入磁盘,减少io次数,属于内存中的缓存

cache:磁盘-->data-->内存,将经常需要的数据先读到cache中,属于内存中的内存

htop——top pro

需要下载

yum install epel-release -y	# 软件包更多
yum install htop -y

页面更好看,操作更人性化一点

htop

dstat——网络带宽、cpu、磁盘io

yum install dstat -y

dstat会每秒刷新一条记录

dstat -N ens33,total	# 指定接口并显示全部指标

dstat

glances——全能(除了进程)

yum install glances -y
[root@zh_aliyun ~]# glances

glances 白色背景可能看得不是很清楚,换黑色试一试 glances-black 看得到效果还是很不错的

iftop——实时显示网络通信

yum install iftop -y

会实时显示网络io,效果很不错 iftop

iptraf——交互式

yum install iptraf -y
iptraf-ng

这个命令的界面就比较特别了,可以自由选择一些功能,感兴趣的小伙伴可以去探索一下

在这里插入图片描述

nethogs——查看某个进程消耗多少流量

yum install nethogs -y

也是实时刷新的

nethogs

sar——查看每十分钟的cpu状态

默认记录的是当天从零点开始每十分钟的cpu状态

[root@zh_aliyun ~]# sar
Linux 3.10.0-1160.83.1.el7.x86_64 (zh_aliyun) 	04/17/2023 	_x86_64_	(4 CPU)

12:00:01 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
12:10:01 AM     all      0.14      0.00      0.19      0.00      0.00     99.66
12:20:01 AM     all      0.14      0.00      0.19      0.00      0.00     99.67
12:30:01 AM     all      0.17      0.00      0.22      0.00      0.00     99.61
12:40:01 AM     all      0.16      0.00      0.21      0.00      0.00     99.63
12:50:01 AM     all      0.15      0.00      0.21      0.00      0.00     99.64
01:00:01 AM     all      0.15      0.00      0.20      0.00      0.00     99.65

df——查看挂载状态及空间使用

[root@zh_aliyun ~]# df
Filesystem     1K-blocks    Used Available Use% Mounted on
devtmpfs         3993596       0   3993596   0% /dev
tmpfs            4004184       0   4004184   0% /dev/shm
tmpfs            4004184     540   4003644   1% /run
tmpfs            4004184       0   4004184   0% /sys/fs/cgroup
/dev/vda1      103080204 3546048  95113928   4% /
tmpfs             800840       0    800840   0% /run/user/0

iostat——查看cpu、磁盘io

[root@zh_aliyun ~]# iostat
Linux 3.10.0-1160.83.1.el7.x86_64 (zh_aliyun) 	04/17/2023 	_x86_64_	(4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.15    0.00    0.21    0.00    0.00   99.64

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
vda               0.35         0.18         2.40     368134    4936744

du——统计目录或文件的空间占用情况

-a:显示每个文件的大小

-h:以K、M、G显示

-s:只显示一个总数

du

jobs——查看后台进程

查看当前终端后台正在运行的进程

[root@web1 ~]# vim ng &		# 将vim放到后台时就会将其挂起
[1] 2829
[root@web1 ~]# top
Tasks: 105 total,   1 running, 103 sleeping,   1 stopped,   0 zombie	# 出现了stopped的进程
[root@web1 ~]# jobs		# 可以看到被挂起的进程
[1]+  已停止               vim ng
fg——将后台进程调到前台

配合 fg + 后台进程的序号,可以将进程调到前台运行

[root@web1 ~]# fg 1		# 又调至前台运行
vim ng
[root@web1 ~]# jobs		# 退出编辑后后台没有进程挂起了

总结

以上就是今天要讲的内容,本文介绍了查看系统性能的一些命令,涵盖了cpu、进程、磁盘、内存、网络,共十三个命令,如果有什么不准确的地方,欢迎留言指出,我会及时改正,感谢大家观看。