Linux的主机状态

查看系统资源占用

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

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

第一行:

top:命令名称,14:39:58:当前系统时间,up 6 min:启动了6分钟,2 users:2个用户登录,load:1、5、15分钟负载

第二行:

Tasks:175个进程,1 running:1个进程子在运行,174 sleeping:174个进程睡眠,0个停止进程,0个僵尸进程

%Cpu(s):CPU使用率,us:用户CPU使用率,sy:系统CPU使用率,ni:高优先级进程占用CPU时间百分比,id:空闲CPU率,wa:IO等待CPU占用率,hi:CPU硬件中断率,si:CPU软件中断率,st:强制等待占用CPU率

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

Kib Swap:虚拟内存(交换空间),total:总量,free:空闲,used:使用,buff/cache:buff和cache占用

top命令内容详解

  • 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命令选项

top命令也支持选项:

top交互式选项

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

磁盘信息监控

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

语法:df [-h]

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

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

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

选项:

  • -x,显示更多信息
  • num1:数字,刷新间隔
  • num2:数字,刷新几次

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会将这个请求合并Merge, 提高IO利用率, 避免重复调用);

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

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

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

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

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

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

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

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

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

%util: 磁盘利用率

网络状态监控

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

语法:sar -n DEV num1 num2

选项:

  • -n,查看网络,DEV表示查看网络接口
  • num1:刷新间隔(不填就查看一次结束)
  • num2:查看次数(不填无限次数)

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

信息解读:

  • IFACE 本地网卡接口的名称
  • rxpck/s 每秒钟接受的数据包
  • txpck/s 每秒钟发送的数据包
  • rxKB/S 每秒钟接受的数据包大小,单位为KB
  • txKB/S 每秒钟发送的数据包大小,单位为KB
  • rxcmp/s 每秒钟接受的压缩数据包
  • txcmp/s 每秒钟发送的压缩包
  • rxmcst/s 每秒钟接收的多播数据包
相关推荐
学嵌入式的小杨同学3 分钟前
【Linux 封神之路】信号编程全解析:从信号基础到 MP3 播放器实战(含核心 API 与避坑指南)
java·linux·c语言·开发语言·vscode·vim·ux
酥暮沐34 分钟前
iscsi部署网络存储
linux·网络·存储·iscsi
❀͜͡傀儡师1 小时前
centos 7部署dns服务器
linux·服务器·centos·dns
Dying.Light1 小时前
Linux部署问题
linux·运维·服务器
S19011 小时前
Linux的常用指令
linux·运维·服务器
萤丰信息1 小时前
AI 筑基・生态共荣:智慧园区的价值重构与未来新途
大数据·运维·人工智能·科技·智慧城市·智慧园区
小义_2 小时前
【RH134知识点问答题】第7章 管理基本存储
linux·运维·服务器
运维小欣2 小时前
Agentic AI 与 Agentic Ops 驱动,智能运维迈向新高度
运维·人工智能
梁洪飞2 小时前
内核的schedule和SMP多核处理器启动协议
linux·arm开发·嵌入式硬件·arm
_运维那些事儿2 小时前
VM环境的CI/CD
linux·运维·网络·阿里云·ci/cd·docker·云计算