Linux的查看系统资源命令
2024年01月05日
112
Linux的查看系统资源命令
1、Top命令

这个命令可以实时查看进程的状态,看可以看到总体的系统运行状态cpu、内存等,如图

image.png

(1)第一行中的Tasks、total、running、sleeping、stoped、zombie相当于任务栏概况,比如上图中,总共356个进程、2个处于运行状态、354个处于休眠、停止的有0个、僵尸状态的有0个,不是0就得手工检查下,以下图来自网络图,仅供学习参考。

image.png

2)第二行中显示的就是cpu的状态,具体参数含义如下图所示,主要看的就是用户状态进程所占用cpu的百分比,这里如果比较高的话就得检查一下那些进程占用过多。

image.png

(3)第三行种显示的就是关于内存使用的相关信息,包括总内存、空闲内存、已使用内存、以及缓存。一般大致的计算可用内存为空闲free内存+缓存

image.png

(4)第四行显示的就是swap交换分区的使用情况,所以在看top命令的时候如果交换内存功能没关闭的话,就要多关注下,如果数值一直变化,说明内存就真的不够用了。

image.png

(5)剩余的就是关于进程状态的描述

image.pngimage.png

到这里整体的top命令就可以看懂了,如果还需要研究,就可以使用h命令查看帮助

image.png

按1就可以监控每个逻辑cpu的状态,按m就开显示内存统计数据

image.png

2、vmstat

这个是虚拟内存统计(virtual memory statistics),也可以查看cpu、进程、内存、虚拟内存、还有一个硬盘IO的状态

image.png

(1)procs进程信息 :r代表等待运行进程数、越大系统越忙,b代表不可被唤醒的进程数量,越大越忙

(2)memory信息:交换内存、空闲内存、buff缓冲、cache缓存容量,单位都是KB

(3)swap信息:si就是磁盘交换到内存的数据量、so是内存交换到磁盘中数据量,单位KB,数越大,性能越差,运维要在磁盘和内存间频繁交换数据

(4)io信息:bi块设备中读取、bo写到块设备的数据量,越大IO越繁忙

(5)system信息:in代表每秒被中断的进程次数、cs是每秒事件切换次数,数越大,代表系统和接口设备通信越繁忙

(6)cpu字段:us非内核进程cpu占用、sy内核占用、id空闲cpu、wa等待io、st虚拟机所用cpu占用

3、free -h

查看内存占用情况

image.png

这里的参数和上面top中所介绍的差不多,只是加了一个-h的参数,便于人查看。

4、df -h

这里是查看磁盘使用情况

image.png

5、查看文件夹大小
du -sh * 查看当前路径下的文件大小

image.png

6、查看端口
lsof -I :端口号
ss -nplt
netstat -anp
7、查看进程 ps
ps -ef
ps aux(a代表所有进程、u显示归属用户以及内存使用、x显示没有控制端的进程、-e显示所用进程、-l长格式显示详细信息)

image.pngimage.png

这里uid就是那个用户、pid就是进程的id、ppid父进程id、tty就是那个终端运行,rss实际占用物理内存大小,vsz就是虚拟内存、Time进程占用cpu时间、stat进程状态,start进程启动时间、time进程占用cpu运算时间,command运行进程的命令。