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= 僵尸进程
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:用来给文件做缓冲
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:每秒钟接收的多播数据包