查看Linux系统内存、CPU、磁盘使用率和详细信息

查看Linux系统内存、CPU、磁盘使用率和详细信息

一、查看内存占用

1、free

# free -m

以MB为单位显示内存使用情况

# free -h

以GB为单位显示内存使用情况

# free -t

以总和的形式查询内存的使用信息

# free -s 5

周期性的查询内存使用信息,每5秒执行一次命令

解释:

Mem:内存的使用情况总览表(物理内存)

Swap:虚拟内存。即可以把数据存放在硬盘上的数据

shared:共享内存,即和普通用户共享的物理内存值

buffers:用于存放要输出到disk(块设备)的数据的

cached:存放从disk上读出的数据

total:机器总的物理内存

used:用掉的内存

free:空闲的物理内存

注:物理内存(total)=系统看到的用掉的内存(used)+系统看到空闲的内存(free)

2、查看某个pid的物理内存使用情况

# cat /proc/PID/status | grep VmRSS

由上面可知,nginx服务进程的两个pid所占物理内存为"2652+1264=3916k"

3、查看本机所有进程的内存占比之和

# cat mem_per.sh

脚本配置解释:
ps -auxw|awk '{print $3}'   表示列出本机所有进程的cpu利用率情况,结果中第一行带"%CPU"字符
ps -auxw|awk '{print $4}'   表示列出本机所有进程的内存利用率情况,结果中第一行带"%MEM"字符
ps auxw|awk '{if (NR>1){print $4}}  表示将"ps auxw"结果中的第一行过滤(NR>1)掉,然后打印第4行

二、查看CPU使用情况

1、top

top后键入P看一下谁占用最大

# top -d 5

周期性的查询CPU使用信息,每5秒刷新一次

2、ps auxw(查看本机的进程所占cpu和mem的百分比情况)

使用"ps auxw" 可以查看到本机的进程所占cpu和mem的百分比情况

# ps auxw | head -1

%CPU 进程的cpu占用率
%MEM 进程的内存占用率

查看java进程所占本机的cpu百分比, 如下为0.2%

# ps auxw |grep -v grep|grep -w java|awk '{print $3}'

查看java进程所占本机的内存百分比, 如下为30.0%

# ps auxw |grep -v grep|grep -w java|awk '{print $4}'

3、查看本机所有进程的CPU占比之和

# cat cpu_per.sh

三、查看cpu信息(信息记录在/proc/cpuinfo中)

# 总核数 = 物理CPU个数 X 每颗物理CPU的核数

# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数

1、查看虚拟机逻辑CPU的个数

# cat /proc/cpuinfo| grep "processor"| wc -l

2、查看物理CPU个数

# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

3、列出CPU详细信息

# lscpu

服务器1:

服务器2:

4、查看每个物理CPU中core的个数(即核数)

# cat /proc/cpuinfo| grep "cpu cores"| uniq

三、Linux下查看哪些进程占用的CPU和内存资源最多的方法

1、获取占用CPU资源最多的10个进程

 # ps aux | head -1; ps aux | grep -v PID | sort -rn -k +3 | head -10

2、获取占用内存资源最多的10个进程

# ps aux | head -1; ps aux | grep -v PID | sort -rn -k +4 | head -10

3、查看占用cpu最高的进程

# ps aux | head -1; ps aux | grep -v PID | sort -rn -k +3 | head -1

4、获取占用内存资源最高的进程

# ps aux | head -1; ps aux | grep -v PID | sort -rn -k +4 | head -1

四、Linux下查看某些进程的启动时间和运行时长

比如查看java进程的启动时间和运行时长

# ps -ef|grep -v grep|grep -w java|awk '{print $2}'

# ps -eo pid,lstart,etime | grep 1973

其中:

Mon Jun 24 09:25:41 2019       为java进程的启动时间

4-00:16:55                     为java进程的运行时长,天-小时-分钟-秒

查看所有进程的启动事件、运行时长

# ps -eo user,pid,lstart,etime,cmd

查看nginx进程启动的精确时间和启动后运行的时长

# ps -eo pid,lstart,etime,cmd|grep nginx

五、查看网络情况

# ifconfig

# ip a

四、查看磁盘以及分区情况

# df -Th   查看分区、挂载情况

# lsblk   查看磁盘情况

# fdisk -l   查看详细的硬盘分区情况

发布了211 篇原创文章 · 获赞 96 · 访问量 75万+

猜你喜欢

转载自blog.csdn.net/yucaifu1989/article/details/103983100