Linux简单实用小命令010面试常问:Linux怎么查看cpu内存和磁盘的使用率?

Posted Linux常用命令

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux简单实用小命令010面试常问:Linux怎么查看cpu内存和磁盘的使用率?相关的知识,希望对你有一定的参考价值。


在面试开发或者运维岗的时候,面试官可能会问:

Linux怎么查看cpu、内存、磁盘的使用率?

简单点来回答,就是top、free、df这三个命令。

如果想在多核Linux系统中计算cpu使用总和,可以使用sar命令。

NO.1 sar

sar -u 1 3
# 查看cpu总的使用情况,每秒刷新一次,共3

示例如下:

[root@yaomm ~]# sar -u 1 3
Linux 3.10.0-957.21.3.el7.x86_64 (yaomm) 04/18/2020 _x86_64_ (2 CPU)

03:07:00 PM CPU %user %nice %system %iowait %steal %idle
03:07:01 PM all 1.00 0.00 0.50 0.00 0.00 98.50
03:07:02 PM all 0.50 0.00 1.00 0.00 0.00 98.50
03:07:03 PM all 1.00 0.00 0.50 0.00 0.00 98.50
Average: all 0.83 0.00 0.67 0.00 0.00 98.50

NO.2 top

top命令可以用于实时监控cpu的状态,显示系统中各个进程的资源占用情况。常用命令示例:

top
# 对,无参数的top命令是最长用的资源监控命令。

[root@VM_0_3_centos ~]# top
top - 23:03:23 up 127 days, 13:56, 2 users, load average: 0.00, 0.01, 0.05
Tasks: 79 total, 1 running, 78 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.2 us, 0.0 sy, 0.0 ni, 99.7 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 3882032 total, 145996 free, 283752 used, 3452284 buff/cache
KiB Swap: 2097148 total, 1422392 free, 674756 used. 3218052 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
964 redis 20 0 142960 7244 988 S 0.3 0.2 168:01.87 redis-server
15515 root 20 0 260068 123108 3988 S 0.3 3.2 20:12.97 YDService
30378 root 20 0 155536 2132 1540 R 0.3 0.1 0:00.06 top
…………
# 后面还有很多内容,省略了

查看进程的cpu、内存占比主要就是看第七行下的这两列参数:

%CPU # 占用CPU百分比
%MEM # 占用物理内存百分比

如果想看每个cpu的使用率,使用命令top后按1就可以查看每个cpu的使用情况。

%Cpu0  :  1.0 us,  0.7 sy,  0.0 ni, 98.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1 : 0.7 us, 0.7 sy, 0.0 ni, 98.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

NO.3 free

一台电脑、服务器,内存、存储(磁盘)、处理器(cpu)、操作系统是最基本的组成。

free就是用来监视linux系统使用内存的命令。

常用命令:

free -h
# 以人类可读方式展示内存使用情况,根据实际大小自动转换为KB、MB、GB

示例:

[root@yaomm ~]# free -h
total used free shared buff/cache available
Mem: 3.7G 2.1G 147M 1.6M 1.4G 1.3G
Swap: 0B 0B 0B
  • Mem为物理内存使用情况,Swap为虚拟内存使用情况(一般是划分一部分磁盘空间作为虚拟内存)。

  • total :总内存;3.7G一般为4G内存机器。

  • used :已使用内存。

  • free :自由内存。

  • shared :共享内存。

  • buff/cache : 缓存,3.3G。

  • available :可用内存。

注意:available才是可用内存。

在以前没有available这个展示字段的时候,我们通常是将 free + buff/cache 的总量作为可用内存。

linux系统的特性就是将不用的物理内存缓存起来,因为千万以为free的147M内存就是真实的系统剩余内存了。所以当前可用内存为available:1.3G。

NO.4 df

df命令可以说linux上最常用的命令之一,因为一旦磁盘空间不够就会出现各种故障,数据库、应用都可能会处于瘫痪状态。

常用命令示例:

df -h
# 以适合人类阅读的方式展示磁盘空间大小,一般以G为单位

df -i
# -i : 显示inode的使用情况

df -Th
# -T:查看文件系统类型

注意:linux文件有个inode的文件数量限制,一旦无可用inode,则无法再产生新的文件,会在磁盘空间未满的情况下报“No space left on device”,解决方案是删除无用(多天前)的小文件或者log文件。

思考题

top命令的结果中,1-5行分别是什么意思呢?是表示系统的什么状态呢?


   有趣、实用的Linux命令,尽在Linux常用命令。

    关注二维码,搜一搜


以上是关于Linux简单实用小命令010面试常问:Linux怎么查看cpu内存和磁盘的使用率?的主要内容,如果未能解决你的问题,请参考以下文章

Linux下提权常用小命令

Linux常用小命令

Linux 同步小命令

Linux 同步小命令

linux小命令

linux常用小命令