Linux核心系统管理命令

3.1 lsof:查看进程打开的文件

3.1.1 命令详解

功能说明:

lsof全名为list open files,也就是列举系统中已经被打开的文件,通过lsof命令,就可以根据文件找到对应的进程信息,也可以根据进程信息找到进程打开的文件

选项说明:

参数选项解释说明
-c <进程名>显示指定的进程名所打开的文件
-p <进程号>显示指定的进程号所打开的文件
-i通过监听指定的协议,端口和主机等信息,显示符合条件的进程信息
-u显示指定用户使用的文件
-U显示所有socket文件
3.1.2 使用范例

(1)显示使用文件的进程

[root@Mr_chen ~]# lsof /var/log/messages    #显示使用文件的进程
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF   NODE NAME
rsyslogd 870 root    w   REG  253,0   501224 262654 /var/log/messages

如果想知道某个特定的文件是由哪个进程在使用,就可以通过“lsof 文件名”的方式来得到。从上面的输出可以得知,/var/log/messages文件是由rsyslogd进程在使用。
输出中每列的含义具体如下:

  • [x] COMMAND:命令,进程的名称。
  • [x] PID:进程号。
  • [x] USER:进程的所有者。
  • [x] FD:文件描述符,它又包含如下内容
  • 0:表示标准输出。
  • 1:表示标准输入。
  • 2:表示标准错误。
  • u:表示该文件被打开并处于读取/写入模式
  • r:表示该文件被打开并处于只读模式
  • w:表示该文件被打开并处于写入模式
  • [x] TYPE:文件类型,REG(regular)为普通文件
  • [x] DEVICE:指定磁盘的名称。
  • [x] SIZE/OFF:文件的大小
  • [x] NODE:索引节点
  • [x] NAME:文件名称

(2)显示指定进程所打开的文件

[root@Mr_chen ~]# lsof -c rsyslog   #使用-c选项显示指定进程所打开的文件
COMMAND  PID USER   FD   TYPE             DEVICE SIZE/OFF       NODE NAME
rsyslogd 870 root  cwd    DIR              253,0     4096          2 /
rsyslogd 870 root  rtd    DIR              253,0     4096          2 /
rsyslogd 870 root  txt    REG              253,0   396064     130951 /sbin/rsyslogd
rsyslogd 870 root  mem    REG              253,0    27232     393534 /lib64/rsyslog/imklog.so
rsyslogd 870 root  mem    REG              253,0   340568     393540 /lib64/rsyslog/imuxsock.so
rsyslogd 870 root  mem    REG              253,0    65928     392495 /lib64/libnss_files-2.12.so
rsyslogd 870 root  mem    REG              253,0    26984     393541 /lib64/rsyslog/lmnet.so
rsyslogd 870 root  mem    REG              253,0  1921216     392479 /lib64/libc-2.12.so
rsyslogd 870 root  mem    REG              253,0    90880     392452 /lib64/libgcc_s-4.4.7-20120601.so.1
rsyslogd 870 root  mem    REG              253,0    43832     392507 /lib64/librt-2.12.so
rsyslogd 870 root  mem    REG              253,0    19536     392485 /lib64/libdl-2.12.so
rsyslogd 870 root  mem    REG              253,0   142640     392503 /lib64/libpthread-2.12.so
rsyslogd 870 root  mem    REG              253,0    88600     392529 /lib64/libz.so.1.2.3
rsyslogd 870 root  mem    REG              253,0   154520     392472 /lib64/ld-2.12.so
rsyslogd 870 root    0u  unix 0xffff880037d8b6c0      0t0       8910 /dev/log
rsyslogd 870 root    1w   REG              253,0   501224     262654 /var/log/messages
rsyslogd 870 root    2w   REG              253,0     5164     262655 /var/log/secure
rsyslogd 870 root    3r   REG                0,3        0 4026532040 /proc/kmsg
rsyslogd 870 root    4w   REG              253,0    18512     262652 /var/log/cron

(3)显示指定进程号说打开的文件

[root@Mr_chen ~]# lsof -p 870   #使用-p选项显示指定进程号所打开的文件
COMMAND  PID USER   FD   TYPE             DEVICE SIZE/OFF       NODE NAME
rsyslogd 870 root  cwd    DIR              253,0     4096          2 /
rsyslogd 870 root  rtd    DIR              253,0     4096          2 /
rsyslogd 870 root  txt    REG              253,0   396064     130951 /sbin/rsyslogd
rsyslogd 870 root  mem    REG              253,0    27232     393534 /lib64/rsyslog/imklog.so
rsyslogd 870 root  mem    REG              253,0   340568     393540 /lib64/rsyslog/imuxsock.so
rsyslogd 870 root  mem    REG              253,0    65928     392495 /lib64/libnss_files-2.12.so
rsyslogd 870 root  mem    REG              253,0    26984     393541 /lib64/rsyslog/lmnet.so
rsyslogd 870 root  mem    REG              253,0  1921216     392479 /lib64/libc-2.12.so
rsyslogd 870 root  mem    REG              253,0    90880     392452 /lib64/libgcc_s-4.4.7-20120601.so.1
rsyslogd 870 root  mem    REG              253,0    43832     392507 /lib64/librt-2.12.so
rsyslogd 870 root  mem    REG              253,0    19536     392485 /lib64/libdl-2.12.so
rsyslogd 870 root  mem    REG              253,0   142640     392503 /lib64/libpthread-2.12.so
rsyslogd 870 root  mem    REG              253,0    88600     392529 /lib64/libz.so.1.2.3
rsyslogd 870 root  mem    REG              253,0   154520     392472 /lib64/ld-2.12.so
rsyslogd 870 root    0u  unix 0xffff880037d8b6c0      0t0       8910 /dev/log
rsyslogd 870 root    1w   REG              253,0   501224     262654 /var/log/messages
rsyslogd 870 root    2w   REG              253,0     5164     262655 /var/log/secure
rsyslogd 870 root    3r   REG                0,3        0 4026532040 /proc/kmsg
rsyslogd 870 root    4w   REG              253,0    18512     262652 /var/log/cron

(4)监听指定的协议,端口和主机等信息,显示符合条件的进程信息

在讲解范例之前,我们先来看看相应语法格式:
lsof -i [46] [protocol] [@hostname] [:service|port]
其中各项的含义如下:

  • [x] 46:4代表IPv4,6代表IPv6
  • [x] protocol:传输协议,可以是TCP或UDP
  • [x] hostname:主机名称或者IP地址
  • [x] service:进程的服务名,例如NFS,SSH和FTP等
  • [x] port:系统中与服务对应的端口号。例如HTTP服务默认对应的端口号为80,SSH服务默认对应的端口号为22.
[root@Mr_chen ~]# lsof -i   #查看所有进程
COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    885 root    3u  IPv4   8948      0t0  TCP *:ssh (LISTEN)
sshd    885 root    4u  IPv6   8950      0t0  TCP *:ssh (LISTEN)
sshd    918 root    3r  IPv4   9075      0t0  TCP localhost:ssh->localhost:54216 (ESTABLISHED)
[root@Mr_chen ~]# lsof -i tcp   #显示所有tcp网络连接的进程信息
COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    885 root    3u  IPv4   8948      0t0  TCP *:ssh (LISTEN)
sshd    885 root    4u  IPv6   8950      0t0  TCP *:ssh (LISTEN)
sshd    918 root    3r  IPv4   9075      0t0  TCP localhost:ssh->localhost:54216 (ESTABLISHED)
[root@Mr_chen ~]# lsof -i:22    #显示端口为22的进程,这条命令很常用
COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    885 root    3u  IPv4   8948      0t0  TCP *:ssh (LISTEN)
sshd    885 root    4u  IPv6   8950      0t0  TCP *:ssh (LISTEN)
sshd    918 root    3r  IPv4   9075      0t0  TCP localhost:ssh->localhost:54216 (ESTABLISHED)
[root@Mr_chen ~]# lsof -i tcp:22    #显示同时满足TCP和端口为22的进程
COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    885 root    3u  IPv4   8948      0t0  TCP *:ssh (LISTEN)
sshd    885 root    4u  IPv6   8950      0t0  TCP *:ssh (LISTEN)
sshd    918 root    3r  IPv4   9075      0t0  TCP localhost:ssh->localhost:54216 (ESTABLISHED)

(5)显示指定用户使用的文件

[root@Mr_chen ~]# lsof -u Mr_chen   #使用-u选项显示Mr_chen用户使用的文件
COMMAND  PID    USER   FD   TYPE DEVICE SIZE/OFF   NODE NAME
bash    1012 Mr_chen  cwd    DIR  253,0     4096 138686 /home/Mr_chen
bash    1012 Mr_chen  rtd    DIR  253,0     4096      2 /
bash    1012 Mr_chen  txt    REG  253,0   903336 786016 /bin/bash
bash    1012 Mr_chen  mem    REG  253,0 99158576 655748 /usr/lib/locale/locale-archive
bash    1012 Mr_chen  mem    REG  253,0    65928 392495 /lib64/libnss_files-2.12.so
bash    1012 Mr_chen  mem    REG  253,0  1921216 392479 /lib64/libc-2.12.so
bash    1012 Mr_chen  mem    REG  253,0    19536 392485 /lib64/libdl-2.12.so
bash    1012 Mr_chen  mem    REG  253,0   135896 392521 /lib64/libtinfo.so.5.7
bash    1012 Mr_chen  mem    REG  253,0   154520 392472 /lib64/ld-2.12.so
bash    1012 Mr_chen  mem    REG  253,0    26060 916570 /usr/lib64/gconv/gconv-modules.cache
bash    1012 Mr_chen    0u   CHR  136,1      0t0      4 /dev/pts/1
bash    1012 Mr_chen    1u   CHR  136,1      0t0      4 /dev/pts/1
bash    1012 Mr_chen    2u   CHR  136,1      0t0      4 /dev/pts/1
bash    1012 Mr_chen  255u   CHR  136,1      0t0      4 /dev/pts/1

(6)显示所有socket文件

[root@Mr_chen ~]# lsof -U   #使用-U选项显示所有socket文件
COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF  NODE NAME
init        1 root    7u  unix 0xffff880037afa680      0t0  7510 socket
udevd     360 root    4u  unix 0xffff880037afa980      0t0  7857 socket
udevd     360 root    8u  unix 0xffff880037afac80      0t0  7873 socket
udevd     360 root    9u  unix 0xffff880037afa080      0t0  7874 socket
udevd     635 root    9u  unix 0xffff880037afa080      0t0  7874 socket
rsyslogd  870 root    0u  unix 0xffff880037d8b6c0      0t0  8910 /dev/log
crond     893 root    4u  unix 0xffff880037d8b3c0      0t0  8976 socket
sshd      918 root    4w  unix 0xffff880037d8b0c0      0t0  9125 socket
anacron   983 root    4u  unix 0xffff880037d8b9c0      0t0 10018 socket
su       1011 root    3u  unix 0xffff880037d8bcc0      0t0 10151 socket

3.2 free:查看系统内存信息

3.2.1 命令详解

功能说明:

free命令用于显示系统内存状态,具体包括系统物理内存,虚拟内存,共享内存和系统缓存等。

选项说明:

参数选项解释说明(带@的为重点
-b以Byte为单位显示内存的使用情况
-m以MB为单位显示内存的使用情况@
-K以KB为单位显示内存的使用情况
-h以人类可读的形式显示内存的使用情况@
-t显示内存总和列
-s <间隔秒数>根据指定的间隔秒数持续显示内存的使用情况@
-o不显示系统缓冲区列
3.2.2 使用范例

(1)查看系统内存

[root@Mr_chen ~]# free  #不加参数默认显示的是字节数,很难读懂
             total       used       free     shared    buffers     cached
Mem:       1004412      85788     918624          0       6168      22904
-/+ buffers/cache:      56716     947696
Swap:      2031608          0    2031608
[root@Mr_chen ~]# free -m   #使用-m选项,以MB为单位显示内存的使用情况
             total       used       free     shared    buffers     cached
Mem:           980         83        897          0          6         22
-/+ buffers/cache:         55        925
Swap:         1983          0       1983

针对上面的输出,有以下说明

  • [x] Linux系统的特性是将不用的物理内存缓存起来,因此897MB不是系统的真实剩余内存。
  • [x] 系统真正可用的内存为925MB
  • [x] buffers为写入数据缓冲区
  • [x] cache为读取数据缓存区

(2)定时查询内存

[root@Mr_chen ~]# free -s 10    #使用-s选项定时刷新内存的使用情况,单位为秒
             total       used       free     shared    buffers     cached
Mem:       1004412      85888     918524          0       6168      22932
-/+ buffers/cache:      56788     947624
Swap:      2031608          0    2031608

3.3 iftop:动态显示网络接口流量信息

3.3.1 命令详解

功能说明:

  • iftop是一款实时流量监控工具,可用于监控TCP/IP连接等,必须以root用户的身份运行。
  • 一般最小化安装系统都是没有这个命令的,需要使用yum命令额外安装,而且还要从epel源下载。
    epel源的安装帮助请参见:http://mirrors.aliyun.com/help/epel
    安装iftop命令的步骤请参见:
    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
    yum -y install iftop

选项说明:

参数选项解释说明(带@的为重点
-i指定监听的网络接口@
-n不进行DNS解析@
-N不将端口号解析成服务名@
-B以byte为单位显示流量(默认是bit)@
-p设置网卡为混杂模式,以便不直接通过指定接口传递的流量也能被计数
-P(大写)显示端口号@
-m设置界面最上边的刻度的最大值,刻度分为五个大段显示
-F显示特定网段的进出流量
3.3.2 使用范例

(1)不接任何参数启动iftop命令监控流量。

[root@Mr_chen yum.repos.d]# iftop
interface: eth0 #默认监听系统的第一块网卡,可以使用-i选项指定监听网卡
IP address is: 192.168.0.233
MAC address is: 00:0c:29:a8:ca:50

QQ截图20180306231637.png-16.2kB

上图为iftop界面,相关说明如下:

  • [x] 界面上显示的是类似刻度尺的刻度范围,是以标尺的形式显示流量图形的长条
  • [x] 中间的<=或=>这两个左右箭头,表示的是流量的反向
  • [x] TX:发送流量
  • [x] RX:接收流量
  • [x] TOTAL:总流量
  • [x] Cum:运行iftop到目前时间的总流量
  • [x] peak:流量峰值
  • [x] rates:分别表示过去2s,10s,40s的平均流量

(2)常用命令组合

[root@Mr_chen yum.repos.d]# iftop -nNBP
interface: eth0
IP address is: 192.168.0.233
MAC address is: 00:0c:29:a8:ca:50

QQ截图20180306231637.png-17.2kB

命令说明具体如下:

  • [x] -n:不进行DNS解析,显示IP数字地址
  • [x] -N:显示数字形式的端口号
  • [x] -P:显示端口号
  • [x] -B:默认是以bit为单位显示流量,需要经过计算才能符合我们的认知,但是使用-B选项就会直接显示以字节为单位的流量。

3.4 vmstat:虚拟内存统计

3.4.1 命令详解

功能说明:

vmstat是Virtual Memory Statistics(虚拟内存统计)的缩写,利用vmstat命令可以对操作系统的内存信息,进程状态和CPU活动等进行监视。但是只能对系统的整体情况进行统计,无法对某个进程进行深入分析。

选项说明:

参数选项解释说明(带@的为重点
-a显示活跃和非活跃内存
-f显示从系统启动至今的fork进程数量
-m显示slab信息
-n只在开始时显示一次各字段名称
-s显示内存相关统计信息及多种系统活动数量@
-d显示磁盘相关统计信息
-p显示指定磁盘分区统计信息
-S使用指定单位显示。参数有k,K,m,M,分别代表1000,1024,1000000,1048576字节(byte)。默认单位为K(1024byte)
-t统计信息带上时间戳
3.4.2 使用范例

(1)显示虚拟内存的使用情况

[root@Mr_chen ~]# vmstat    #如果省略“间隔时间”和“次数”的参数,则仅显示一次报告后就退出
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 915796   8792  22900    0    0  1188    54  203  474  2  6 90  1  0
 [root@Mr_chen ~]# vmstat 5 #表示每5秒钟更新一次输出信息,循环输出,按Ctrl + C组合键停止输出
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 915796   8792  22928    0    0   343    24   64  144  1  2 97  0  0    
[root@Mr_chen ~]# vmstat 5 6    #表示每5秒钟更新一次输出信息,统计6次后停止输出
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 915796   8792  22928    0    0   781    53  137  316  1  4 94  1  0    

以下是命令结果的详解说明
第1列:procs

  • [x] r列表示运行和等待CPU时间片的进程数。
  • [x] b列表示正在等待资源的进程数。

第2列:memory

  • [x] swpd列表示使用虚拟内存的大小。
  • [x] free列表示当前空闲的物理内存数量.
  • [x] buff列表示buffers的内存数量.
  • [x] cache列表示cache的内存数量.

第3列:swap

  • [x] si(swap in)列表示由磁盘调入内存,也就是内存进入内存交换区的数量。
  • [x] so(swap out)列表示由内存调入磁盘,也就是内存交换区进入内存的数量。

第4列:I/O项显示磁盘读写状况

  • [x] bi列表示从块设备读入数据的总量(即读磁盘)(块/s)
  • [x] bo列表示写入块设备的数据总量(即写磁盘))(块/s)

第5列:system显示采集间隔内发生的中断数

  • [x] in列表示在某一时间间隔中观测到的每秒设备中断数。
  • [x] cs列表示每秒产生的上下文切换次数。

第6列:CPU项显示了CPU的使用状态

  • [x] us列显示了用户进程消耗的CPU时间百分比。
  • [x] sy列显示了系统(内核)进程消耗的CPU时间百分比。
  • [x] id列显示了CPU处在空闲状态的时间百分比。
  • [x] wa列显示了I/O等待所占用的CPU时间百分比
  • [x] st列显示了虚拟机占用的CPU时间的百分比。

(2)显示活跃和非活跃内存

[root@Mr_chen ~]# vmstat -a 2 5
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 915324  19284  18180    0    0     5     0    6    9  0  0 100  0  0   
 0  0      0 915284  19284  18180    0    0     0     0   10    9  0  0 100  0  0   
 0  0      0 915284  19284  18180    0    0     0     0   10   10  0  0 100  0  0   
 0  0      0 915284  19284  18212    0    0     0     0    9   10  0  0 100  0  0   
 0  0      0 915284  19284  18212    0    0     0     0    9   11  0  0 100  0  0   

使用-a选项显示活跃和非活跃内存时,所显示的内容除去增加了inact和active之外,其他显示内容与范例11-12相同。
memory列增加了inact和active两列,其说明具体如下。

  • [x] inact:非活跃的内存大小(当使用-a选项时显示)
  • [x] active:活跃的内存大小(当使用-a选项时显示)

(3)查看内存使用的详细信息

[root@Mr_chen ~]# vmstat -s
      1004412  total memory
        89096  used memory
        18196  active memory
        19268  inactive memory
       915316  free memory
         8816  buffer memory
        23244  swap cache
      2031608  total swap
            0  used swap
      2031608  free swap
......

这些信息分别来自于/proc/meminfo,/proc/stat和/proc/vmstat

(4)查看磁盘的读/写

[root@Mr_chen ~]# vmstat -d
disk- ------------reads------------ ------------writes----------- -----IO------
       total merged sectors      ms  total merged sectors      ms    cur    sec
ram0       0      0       0       0      0      0       0       0      0      0
ram1       0      0       0       0      0      0       0       0      0      0
ram2       0      0       0       0      0      0       0       0      0      0
ram3       0      0       0       0      0      0       0       0      0      0
ram4       0      0       0       0      0      0       0       0      0      0
ram5       0      0       0       0      0      0       0       0      0      0
ram6       0      0       0       0      0      0       0       0      0      0
ram7       0      0       0       0      0      0       0       0      0      0
ram8       0      0       0       0      0      0       0       0      0      0
ram9       0      0       0       0      0      0       0       0      0      0
ram10      0      0       0       0      0      0       0       0      0      0
ram11      0      0       0       0      0      0       0       0      0      0
ram12      0      0       0       0      0      0       0       0      0      0
ram13      0      0       0       0      0      0       0       0      0      0
ram14      0      0       0       0      0      0       0       0      0      0
ram15      0      0       0       0      0      0       0       0      0      0
loop0      0      0       0       0      0      0       0       0      0      0
loop1      0      0       0       0      0      0       0       0      0      0
loop2      0      0       0       0      0      0       0       0      0      0
loop3      0      0       0       0      0      0       0       0      0      0
disk- ------------reads------------ ------------writes----------- -----IO------
       total merged sectors      ms  total merged sectors      ms    cur    sec
loop4      0      0       0       0      0      0       0       0      0      0
loop5      0      0       0       0      0      0       0       0      0      0
loop6      0      0       0       0      0      0       0       0      0      0
loop7      0      0       0       0      0      0       0       0      0      0
sr0       33      0     264      47      0      0       0       0      0      0
sda     2144   1571   70016     659    411    452    6898     277      0      0
dm-0    2786      0   62426    1755    854      0    6832     583      0      0
dm-1     287      0    2296      35      0      0       0       0      0      0

这些信息主要来自于/proc/diskstats。其中的merged表示一次来自于合并的写/读请求,系统一般会把多个连接/邻近的读/写请求合并到一起来操作。

(5)查看/dev/sda1磁盘的读写统计信息

[root@Mr_chen ~]# vmstat -p /dev/sda1
sda1          reads   read sectors  writes    requested writes
                 431       3518          9         66

这些信息主要来自于/proc/diskstats。各列的说明具体如下

  • [x] reads:来自于该分区的读的次数
  • [x] read sectors:来自于该分区的读扇区的次数
  • [x] writes:来自于该分区的写的次数
  • [x] requested writes:来自于该分区的写请求次数。

3.5 mpstat:CPU信息统计

3.5.1 命令详解

功能说明:

  • mpstat是Multiprocessor Statistics的缩写,是一种实时系统监控工具。mpstat命令会输出CPU的一些统计信息,这些信息存放在/proc/stat文件中。在多CPU的系统里,此命令不但能用来查看所有CPU的平均状态信息,而且还能够用来查看特定CPU的信息。
    mpstat命令的最大特点是:可以查看多核心CPU中每个计算核心的统计数据,而类似命令vmstat只能查看系统整体的CPU情况。

选项说明:

参数选项解释说明
-P指定CPU编号,例如:-P 0表示第一个CPU,-P 1表示第二个CPU,-P ALL表示所有CPU
3.5.2 使用范例

(1)显示CPU信息统计

[root@Mr_chen ~]# mpstat    #如果省略“时间间隔”和“次数”参数,则仅显示一次报告后就退出
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

06:13:34 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
06:13:34 PM  all    0.01    0.00    0.06    0.01    0.00    0.00    0.00    0.00   99.93
[root@Mr_chen ~]# mpstat 5 6    #表示每5秒更新一次输出信息,统计6次后停止输出。
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

06:15:16 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
06:15:21 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
06:15:26 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
06:15:31 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
06:15:36 PM  all    0.00    0.00    0.20    0.00    0.00    0.00    0.00    0.00   99.80
06:15:41 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
06:15:46 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
Average:     all    0.00    0.00    0.03    0.00    0.00    0.00    0.00    0.00   99.97

以下是命令结果的详细说明
第1列:06:13:34 PM,表示当前时间
第2列:CPU,all表示所有CPU,0表示第一个CPU...
后面9列的含义分别如下:

  • [x] %usr:用户进程消耗的CPU时间百分比。
  • [x] %nice:改变过优先级的进程占用的CPU时间百分比
  • [x] %sys:系统(内核)进程消耗的CPU时间百分比
  • [x] %iowait:IO等待所占用的CPU时间百分比
  • [x] %irq:硬中断占用的CPU时间百分比
  • [x] %soft:软中断占用的CPU时间百分比
  • [x] %steal:虚拟机强制CPU等待的时间百分比
  • [x] %guest:虚拟机占用CPU时间的百分比
  • [x] %idle:CPU处于空闲状态的时间百分比

(2)显示指定CPU信息的统计

[root@Mr_chen ~]# mpstat -P 0   #显示第一个CPU信息
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

06:29:46 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
06:29:46 PM    0    0.01    0.00    0.05    0.01    0.00    0.00    0.00    0.00   99.93

3.6 iostat:I/O信息统计

3.6.1 命令详解

功能说明:

iostat是I/O statistics(输入/输出统计)的缩写,其主要功能是对系统的磁盘I/O操作进行监视。它的输出主要是显示磁盘读写操作的统计信息,同时也会给出CPU的使用情况。同vmstat命令一样,iostat命令也不能对某个进程进行深入分析,仅会对系统的整体情况进行分析。

选项说明:

参数选项解释说明(带@为重点
-c显示CPU的使用情况@
-d显示磁盘的使用情况@
-k每秒以kB为单位显示数据
-m每秒以MB为单位显示数据
-n显示NFS的使用情况
-t显示每次统计的执行时间
-p device指定要统计的磁盘设备名称,默认为所有的磁盘设备
-x显示扩展统计
3.6.2 使用范例

(1)显示所有设备的负载情况

[root@Mr_chen ~]# iostat    #如果省略“时间间隔”和“次数”参数,则仅显示一次报告后就退出
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.02    0.00    0.05    0.01    0.00   99.93

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.02         0.13         0.00       1976          0
sda               0.34        28.21         7.76     445866     122724
dm-0              1.30        27.73         7.76     438306     122664
dm-1              0.02         0.15         0.00       2296          0

以下是命令结果说明
第1~2行中各列的含义具体如下

  • [x] %user : 用户进程消耗的CPU时间百分比
  • [x] %nice : 改变过优先级的进程占用的CPU时间百分比
  • [x] %system : 系统(内核)进程消耗的CPU时间百分比
  • [x] %iowait : IO等待所占用的CPU时间百分比
  • [x] %steal : 虚拟机强制CPU等待的时间百分比
  • [x] %idle : CPU处在空闲状态的时间百分比
    第3~4行中各列的含义如下

  • [x] tps : 表示该设备每秒的传输次数,“一次传输”的意思是“一次I/O请求”,多个逻辑请求可能会被合并为“一次I/O请求”,“一次传输”请求的大小是未知的。
  • [x] Blk_read/s : 表示每秒读取的数据块数
  • [x] Blk_wrtn/s : 表示每秒写入的数据块数
  • [x] Blk_read : 表示读取的所有块数
  • [x] Blk_wrtn : 表示写入的所有块数

(2)定时显示所有信息

[root@Mr_chen ~]#  iostat 2 3   #每隔2秒刷新显示一次,共显示3次
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.01    0.00    0.04    0.00    0.00   99.94

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.02         0.09         0.00       1976          0
sda               0.25        19.82         5.51     445866     123988
dm-0              0.92        19.48         5.51     438306     123928
dm-1              0.01         0.10         0.00       2296          0

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00    0.00    0.00    0.00  100.00

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.00         0.00         0.00          0          0
sda               0.00         0.00         0.00          0          0
dm-0              0.00         0.00         0.00          0          0
dm-1              0.00         0.00         0.00          0          0

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00    0.50    0.00    0.00   99.50

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.00         0.00         0.00          0          0
sda               0.00         0.00         0.00          0          0
dm-0              0.00         0.00         0.00          0          0
dm-1              0.00         0.00         0.00          0          0

(3)只显示磁盘统计信息

[root@Mr_chen ~]# iostat -d #选项-d只显示磁盘的统计信息
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.02         0.09         0.00       1976          0
sda               0.24        19.50         5.43     445866     124108
dm-0              0.91        19.17         5.42     438306     124048
dm-1              0.01         0.10         0.00       2296          0
[root@Mr_chen ~]# iostat -d -k  #选项-k以KB为单位显示数据
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
scd0              0.02         0.04         0.00        988          0
sda               0.24         9.72         2.70     222933      62054
dm-0              0.91         9.55         2.70     219153      62024
dm-1              0.01         0.05         0.00       1148          0
[root@Mr_chen ~]# iostat -d -m  #选项-m以MB为单位显示数据
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

Device:            tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
scd0              0.02         0.00         0.00          0          0
sda               0.24         0.01         0.00        217         60
dm-0              0.90         0.01         0.00        214         60
dm-1              0.01         0.00         0.00          1          0

(4)查看扩展信息

[root@Mr_chen ~]# iostat -d -x -k   #选项-x显示扩展信息
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
scd0              0.00     0.00    0.02    0.00     0.04     0.00     5.41     0.00    1.09   1.09   0.00
sda               0.08     0.61    0.18    0.05     9.49     2.65   102.62     0.00    0.79   0.42   0.01
dm-0              0.00     0.00    0.22    0.66     9.33     2.65    27.03     0.01    6.17   0.11   0.01
dm-1              0.00     0.00    0.01    0.00     0.05     0.00     8.00     0.00    0.24   0.13   0.00

以下是命令结果说明

  • [x] rrqm/s:每秒进行merge的读操作数目
  • [x] wrqm/s:每秒进行merge的写操作数目
  • [x] r/s:每秒完成的读I/O设备次数
  • [x] w/s:每秒完成的写I/O设备次数
  • [x] rkB/s:每秒读入的千字节数
  • [x] wkB/s:每秒写入的千字节数
  • [x] avgrq-sz:设备平均每次进行I/O操作的数据大小(扇区)
  • [x] avgqu-sz:平均I/O队列长度
  • [x] await:设备平均每次I/O操作的等待时间(毫秒)
  • [x] svctm:设备平均每次I/O操作的服务时间(毫秒)
  • [x] %util:每秒钟用于I/O操作的百分比

(5)只查看CPU的统计信息

[root@Mr_chen ~]# iostat -c #使用-c选项只显示系统CPU的统计信息
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.01    0.00    0.04    0.00    0.00   99.95

3.7 iotop:动态显示磁盘I/O统计信息

3.7.1 命令详解

功能说明:

iotop命令是一款实时监控磁盘I/O的工具,但必须以root用户的身份运行。使用iotop命令可以很方便地查看每个进程使用磁盘I/O的情况。
最小化安装系统一般是没有这个命令的,需要使用yum命令额外安装,安装命令如下:yum -y install iotop

选项说明:

参数选项解释说明(带@为重点
-o显示正在使用I/O的进程或者线程,默认是显示所有@
-d设置显示的间隔秒数
-p只显示指定PID的信息@
-u显示指定用户的信息
-P(大写)只显示进程,一般是显示所有的线程
-a显示从iotop启动后每个线程完成了的I/O总数
-k设置显示单位为KB
-t在每一行前添加一个当前的时间
3.7.2 使用范例

(1)不接任何参数启动iotop命令

[root@Mr_chen ~]# iotop     

Total DISK READ: 0.00 B/s | Total DISK WRITE: 0.00 B/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND                                                                      
    1 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % init
    2 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kthreadd]
    3 rt/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [migration/0]
    4 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [ksoftirqd/0]
    5 rt/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [migration/0]
    6 rt/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [watchdog/0]
    7 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [events/0]
    8 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [cgroup]
    9 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [khelper]
   10 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [netns]
   11 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [async/mgr]
   12 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [pm]
   13 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [sync_supers]
   14 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [bdi-default]
   15 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kintegrityd/0]
   16 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kblockd/0]
   17 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kacpid]
   18 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kacpi_notify]
   19 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kacpi_hotplug]
   20 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [ata_aux]
   21 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [ata_sff/0]
   22 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [ksuspend_usbd]
   23 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [khubd]
   24 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kseriod]

以下是命令结果的具体说明

  • [x] Total DISK READ:总的磁盘读取速度
  • [x] Total DISK WRITE:总的磁盘写入速度
  • [x] TID:进程pid值
  • [x] PRIO:优先级
  • [x] USER:用户
  • [x] DISK READ:磁盘读取速度
  • [x] DISK WRITE:磁盘写入速度
  • [x] SWAPIN:从swap分区读取数据占用的百分比
  • [x] IO:I/O占用的百分比
  • [x] COMMAND:消耗I/O的进程名

3.8 sar:收集系统信息

3.8.1 命令详解

功能说明:

通过sar命令,可以全面地获取系统的CPU,运行队列,磁盘I/O,分页(交换区),内存,CPU中断和网络等性能数据

选项说明:

参数选项解释说明(带@的为重点
-A显示系统所有资源设备(CPU,内存,磁盘)的运行状态
-u显示系统所有CPU在采样时间内的负载状态@
-P显示当前系统中指定CPU的使用情况
-d显示系统所有硬盘设备在采样时间内的使用状况@
-r显示在采样时间内系统内存的使用状况@
-b显示在采样时间内缓冲区的使用情况@
-v显示索引节点,文件和其他内核表的状态
-n显示网络运行状态@
-q显示运行队列的大小,它与系统当时的平均负载相同@
-R显示进程在采样时间内的活动情况
-y显示终端设备在采样时间内的活动情况
-w显示系统交换活动在采样时间内的状态
-o filename将命令结果以二进制格式存放在文件中,filename是文件名
3.8.2 使用范例

(1)查看系统CPU的整体负载情况

[root@Mr_chen ~]# sar -u 2 3
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/10/2018  _x86_64_    (1 CPU)

11:44:34 PM     CPU     %user     %nice   %system   %iowait    %steal     %idle
11:44:36 PM     all      0.00      0.00      1.00      0.00      0.00     99.00
11:44:38 PM     all      0.00      0.00      0.50      0.00      0.00     99.50
11:44:40 PM     all      0.00      0.00      0.00      0.00      0.00    100.00
Average:        all      0.00      0.00      0.50      0.00      0.00     99.50

以下是命令结果的详细说明

  • [x] %user:用户进程消耗的CPU时间百分比
  • [x] %nice:改变过优先级的进程占用的CPU时间百分比
  • [x] %system:系统(内核)进程消耗的CPU时间百分比
  • [x] %iowait:IO等待所占用的CPU时间百分比
  • [x] steal:虚拟机强制CPU等待的时间百分比
  • [x] idle:CPU处在空闲状态的时间百分比

(2)显示运行队列的大小

[root@localhost ~]# sar -q 2 3  #使用-q选项显示运行队列的大小
Linux 2.6.32-431.el6.x86_64 (localhost)     03/14/2018  _x86_64_    (1 CPU)

04:59:18 PM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
04:59:20 PM         0        69      0.00      0.00      0.00
04:59:22 PM         0        69      0.00      0.00      0.00
04:59:24 PM         0        70      0.00      0.00      0.00
Average:            0        69      0.00      0.00      0.00

以下是命令结果的详解说明

  • [x] runq-sz:运行队列的长度(等待运行的进程数)
  • [x] plist-sz:进程列表中进程(process)和线程(thread)的数量
  • [x] ldavg-1:最后一分钟的系统平均负载(system load average)
  • [x] ldavg-5:过去5分钟的系统平均负载
  • [x] ldavg-15:过去15分钟的系统平均负载

(3)显示系统内存的使用状况

[root@localhost ~]# sar -r 2 3  #使用-r选项显示系统内存在采样时间内的使用状况
Linux 2.6.32-431.el6.x86_64 (localhost)     03/14/2018  _x86_64_    (1 CPU)

05:03:44 PM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit
05:03:46 PM    913012     91400      9.10     11136     23324     43344      1.43
05:03:48 PM    913012     91400      9.10     11136     23324     43344      1.43
05:03:50 PM    913012     91400      9.10     11136     23324     43344      1.43
Average:       913012     91400      9.10     11136     23324     43344      1.43

以下命令结果的详细说明

  • [x] kbmemfree:空闲物理内存量
  • [x] kbmemused:使用中的物理内存量
  • [x] %memused:物理内存量的使用率
  • [x] kbbuffers:内核中作为缓冲区使用的物理内存容量
  • [x] kbcached:内核中作为缓存使用的物理内存容量
  • [x] kbcommit:应用程序当前使用的内存大小
  • [x] %commit:应用程序当前使用的内存大小占总大小的使用百分比

(4)显示缓冲区的使用情况

[root@localhost ~]# sar -b 2 3  #使用-b选项显示缓冲区在采样时间内的使用情况
Linux 2.6.32-431.el6.x86_64 (localhost)     03/14/2018  _x86_64_    (1 CPU)

05:15:01 PM       tps      rtps      wtps   bread/s   bwrtn/s
05:15:03 PM      0.00      0.00      0.00      0.00      0.00
05:15:05 PM      0.00      0.00      0.00      0.00      0.00
05:15:07 PM      0.00      0.00      0.00      0.00      0.00
Average:         0.00      0.00      0.00      0.00      0.00

以下是命令的详细结果说明

  • [x] tps:每秒钟物理设备的I/O传输总量
  • [x] rtps:每秒钟从物理设备读入的数据总量
  • [x] wtps:每秒钟向物理设备写入的数据总量
  • [x] bread/s:每秒钟从物理设备读入的数据量,单位为块/s
  • [x] bwrtn/s:每秒钟向物理设备写入的数据量,单位为块/s

(5)显示网络的运行状态

我们先来看一下显示网络接口信息的命令

[root@localhost ~]# sar -n DEV 2 3  #使用-n DEV显示网络接口的信息
Linux 2.6.32-431.el6.x86_64 (localhost)     03/14/2018  _x86_64_    (1 CPU)

05:22:13 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
05:22:15 PM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:22:15 PM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:22:15 PM      eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00

05:22:15 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
05:22:17 PM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:22:17 PM      eth0      0.50      0.50      0.03      0.24      0.00      0.00      0.00
05:22:17 PM      eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00

05:22:17 PM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
05:22:19 PM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:22:19 PM      eth0      0.50      0.50      0.03      0.24      0.00      0.00      0.00
05:22:19 PM      eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00

Average:        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth0      0.33      0.33      0.02      0.16      0.00      0.00      0.00
Average:         eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00

以下是命令结果的详细说明

  • [x] IFACE:网络接口
  • [x] rxpck/s:每秒钟接收的数据包
  • [x] txpck/s:每秒钟发送的数据包
  • [x] rxkB/s:每秒钟接收的字节数
  • [x] txkB/s:每秒钟发送的字节数
  • [x] rxcmp/s:每秒钟接收的压缩数据包
  • [x] txcmp/s:每秒钟发送的压缩数据包
  • [x] rxmcst/s:每秒钟接收的多播数据包

下面的命令用来显示网络错误的统计数据

[root@localhost ~]# sar -n EDEV 2 3 #使用-n EDEV显示网络错误的统计数据
Linux 2.6.32-431.el6.x86_64 (localhost)     03/14/2018  _x86_64_    (1 CPU)

05:32:03 PM     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
05:32:05 PM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:32:05 PM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:32:05 PM      eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

05:32:05 PM     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
05:32:07 PM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:32:07 PM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:32:07 PM      eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

05:32:07 PM     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
05:32:09 PM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:32:09 PM      eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:32:09 PM      eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

Average:        IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:         eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

以下是命令结果的详细说明

  • [x] IFACE:网络接口
  • [x] rxerr/s:每秒钟接收的坏数据包
  • [x] txerr/s:每秒钟发送的坏数据包
  • [x] coll/s:每秒的冲突数
  • [x] rxdrop/s:因为缓冲充满,每秒钟丢弃的已接收数据包数
  • [x] txdrop/s:因为缓冲充满,每秒钟丢弃的已发送数据包数
  • [x] txcarr/s:发送数据包时,每秒载波错误数
  • [x] rxfram/s:每秒接收数据包的帧对齐错误数
  • [x] rxfifo/s:接收的数据包每秒FIFO过速的错误数
  • [x] txfifo/s:发送的数据包每秒FIFO过速的错误数

下面的命令用于显示套接字信息

[root@Mr_chen ~]# sar -n SOCK 2 3   #使用-n SOCK显示套接字信息
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/14/2018  _x86_64_    (1 CPU)

05:42:12 PM    totsck    tcpsck    udpsck    rawsck   ip-frag    tcp-tw
05:42:14 PM       281         2         0         0         0         0
05:42:16 PM       281         2         0         0         0         0
05:42:18 PM       281         2         0         0         0         0
Average:          281         2         0         0         0         0

以下是命令结果的详细说明

  • [x] totsck:使用的套接字总数量
  • [x] tcpsck:使用的TCP套接字数量
  • [x] udpsck:使用的UDP套接字数量
  • [x] rawsck:使用的raw套接字数量
  • [x] ip-frag:使用的IP段数量
  • [x] tcp-tw:处于TIME_WAIT状态的TCP套接字数量

(6)查看系统磁盘的读写性能

[root@Mr_chen ~]# sar -d 2 3    #使用-d选项显示系统所有硬盘设备在采样时间内的使用状况
Linux 2.6.32-431.el6.x86_64 (Mr_chen)   03/14/2018  _x86_64_    (1 CPU)

05:47:59 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
05:48:01 PM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:01 PM    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:01 PM  dev253-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:01 PM  dev253-1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

05:48:01 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
05:48:03 PM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:03 PM    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:03 PM  dev253-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:03 PM  dev253-1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

05:48:03 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
05:48:05 PM   dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:05 PM    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:05 PM  dev253-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
05:48:05 PM  dev253-1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

Average:          DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
Average:      dev11-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:       dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:     dev253-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:     dev253-1      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

以下是命令结果的详细说明

  • [x] DEV:表示磁盘的设备名称
  • [x] tps:表示该设备每秒的传输次数,“一次传输”的意思是“一次I/O请求”,多个逻辑请求可能会被合并为“一次I/O请求”,“一次传输”请求的大小是未知的。
  • [x] rd_sec/s:表示每秒从设备读取的扇区数
  • [x] wr_sec/s:表示每秒写入设备的扇区数目
  • [x] avgrq-sz:设备平均每次I/O操作的数据大小(扇区)
  • [x] avgqu-sz:平均I/O队列长度
  • [x] await:设备平均每次I/O操作的等待时间(毫秒)
  • [x] svctm:设备平均每次I/O操作的服务时间(毫秒)
  • [x] %util:每秒钟用于I/O操作的百分比



本文出处:https://www.cnblogs.com/chensiqiqi/p/9163094.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值