在运维工做中,w命令是一个最经常使用的命令之一,它能够查看系统当前的负载状况数据库
[root@localhost ~]# w 22:46:57 up 4 min, 1 user, load average: 0.02, 0.08, 0.05 USER TTY LOGIN@ IDLE JCPU PCPU WHAT root pts/0 22:46 1.00s 0.07s 0.02s w
该命令随简单,可是显示出来的内容却颇有用;缓存
cat /proc/cpuinfo
来实现 ,经过查看最后一段信息的processor ,若是是3 ,则为4个。(这里的个数说的不是物理CPU个数,好比机器里面有两个四核CPU,则这个数量就是8)[root@localhost ~]# vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 3565444 692 99364 0 0 22 2 23 27 0 0 99 0 0
使用w命令查看的是系统总体上的负载,没法判断具体是哪些硬件负载压力过大,这就用到了vmstat命令,vmstat显示的内容一共分为6部分,运维
procs 显示进程的相关信息ssh
r(run):表示运行或等待CPU时间片的进程数。该数值若是长期大于CPU核数就意味着CPU不够用了。ui
b(block):表示等待资源的进程数,这里的资源指的是I/O、内存等。好比说有个数据CPU很快处理完了,可是硬盘在频繁的读写当中,该数据等待写入硬盘时,这个进程就是b的状态。该数据长时间大于1就须要找找问题了。code
memory 显示内存的相关信息进程
swpd:表示切换到交换分区中的内存数量,单位为KB。内存
free:表示当前空闲的内存大小。单位KB资源
fuff:表示(即将写入磁盘的)缓冲大小,单位KBio
cache:表示(从磁盘中读取的)缓存大小,单位KB
swap 显示内存的交换状况
si:表示由交换分区写内存的数据量,单位KB
so:表示由内存写入交换分区的数据量,
io显示磁盘的使用状况
bi:表示从块设备读取数据的量(读磁盘)
bo:表示从块设备写入数据的量(写磁盘)
system显示采集间隔内发生的中断次数
in:表示在某一时间间隔内观测到的每秒设备的中断次数
cs:表示每秒产生的上下文切换次数
cpu显示CPU的使用状态
us:显示用户下所花费CPU的时间百分比
sy:显示系统花费CPU的时间百分比
id:表示CPU处于空闲状态的时间百分比
wa:表示I/O等待所占用的CPU时间百分比
st:表示被偷走的CPU所占的百分比(通常为0,不用关注)
vmstat 2 10
意思是每两秒输出一次状态,输出10次。
top命令显示进程所占的系统资源
[root@localhost ~]# top top - 23:35:14 up 52 min, 2 users, load average: 0.00, 0.01, 0.05 Tasks: 360 total, 1 running, 359 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 0.1 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st KiB Mem: 3869044 total, 304728 used, 3564316 free, 692 buffers KiB Swap: 2047996 total, 0 used, 2047996 free. 99664 cached Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2346 root 20 0 133684 4924 3748 S 0.3 0.1 0:00.40 sshd 2433 root 20 0 123880 1868 1184 R 0.3 0.0 0:00.08 top 1 root 20 0 49976 6456 3740 S 0.0 0.2 0:03.34 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kthreadd
top命令执行的结果是动态输出的,它的特色是把占用系统资源最高的进程放到前面。
sar命令很强大,能够监控几乎全部资源的状态,好比平均负载,网卡流量,磁盘状态,内存使用等。它能够输出历史信息,能够截取某个时间段的系统状态信息。若是没有安装该名利,可使用` yum install -y sysstat 安装 。初次运行会报错,是由于还没生成相应的数据库文件。
使用yum install -y epel-release ; yum install -y nload
nload这个包在扩展源里面,须要先安装扩展源。 执行这个命令能够很直观的查看当前网卡的流量状况。