Linux---查看系统资源占用(top)、磁盘信息监控(df、iostat)、网络状态监控(sar)

1. 查看资源占用(top指令)

可以通过top命令查看CPU、内存使用情况,类似Windows的任务管理器。

默认每5秒刷新一次,语法:直接输入top即可,按q或ctrl + c退出。

第一行:

top:命令名称,14:39:58:当前系统时间,up 6 min:启动了6分钟,2 users2个用户登录,

load1515分钟负载

第二行:

Tasks175个进程,1 running1个进程子在运行,

174 sleeping174个进程睡眠,0个停止进程,0个僵尸进程

第三行:

%Cpu(s)CPU使用率,us:用户CPU使用率,sy:系统CPU使用率,

ni:高优先级进程占用CPU时间百分比,id:空闲CPU率,waIO等待CPU占用率,

hiCPU硬件中断率,siCPU软件中断率,st:强制等待占用CPU

第四、五行:

Kib Mem:物理内存,total:总量,free:空闲,used:使用,buff/cachebuffcache占用

KibSwap:虚拟内存(交换空间),total:总量,free:空闲,used:使用,

buff/cachebuffcache占用

PID:进程id
USER:进程所属用户
PR:进程优先级,越小越高
NI:负值表示高优先级,正表示低优先级
VIRT:进程使用虚拟内存,单位KB
RES:进程使用物理内存,单位KB
SHR:进程使用共享内存,单位KB
S:进程状态(S休眠,R运行,Z僵死状态,N负数优先级,I空闲状态)
%CPU:进程占用CPU率
%MEM:进程占用内存率
TIME+:进程使用CPU时间总计,单位10毫秒
COMMAND:进程的命令或名称或程序文件路径

top命令也支持选项:

Linux---查看系统资源占用(top)、磁盘信息监控(df、iostat)、网络状态监控(sar)_第1张图片

top以交互式运行(非-b选项启动),可以用以下交互式命令进行控制:

Linux---查看系统资源占用(top)、磁盘信息监控(df、iostat)、网络状态监控(sar)_第2张图片

2. 磁盘信息监控

2.1 df命令

使用df命令,可以查看硬盘的使用情况:

语法:df [-h]

选项:-h,以更加人性化的单位显示

Linux---查看系统资源占用(top)、磁盘信息监控(df、iostat)、网络状态监控(sar)_第3张图片

2.2 iostat命令 

可以使用iostat查看CPU、磁盘的相关信息:

语法:iostat  [-x]  [num1]  [num2]

选项:-x,显示更多信息

num1:数字,刷新间隔,num2:数字,刷新几次

[root@localhost ~]$ iostat
Linux 3.10.0-957.el7.x86_64 (centos)     2023年06月12日   _x86_64_    (1 CPU) 

avg-cpu:    %user    %nice    %system    %iowait     %steal      %idle
             0.42     0.00       2.05       0.02      0.00       97.52 

Device:     tps       kB_read/s      kB_wrtn/s       kB_read      kB_wrtn 
sda         5.89         159.98           9.37        349348        20455 

中间两行为CPU信息。

tps:该设备每秒的传输次数(Indicate the number of transfers per second that were issued to the

device.)。"一次传输"意思是"一次I/O请求"。多个逻辑请求可能会被合并为"一次I/O请求" 。"一次

传输"请求的大小是未知的。

使用iostat-x选项,可以显示更多信息:

rrqm/s:每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据时,VFS将请

求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并,

提高IO利用率,避免重复调用)。

wrqm/s:每秒这个设备相关的写入请求有多少被Merge了。

rsec/s:每秒读取的扇区数;sectors。

wsec/:每秒写入的扇区数。

rKB/s:每秒发送到设备的读取请求数。

wKB/s:每秒发送到设备的写入请求数。

avgrq-sz:平均请求扇区的大小。

avgqu-sz:平均请求队列的长度。毫无疑问,队列长度越短越好。   

await:每一个IO请求的处理的平均时间(单位是微秒毫秒)。

svctm:表示平均每次设备I/O操作的服务时间(以毫秒为单位)。

%util:磁盘利用率。

3. 网络状态监控

可以使用sar命令查看网络的相关统计(sar命令非常复杂,这里仅简单用于统计网络)

语法:sar -n DEV num1 num2

选项:-n,查看网络,DEV表示查看网络接口

num1:刷新间隔(不填就查看一次结束),num2:查看次数(不填无限次数)

[root@localhost ~]# sar -n DEV 3 2

查看2次,隔3秒刷新一次,并最终汇总平均记录 :

Linux---查看系统资源占用(top)、磁盘信息监控(df、iostat)、网络状态监控(sar)_第4张图片

信息解读:

IFACE:本地网卡接口的名称

rxpck/s:每秒钟接受的数据包

txpck/s:每秒钟发送的数据包

rxKB/S:每秒钟接受的数据包大小,单位为KB

txKB/S:每秒钟发送的数据包大小,单位为KB

rxcmp/s:每秒钟接受的压缩数据包

txcmp/s:每秒钟发送的压缩包

rxmcst/s:每秒钟接收的多播数据包

 

 

你可能感兴趣的:(初识linux,linux,运维,服务器)