10.1 使用w看系统负载
10.2 vmstat命令
10.3 top命令
10.4 sar命令
10.5 nload命令
w命令, w -f命令 (从虚拟机主机上看)
从xshell上看,date命令显示时间, w命令第一段显示已登录时间,第二段显示用户数,第三段显示负载量 load average
load averge中三个数字分别表示1min, 5min, 15min内系统负载值
从网络登录TTY显示pts/ 从主机登录显示tty1 ~6
数值含义:单位时间段内使用CPU活动的进程有多少个(平均值)
数值太低表示系统空跑,浪费资源,本例中数字为1时最理想(有多少逻辑CPU数字为多少最佳)
cat /proc/cpuinfo查看CPU个数(指逻辑CPU),每颗CPU上有若干逻辑CPU
0表示有一颗逻辑CPU
vimstat命令
查看内存,cpu,虚拟磁盘,交换分区,系统进程,I/O等(第一个数字表示秒,第二个表示显示次数)
r →run 进程数 (排队,循环模式)
b→block 进程被cpu以外的资源,如硬盘网络等堵住,处于等待状态(如网速慢的时候进程发数据包,花的时间更长,只能等待)
swapd→当内存不够时,系统可以拿出一部分数据放到swap空间(如果数字不变,则没有交换,如果不断变化则表示内存不够)
si/so→和swapd相关联:表示有多少KB数据从swap分区swap-in到内存中,swap-out表示从内存出来
bi/bo→和磁盘有关:从磁盘里出来,进入内存(读)数据 (bi),从磁盘里(写)数据(bo),如果频繁读写,b列会增加( 因为磁盘比内存慢,很多进程会等待磁盘读写)
us→用户态跑的服务进程等占CPU的百分比;如操作系统除了运行系统本身, 如跑服务:网站,mysql等,(数字不会超过100,单位为百分比)
sy→系统本身资源服务占用CPU的百分比
Id→idle表示空闲CPU百分比
us%+sy%+id%=100%
wa→等待CPU的进程数,类似于b
top命令 (查看具体进程)
每三秒显示一次,动态显示
st为被“偷走”的CPU百分比,如虚拟化的时候
KiB Mem: 物理内存
KiB Swap:交换分区
RES:物理内存大小,单位为KB ,通常情况下会按照CPU%由大到小排列
M切换成按内存排序
P切换成按CPU排序
数字1可以来回切换成指定所有CPU和平均CPU使用情况,按百分比
q退出
top -c可以查看具体命令
top -bn1 一次性把所有进程静态列出来(适用于写脚本)
kill PID(数字)可以抹杀该进程
sar命令 (linux系统中的瑞士军刀,监控系统状态,安装包sysstat)
安装sar相关包后报错,
sar命令如果不加参数会自动调用系统中保留的历史文件,该文件保存在 /var/log/sa目录中
sar命令会每隔整10分钟把系统状态过滤一遍,并保存在文件中,/var/log/sa
sar -n DEV 1 10:查看网卡流量(和vmstat 类似 每秒显示一次,一共显示十次)
rxpck接受数据包 txpck发出去的数据包 (单位为个数)
rxKB/s 接受的数据量 txKB/s发出的数据量
一般而言数据包数目在几千,如果上万甚至更多可能会被攻击,可用抓包工具继续诊断
加-f 查看指定后面的文件 sar -n DEV -f /var/log/sa/sa05 (数字为日期中的日)
查看系统负载 sar -q (可查看历史)
查看磁盘 sar -b
nload命令(监测网卡流量情况)
先安装epel-release 再安装nload,执行nload会动态显示网络情况,方向键来回切换网卡,按q退出
在 /var/log/下有sa05和sar05文件(第二天显示),前者是二进制文件只能用sar -f查看,后者可以cat