1.uptime
该命令直观的显示了服务器在过去15分钟,5分钟,1分钟内的平均负载
2.vmstat
每隔2秒输出vmstat的信息,共输出10次。
类别 | procs | swap | io | system | cpu |
r:正在运行的进程数目 | si: 换入到内存的容量 | bi: 读入块数目 | in: 中断数目 | us:用户 | |
b:阻塞的进程数目 | so: 换出内存的容量 | bo: 写到块数目 | cs: 上下文切换数目 | sy:系统 | |
id:空闲 | |||||
wa:等待io完成的cpu |
3.iostat
iostat -xdmt 1 1 每秒输出一次io统计信息,共输出一次。
rrqm/s wrqm/s | r/s w/s | rmb/s wmb/s | avgrp-sz avgqu-sz | await / svctm / %util |
每秒这个设备相关的读取/写入请求merge次数 | 每秒读写次数 | 每秒读写的容量 | 平均io大小/ 平均io队列长度 | 等待io时间/io服务时间/等待io占用百分比 |
备注:若磁盘%util很大,超过90%,则表示磁盘io到瓶颈了。
4.top
top -d 10 每10秒钟查看下信息。
包含了load信息,系统运行时间信息,cpu信息,进程信息等。
重要参数说明:
virt:virtual memory usage 虚拟内存:进程使用的虚拟内存总量,单位:kb。
virt=swap res 假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量
res: resident memory usage 进程使用的、未被换出的物理内存大小,单位:kb。
res=code data 如果申请100m的内存,实际使用10m,它只增长10m,与virt相反
shr:shared memory 共享内存大小【共享库】
s:进程状态 d= 不可中断的睡眠状态
r= 运行
s= 睡眠
t= 跟踪 / 停止
z= 僵尸进程
5.free -m
=====mem行======
total:内存总量,
used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用
free:未分配的内存
buffers:系统分配但未被使用的buffers 数量
cached:系统分配但未被使用的cache 数量
======buffers/cache行=====
-buffers/cache:mem行中的used - buffers-cached,实际使用的内存总量
buffers/cache: free buffers cached,这就是系统当前实际可用内存。
buffers:主要用来给块设备做的缓冲大小,主要记录文件系统的metadata
cached:用来给文件做缓冲
6.sar
通过sar命令可以查看服务器的各个硬件的实时运转情况。由于显示的一些参数含义与其它命令类似,这里就不一一详细介绍,只重点介绍
几个参数。
(1)sar -d 显示磁盘实时信息
(2)sar -b 查看i/o和传送速率的统计信息
(3)sar -u 显示cpu实时信息
(4)sar -q 查看平均负载
(5)sar -r 查看内存使用情况
(6)sar -n dev 查看网卡流量情况
rxpck/s:每秒钟接收的数据包
txpck/s:每秒钟发送的数据包
rxbyt/s:每秒钟接收的字节数
txbyt/s:每秒钟发送的字节数
rxcmp/s:每秒钟接收的压缩数据包
txcmp/s:每秒钟发送的压缩数据包
rxmcst/s:每秒钟接收的多播数据包