用w查看系统负载
*系统负载表示单位时间内有多少进程在占用cpu
[[email protected] ~]# w
22:23:18 up 3:29, 2 users, load average: 0.00, 0.01, 0.05
USER TTY FROM [email protected] IDLE JCPU PCPU WHAT
root tty1 四19 4days 0.03s 0.03s -bash
root pts/0 192.168.91.1 22:20 6.00s 0.07s 0.05s w
显示的信息包括当前时间,服务器运行时长,当前登录用户数,负载值(分别显示当前1分钟、5分钟、15分钟的系统负载情况);第二行显示用户信息,分别是用户名、用户登录方式、从哪里登录、登录时间、idle是空闲时长
[[email protected] ~]# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 78
model name : Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz
stepping : 3
…
Processor参数显示当前有几颗逻辑cpu,为0则有1颗,为1则有2颗,依次类推,一般理想负载情况应该是所有进程刚好占满所有逻辑cpu,不会有cpu空闲,也没有进程排队等待,所以以上cpu等于1为最理想状态
[[email protected] ~]# uptime
22:47:16 up 3:53, 2 users, load average: 0.00, 0.01, 0.05
显示w的部分信息
Vmstat命令
[[email protected] ~]# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 713056 2076 162796 0 0 9 1 48 48 0 0 100 0 0
Cpu、内存、交换分区、io(磁盘)、系统进程
[[email protected] ~]# vmstat 1 每1秒显示一次
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 713056 2076 162828 0 0 9 1 48 48 0 0 100 0 0
0 0 0 713040 2076 162828 0 0 0 0 44 40 0 0 100 0 0
[[email protected] ~]# vmstat 1 5 每1秒显示1次,显示5次自动结束
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 712528 2076 162828 0 0 9 1 48 48 0 0 100 0 0
0 0 0 712528 2076 162828 0 0 0 0 50 44 0 0 100 0 0
0 0 0 712528 2076 162828 0 0 0 0 53 45 0 1 99 0 0
0 0 0 712528 2076 162828 0 0 0 0 44 36 0 0 100 0 0
0 0 0 712528 2076 162828 0 0 0 0 52 43 0 0 100 0 0
0 0 0 713040 2076 162828 0 0 0 0 56 52 0 0 100 0 0
0 0 0 713040 2076 162828 0 0 0 0 42 40 0 0 1
r:表示当前运行的进程数量,一个时刻只能有一个进程使用cpu,另外的进程处于排队等待状态,只要在排队就属于r状态
b:block,多少被进程以外的资源阻断,如网络卡慢造成进程等待
swpd:在被使用的交换分区大小,该数字不变,说明内存与swap没有数据交换,表示内存够用,若该数字持续变化则说明由于内存不够造成swap与内存频繁交换数据
free
buff
cache
si:若内存与swap频繁交换数据,则si和so也会频繁改变大小,si表示有多少数据从swap进入内存
so:多少数据从内存被交换到swap
bi:bi和bo与磁盘相关,若bi和bo过大表示磁盘在频繁读写,bi表示从磁盘进入内存(读的数据量)
bo:从内存写入磁盘的数据量
us:us、sy、id总和为100%,us表示用户的进程占用cpu资源的百分比,该数字长期大于50则说明系统资源不足
sy:系统本身的进程、服务占用cpu的百分比
id:空闲cpu资源百分比
wa:wait,表示有多少进程在等待cpu
top命令(每3秒动态显示一次)
top - 23:30:14 up 4:36, 2 users, load average: 0.00, 0.01, 0.05
Tasks: 89 total, 1 running, 87 sleeping, 1 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 stKiB Mem : 999696 total, 711756 free, 122800 used, 165140 buff/cache
KiB
Swap: 2097148 total, 2097148 free, 0 used. 701984 avail
Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1681 root 20 0 145700 5208 3932 S 0.3 0.5 0:00.39 sshd 1711 root 20 0 0 0 0 S 0.3 0.0 0:00.39 kworker/0:1
1 root 20 0 128164 6820 4056 S 0.0 0.7 0:01.50 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.61 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
6 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kworker/u256:0 7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh 9 root 20 0 0 0 0 S 0.0 0.0 0:00.56 rcu_sched
10 root rt 0 0 0 0 S 0.0 0.0 0:00.15 watchdog/0 12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
13 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns 14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khungtaskd
15 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 writeback
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kintegrityd
17 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 bioset
18 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kblockd
19 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 md
25 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kswapd0
26 root 25 5 0 0 0 S 0.0 0.0 0:00.00 ksmd
27 root 39 19 0 0 0 S 0.0 0.0 0:00.10 khugepaged
28 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 crypto
36 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kthrotld
37 root 20 0 0 0 0 S 0.0 0.0 0:00.66 kworker/u256:1
38 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kmpath_rdacd
39 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kpsmoused
41 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 ipv6_addrconf
60 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 deferwq
92 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kauditd
232 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 mpt_poll_0
233 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 mpt/0
234 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 ata_sff
*每3秒动态显示一次
第一行:系统负载情况(同w);
第二行:总进程数,正在进程的任务(running同vmstat中的r),sleeping状态的进程(处于休眠状态,未运行),被终止的进程,僵尸进程(主进程被意外终止,留下的子进程) ;
St表示被偷走的cpu资源,通常在虚拟化时虚拟机会借走主机部分cpu资源 ;
Us参数过大表示cpu使用率过高,us长期保持较高的值则cpu长期高负荷运转,可能导致服务器使用寿命大大缩短 ;
Mem:这一行分别表示总内存、空闲内存、被使用的内存以及buff/cache
默认按cpu百分比排序,使用cpu多的进程排在前面;
Mem表示内存,res表示物理内存大小(单位:千字节)
Shift+m可以按内存使用率排序(从高到低)
Shift+p;切换回cpu排序
按数字1可以在查看所有cpu和指定cpu间切换
按字母q退出top显示
Top –c 查看具体进程对应的命令全局路径
top - 00:08:09 up 5:13, 2 users, load average: 0.00, 0.01, 0.05
Tasks: 90 total, 1 running, 87 sleeping, 2 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 999696 total, 710848 free, 123684 used, 165164 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 701076 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 128164 6820 4056 S 0.0 0.7 0:01.52 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [kthreadd]
3 root 20 0 0 0 0 S 0.0 0.0 0:00.71 [ksoftirqd/0]
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [kworker/0:0H]
6 root 20 0 0 0 0 S 0.0 0.0 0:00.01 [kworker/u256:0]
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 [migration/0]
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [rcu_bh]
…
Top –bn1 将所有进程一次全部列出
[[email protected] ~]# top -bn1
top - 00:09:49 up 5:15, 2 users, load average: 0.00, 0.01, 0.05
Tasks: 90 total, 1 running, 87 sleeping, 2 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 999696 total, 710972 free, 123560 used, 165164 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 701200 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 128164 6820 4056 S 0.0 0.7 0:01.52 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.71 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
6 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kworker/u256:0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 S 0.0 0.0 0:00.63 rcu_sched
10 root rt 0 0 0 0 S 0.0 0.0 0:00.18 watchdog/0
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
13 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns
14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khungtaskd
15 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 writeback
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kintegr
Pid:进程的进程号
User:创建进程的用户
使用kill加pid可以杀死特定进程
原文地址:http://blog.51cto.com/12216458/2088805