在命令行方式下,如何查看CPU、内存的使用情况,网络流量和磁盘I/O?
 Q: 在命令行方式下,如何查看CPU、内存的使用情况,网络流量和磁盘I/O?
 A: 在命令行方式下,
  1. 查看CPU使用情况的命令
  每5秒刷新一次,最右侧有CPU的占用率的数据
  $ vmstat 5
  top 然后按Shift+P,按照进程处理器占用率排序
  $ top
 
  2. 查看内存使用情况的命令
  用free命令查看内存占用情况
  $ free
  top 然后按Shift+M, 按照进程内存占用率排序
  $ top
 
  3. 查看网络流量
  可以用工具iptraf工具
  $ iptraf -g

  4. 查看磁盘i/o
  用iostat查看磁盘/dev/sdc3的磁盘i/o情况,每两秒刷新一次
  $ iostat -d -x /dev/sdc3 2
  用vmstat查看io部分的信息
  $ vmstat 2
   
安装iptraf包
rpm -Uvh iptraf-3.0.0-13.2.x86_64.rpm
安装sysstat包
rpm -Uvh sysstat-8.0.4-1.4.x86_64.rpm

# sar -n DEV -u 1 10 
看看当前网络流量 

命令

# iostat -t 1 10 
看看当前硬盘读写速度

#sar -n DEV -u -b 2 10000
看看当前CPU、网络流量 

sysstat这个工具,是linux &Unix下的常用工具。它的主要用途就是观察服务负载,比如CPU和内存的占用率、网络的使用率以及磁盘写入和读取速度等。
 
       在suse linux 10 下不能直接使用sar命令,需要安装sysstat的rpm包才可以。安装完后就会有iostat、mpstat、sar的功能。
 
启动sysstat
 
/etc/init.d/sysstat start
 
设置sysstat自启动
 
#checkfig sysstat on
 
具体用法和参数如下:
 1、sar -u 1 5
 
输出CPU使用情况的统计信息,每秒输出一次,一共输出5次
 
17时06分01秒       CPU     %user     %nice   %system   %iowait     %idle
 
17时06分02秒       all      1.27      0.00      0.51      1.01     97.22
 
17时06分03秒       all      0.00      0.00      0.00      0.00    100.00
 
17时06分04秒       all      0.00      0.00      0.00      0.00    100.00
 
17时06分05秒       all      0.25      0.00      0.00      0.00     99.75
 
17时06分06秒       all      0.00      0.00      0.00      0.51     99.49
 
Average:          all      0.30      0.00      0.10      0.30     99.29
 
CPU      all 表示统计信息为所有 CPU 的平均值。
 
%user    显示在用户级别(application)运行使用 CPU 总时间的百分比。
 
%nice    显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。
 
%system 在核心级别(kernel)运行所使用 CPU 总时间的百分比。
 
%iowait 显示用于等待I/O操作占用 CPU 总时间的百分比。
 
%steal   管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。
 
%idle    显示 CPU 空闲时间占用 CPU 总时间的百分比。
 
tips:
 
若 %iowait 的值过高,表示硬盘存在I/O瓶颈
 
若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量
 
若 %idle 的值持续低于 10,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU。
 
2、sar -b 1 5
 
显示I/O和传送速率的统计信息
 
17时09分07秒       tps      rtps      wtps   bread/s   bwrtn/s
 
17时09分08秒      3.12      3.12      0.00     25.00      0.00
 
17时09分09秒     89.58      6.25     83.33    141.67    733.33
 
17时09分10秒     42.71      9.38     33.33    141.67    600.00
 
17时09分11秒      2.11      2.11      0.00     16.84      0.00
 
17时09分12秒      1.04      0.00      1.04      0.00    175.00
 
Average:        27.77      4.18     23.59     65.14    302.30
 
tps     每秒钟物理设备的 I/O 传输总量
 
rtps    每秒钟从物理设备读入的数据总量
 
wtps    每秒钟向物理设备写入的数据总量
 
bread/s 每秒钟从物理设备读入的数据量,单位为 块/s
 
bwrtn/s 每秒钟向物理设备写入的数据量,单位为 块/s
 
3、sar -c
 
每秒钟创建的进程数
 
15时10分01秒      1.35
 
15时20分01秒      1.01
 
15时30分01秒      0.59
 
15时40分01秒      1.35
 
15时50分01秒      0.99
 
16时00分01秒      0.57
 
16时10分01秒      1.33
 
16时20分01秒      1.02
 
16时30分01秒      0.57
 
16时40分01秒      1.33
 
16时50分01秒      1.07
 
17时00分01秒      0.56
 
17时10分01秒      1.32
 
4、sar -n DEV 1 5
 
输出网络设备状态的统计信息
 
17时13分42秒     IFACE   rxpck/s   txpck/s   rxbyt/s   txbyt/s   rxcmp/s   txcmp/s rxmcst/s
 
17时13分43秒      eth1   3669.70   4156.57 368362.63 2747714.14      0.00      0.00      0.00
 
17时13分44秒      eth1   2689.11   2585.15 289661.39 701461.39      0.00      0.00      0.00
 
17时13分45秒      eth1   3746.00   4077.00 415178.00 2605720.00      0.00      0.00      0.00
 
17时13分46秒      eth1   3096.00   3241.00 327916.00 1597320.00      0.00      0.00      0.00
 
17时13分47秒      eth1   2910.00   2834.00 312632.00 957903.00      0.00      0.00      0.00
 
Average:         eth1   3220.20   3375.60 342592.60 1717931.20      0.00      0.00      0.00
 
IFACE      网络设备名
 
rxpck/s    每秒接收的包总数
 
txpck/s    每秒传输的包总数
 
rxbyt/s    每秒接收的字节(byte)总数
 
txbyt/s    每秒传输的字节(byte)总数
 
rxcmp/s    每秒接收压缩包的总数
 
txcmp/s    每秒传输压缩包的总数
 
rxmcst/s   每秒接收的多播(multicast)包的总数
 
5、sar -q 1 5
 
输出进程队列长度和平均负载状态统计信息
 
17时16分28秒   runq-sz plist-sz   ldavg-1   ldavg-5 ldavg-15
 
17时16分29秒         0       160      0.26      0.11      0.03
 
17时16分30秒         0       160      0.26      0.11      0.03
 
17时16分31秒         0       160      0.24      0.11      0.03
 
17时16分32秒         0       160      0.24      0.11      0.03
 
17时16分33秒         0       160      0.24      0.11      0.03
 
Average:            0       160      0.25      0.11      0.03
 
runq-sz   运行队列的长度(等待运行的进程数)
 
plist-sz 进程列表中进程(processes)和线程(threads)的数量
 
ldavg-1   最后1分钟的系统平均负载(System load average)
 
ldavg-5   过去5分钟的系统平均负载
 
ldavg-15 过去15分钟的系统平均负载
 
6、sar -r
 
输出内存和交换空间的统计信息
 
7、iostat(加-p参数可查看具体磁盘分区的读写情况)
 
tps 每秒钟物理设备的 I/O 传输总 量。
 
Blk_read 读入的数据总量,单位为 块。
 
Blk_wrtn 写入的数据总量,单位为 块。
 
kB_read 读入的数据总量,单位为 KB。
 
kB_wrtn 写入的数据总量,单位为 KB。
 
MB_read 读入的数据总量,单位为 MB。
 
MB_wrtn 写入的数据总量,单位为 MB。
 
Blk_read/s 每秒从驱动器读入的数据量,单位为 块 /s。
 
Blk_wrtn/s 每秒向驱动器写入的数据量,单位为 块 /s。
 
kB_read/s 每秒从驱动器读入的数据量,单位为 KB/s。
 
kB_wrtn/s 每秒向驱动器写入的数据量,单位为 KB/s。
 
MB_read/s 每秒从驱动器读入的数据量,单位为 MB/s。
 
MB_wrtn/s 每秒向驱动器写入的数据量,单位为MB/s。
 
rrqm/s 将读入请求合并后,每秒发送到设备的读入请求数。
 
wrqm/s 将写入请求合并后,每秒发送到设备的写入请求数。
 
r/s 每秒发送到设备的读入请求 数。
 
w/s 每秒发送到设备的写入请求 数。
 
rsec/s 每秒从设备读入的扇区 数。
 
wsec/s 每秒向设备写入的扇区 数。
 
rkB/s 每秒从设备读入的数据量,单位为 KB/s。
 
wkB/s 每秒向设备写入的数据量,单位为 KB/s。
 
rMB/s 每秒从设备读入的数据量,单位为 MB/s。
 
wMB/s 每秒向设备写入的数据量,单位为 MB/s。
 
avgrq-sz 发送到设备的请求的平均大小,单位为扇 区。
 
avgqu-sz 发送到设备的请求的平均队列长 度。
 
await I/O请求平均执行时间。包括发送请求和执行的时间。单位为毫 秒。
 
svctm 发送到设备的I/O请求的平均执行时间。单位为毫 秒。
 
%util 在I/O请求发送到设备期间,占用CPU时间的百分比。用于显示设备的带宽利用率。当这个值接近100%时,表示设备带宽已经占满。