ps:顯示系統當前進程的運行情況
選項與參數(一):
a:所有與終端相關的進程;
x:所有與終端無關的進程;
u:以用戶為中心組織進程狀態信息顯示;
選項與參數(二):
選項與參數(三):
-F:顯示完整格式的進程信息;
C: cpu utilization
PSR:運行于哪顆CPU之上
-H:以層級結構顯示進程的相關信息;
o field1, field2,…:自定義要顯示的字段列表,以逗號分隔;
常用的field:pid, ni, pri, psr, pcpu, stat, comm, tty, ppid, rtprio
ni:nice值;
priority:priority, 優先級;
rtprio:real time priority,實時優先級;
常用的組合方式:
1、ps aux
2、ps -ef
3、ps axo / ps -eo
4、ps -eFH
ps -ef
[root@centos7 ~]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 12月03 ? 00:00:11 /usr/lib/systemd/systemd --switched-root --system --d
root 2 0 0 12月03 ? 00:00:00 [kthreadd]
root 3 2 0 12月03 ? 00:00:00 [ksoftirqd/0]
root 7 2 0 12月03 ? 00:00:00 [migration/0]
root 8 2 0 12月03 ? 00:00:00 [rcu_bh]
UID/PID/PPID:代表該進程的發起者/進程號/父進程號
C:代表CPU的使用百分比
STIME:表示進程的啟動時間
TTY:進程的終端,遠程登錄顯示ptn/n,本地登錄顯示ttyn,?表示系統進程
TIME:進程實際花費CPU的運行時間,不是系統時間
CMD:command的縮寫,觸發此進程的命令
ps aux
[root@centos7 ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 1.3 125952 6760 ? Ss 12月03 0:11 /usr/lib/systemd/systemd --switched
root 2 0.0 0.0 0 0 ? S 12月03 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 12月03 0:00 [ksoftirqd/0]
root 7 0.0 0.0 0 0 ? S 12月03 0:00 [migration/0]
USER:進程的發起者
PID:進程號
%CPU:進程使用掉的CPU資源百分比
%MEM:進程占用的物理內存百分比
VSZ:進程占用的虛擬內存大小,單位為kb
RSS:進程占用的固定內存大小,單位為kb
TTY:進程在哪個終端運行
STAT:進程目前的狀態
START:進程被觸發的時間
TIME:進程實際使用CPU的時間
COMMAND:觸發此進程的命令
top:– display Linux processes
top - 15:42:42 up 1 day, 3 min, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 343 total, 2 running, 341 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.1 sy, 0.0 ni, 99.8 id, 0.1 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 485252 total, 71020 free, 91756 used, 322476 buff/cache
KiB Swap: 524284 total, 523168 free, 1116 used. 336704 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 125952 6760 3908 S 0.0 1.4 0:11.36 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.32 ksoftirqd/0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
第一行:當前系統時間 系統啟動的時間 登錄用戶數 1,5,15分鐘的平均負載
第二行:目前進程的總量與個別程序在什么狀態(running、sleeping、stopped、zombie)。注意zombie的數值,如果不是0需要查看哪個進程處于僵死狀態。
第三行:顯示CPU的整體負載,如果是多核CPU,可以按數字鍵1來切換不同CPU的負載率。
us:user space 用戶運行進程占用的CPU百分比
sy:system(kernel space) 用于運行內核占用CPU百分比
ni:nice 用戶進程空間所改變過優先級的進程占用CPU百分比
id:idle 空閑CPU百分比
wa:等待輸入輸出CPU時間百分比
hi:hardware interrupt 硬鍵中端占用CPU百分比
si:software interrupt 軟鍵中斷占用CPU百分比
st:stolen 被虛擬機“偷走”的百分比
第四行:物理內存的使用情況
第五行:交換分區的使用情況
第六行:空白行,當在top程序中輸入命令時,顯示狀態的地方。
命令:
排序:
P:以占據CPU百分比排序;
M:以占據內存百分比排序;
T:累積占用CPU時間排序;
首部信息:
是否顯示uptime信息:l命令
是否顯示tasks及cpu信息:t命令
是否顯示內存信息:m命令
退出命令:q
修改刷新時間間隔:s
終止指定的進程:k
第七行:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 125952 6760 3908 S 0.0 1.4 0:11.36 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd
PID:進程ID USER:進程使用者
PR:Priority,進程優先級,越小優先級越高
NI:Nice,與Priority有關,越小越早被運行
VIRT:進程需要的虛擬內存大小,而非使用的虛擬內存大小
RES:進程當前使用的內存大小,不包括swap
SHR:進程與其他程序共享的內存大小,可以使用RES-SHR來計算進程所占用的物理內存大小
S:進程的狀態
%CPU:CPU使用率
%MEM:內存的使用率
TIME+:CPU使用時間的累加
top命令支持的選項:
-d #:指定刷新時間間隔,默認為3秒;
-b:batch,以批次方式顯示;
-n #:顯示多少批次。
htop – top命令的增強版,需要epel源來進行安裝
u:選擇顯示指定用戶的進程
l:顯示光標所在進程所打開的文件列表
s:顯示光標所在進程執行的系統調用
t:以層級關系顯示各進程狀態;
a:綁定進程到指定的cpu
#:快速定位光標至PID為#的進程上
htop支持的一些選項:
-d #:延遲時長
-u USERNAME:僅顯示指定用戶的進程
-s COLUMN:根據指定字段進行排序
dstat — dstat 可以實時的看到所有的系統資源

total-cpu-usage:cpu的使用率
dsk/total:磁盤讀寫總數
net/total:網絡設備發送和接受的數據總數
paging:系統的分頁活動
system:顯示中斷(int)和上下文切換(csw)
dstat還支持一些常用的選項:
-c, –cpu:顯示cpu相關信息;
-d, –disk:顯示磁盤的相關信息
-g:顯示page相關的速率數據;
-m:Memory的相關統計數據
-n:Interface的相關統計數據;
-p:顯示process的相關統計數據;
-r:顯示io請求的相關的統計數據;
-s:顯示swapped的相關統計數據;
-l:顯示load average數據
-y:顯示系統相關數據,包括中斷和進程切換
–top-cpu:顯示最占用CPU的進程;
–top-io:最占用io的進程;
–top-mem:最占用內存的進程;
–top-lantency:延遲最大的進程;
–top-bio:最消耗block io的進程
–ipc:顯示進程間通信相關的速率數據
–raw:顯示raw套接的相關數據
–tcp:tcp套接字的相關數據
–udp:udp套接字的相關數據
查看占用內存最高的進程信息
[root@centos7 ~]# dstat -g -l -m -s --top-mem
---paging-- ---load-avg--- ------memory-usage----- ----swap--- --most-expensive-
in out | 1m 5m 15m | used buff cach free| used free| memory process
0 13B| 0 0.01 0.05| 176M 0 235M 63.2M|1116k 511M|tuned 15.0M
0 0 | 0 0.01 0.05| 176M 0 235M 63.1M|1116k 511M|tuned 15.0M
0 0 | 0 0.01 0.05| 176M 0 235M 63.1M|1116k 511M|tuned 15.0M
0 0 | 0 0.01 0.05| 176M 0 235M 63.1M|1116k 511M|tuned 15.0M
查看最占用CPU的進程信息
[root@centos7 ~]# dstat -c -y -l --proc-count --top-cpu
----total-cpu-usage---- ---system-- ---load-avg--- proc -most-expensive-
usr sys idl wai hiq siq| int csw | 1m 5m 15m |tota| cpu process
0 0 100 0 0 0| 17 22 | 0 0.01 0.05| 342|kworker/0:1 0.1
1 1 98 0 0 0| 66 72 | 0 0.01 0.05| 342|kworker/0:1 1.0
3 2 94 0 0 1| 75 66 | 0 0.01 0.05| 342|
2 1 97 0 0 0| 82 74 | 0 0.01 0.05| 342|
3 2 95 0 0 0| 82 74 | 0 0.01 0.05| 342|tuned 3.0
原創文章,作者:N24_ViCi,如若轉載,請注明出處:http://www.www58058.com/62634
進程管理非常的重要的,希望你能非常清晰的理解各選項的意思。