3.20 10.1-10.5聽課筆記
*系統負載表示單位時間內有多少進程在占用cpu
[root@localhost ~]# w
22:23:18 up 3:29, 2 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ 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
顯示的信息包括當前時間,服務器運行時長,當前登錄用戶數,負載值(分別顯示當前
[root@localhost ~]# 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顆,依次類推,一般理想負載情況應該是所有進程剛好占滿所有邏輯
[root@localhost ~]# uptime
22:47:16 up 3:53, 2 users, load average: 0.00, 0.01, 0.05
顯示w的部分信息
Vmstat命令
[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
2 0 0 713056 2076 162796 0 0 9 1 48 48 0 0 100 0 0
Cpu、內存、交換分區、io(磁盤)、系統進程
[root@localhost ~]# 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
[root@localhost ~]# 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 將所有進程一次全部列出
[root@localhost ~]# 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可以殺死特定進程
3.20 10.1-10.5聽課筆記