(文章目录)
前言
最近了解了一下Prometheus监控软件,于是同时复习了下查看系统性能的一些命令,涵盖了cpu、进程、磁盘、内存、网络,学到就是赚到,一起来看看吧
lscpu——cpu详细参数
可以查看cpu的一些指标,包括核心数、线程数/每核、厂商等等
top——内存、cpu、进程
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
页面更好看,操作更人性化一点
dstat——网络带宽、cpu、磁盘io
yum install dstat -y
dstat会每秒刷新一条记录
dstat -N ens33,total # 指定接口并显示全部指标
glances——全能(除了进程)
yum install glances -y
[root@zh_aliyun ~]# glances
白色背景可能看得不是很清楚,换黑色试一试 看得到效果还是很不错的
iftop——实时显示网络通信
yum install iftop -y
会实时显示网络io,效果很不错
iptraf——交互式
yum install iptraf -y
iptraf-ng
这个命令的界面就比较特别了,可以自由选择一些功能,感兴趣的小伙伴可以去探索一下
nethogs——查看某个进程消耗多少流量
yum install nethogs -y
也是实时刷新的
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:只显示一个总数
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、进程、磁盘、内存、网络,共十三个命令,如果有什么不准确的地方,欢迎留言指出,我会及时改正,感谢大家观看。