Linux查看系统资源命令汇总
作者按:
有时候,有些应用莫名其妙启动不了了,或者说没反应,或者web界面进不去了,这时候就得看一下机器资源是否够用,这里就来介绍下常用的检查命令吧。
1、Top命令
这个命令可以实时查看进程的状态,看可以看到总体的系统运行状态cpu、内存等,如图
(1)第一行中的Tasks、total、running、sleeping、stoped、zombie相当于任务栏概况,比如上图中,总共356个进程、2个处于运行状态、354个处于休眠、停止的有0个、僵尸状态的有0个,不是0就得手工检查下,以下图来自网络图,仅供学习参考。
(2)第二行中显示的就是cpu的状态,具体参数含义如下图所示,主要看的就是用户状态进程所占用cpu的百分比,这里如果比较高的话就得检查一下那些进程占用过多。
(3)第三行种显示的就是关于内存使用的相关信息,包括总内存、空闲内存、已使用内存、以及缓存。一般大致的计算可用内存为空闲free内存+缓存
(4)第四行显示的就是swap交换分区的使用情况,所以在看top命令的时候如果交换内存功能没关闭的话,就要多关注下,如果数值一直变化,说明内存就真的不够用了。
(5)剩余的就是关于进程状态的描述
到这里整体的top命令就可以看懂了,如果还需要研究,就可以使用h命令查看帮助
按1就可以监控每个逻辑cpu的状态,按m就开显示内存统计数据
2、vmstat
这个是虚拟内存统计(virtual memory statistics),也可以查看cpu、进程、内存、虚拟内存、还有一个硬盘IO的状态
(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
查看内存占用情况
这里的参数和上面top中所介绍的差不多,只是加了一个-h的参数,便于人查看。
4、df -h
这里是查看磁盘使用情况
5、查看文件夹大小
du -sh * 查看当前路径下的文件大小
6、查看端口
lsof -I :端口号
ss -nplt
netstat -anp
7、查看进程 ps
ps -ef
ps aux(a代表所有进程、u显示归属用户以及内存使用、x显示没有控制端的进程、-e显示所用进程、-l长格式显示详细信息)
这里uid就是那个用户、pid就是进程的id、ppid父进程id、tty就是那个终端运行,rss实际占用物理内存大小,vsz就是虚拟内存、Time进程占用cpu时间、stat进程状态,start进程启动时间、time进程占用cpu运算时间,command运行进程的命令。
好了到这里,基本的关于linux中查看资源情况有了一个大致了解,快去实践,祝学习顺利!
本文系作者 @河马 原创发布在河马博客站点。未经许可,禁止转载。
暂无评论数据