史上最詳細 CentOS 進程相關指令
系列文章目錄
保姆級別 VMware Workstation 16 Pro 最新安裝教程
VMware 安裝CentOS 保姆級別教程
一文學會CentOS 文件常用命令
一文學會CentOS文件常用命令之二
史上最詳細 CentOS 進程相關指令
如果本文對你們的開發之路有所幫助,請幫忙點個贊,您的支持是我堅持寫博客的動力
前言
上兩篇文章詳細講解了CentOS系統最常見的文件相關命令,本文將手把手教大家熟悉CentOS 進程相關指令
首先熟悉下Linux 進程的五種狀態
Linux 進程狀態
運行:正在運行或在運行隊列中等待
中斷:休眠中, 受阻, 在等待某個條件的形成或接受到信號
不可中斷:收到信號不喚醒和不可運行, 進程必須等待直到有中斷發生
僵死:進程已終止, 但進程描述符存在, 直到父進程調用wait4()系統調用后釋放
停止:進程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信號后停止運行
開發中進程相關指令
ps 命令
概念
ps 直譯為Process Status,用來顯示系統中當前運行的進程的快照,故 ps 只提供了進程的一次性查看
命令格式
ps [命令參數]
命令參數 ? ?含義
a ? ?顯示跟當前終端關聯的所有進程,包括其他用戶的程序
u ? ?基于用戶的格式顯示
x ? ?顯示所有進程
c ? ?顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務
e ? ?顯示每個程序所使用的環境變量
-H ? ?顯示樹狀結構,表示程序間的相互關系
-l ? ?詳細顯示進程信息
ps 命令應用
[root@jany ~]# ps -aux |more
USER ? ? ? ?PID %CPU %MEM ? ?VSZ ? RSS TTY ? ? ?STAT START ? TIME COMMAND
root ? ? ? ? ?1 ?0.0 ?0.0 125768 ?2688 ? ? ? ? ?Ss ? 07:35 ? 0:15 /usr/lib/systemd/systemd --switched-root --system --deseria
lize 22
root ? ? ? ? ?2 ?0.0 ?0.0 ? ? ?0 ? ? 0 ? ? ? ? ?S ? ?07:35 ? 0:00 [kthreadd]
root ? ? ? ? ?4 ?0.0 ?0.0 ? ? ?0 ? ? 0 ? ? ? ? ?S< ? 07:35 ? 0:00 [kworker/0:0H]
ps -aux 列名解釋
參數 ? ?含義
USER ? ?進程的屬主
PID ? ?進程ID
%CPU ? ?進程占用的CPU百分比
%MEM ? ?占用內存的百分比
VSZ ? ?該進程使用的虛擬內存量(KB)
RSS ? ?占用的固定內存量(KB)
TTY ? ?該進程在哪個終端運行(登陸者終端位置),若與終端無關,則顯示(?)
STAT ? ?該程序目前的狀態
START ? ?該進程被觸發的時間
TIME ? ?該進程實際使用CPU運作的時間
COMMAND ? ?該程序使用的指令
STAT 列為該程序目前的狀態,下表為具體含義
狀態 ? ?含義
R ? ?該程序目前正在工作
S ? ?該進程目前正在睡眠中
T ? ?該程序目前正在偵測或者是停止了
Z ? ?該進程應該已經被終止,但是其父程序卻無法正常終止他,造成僵尸進程
D ? ?不可中斷狀態
STAT子狀態含義
STAT子狀態 ? ?含義
< ? ?表示進程運行在高優先級上
N ? ?表示進程運行在低優先級上
L ? ?表示進程有頁面鎖定在內存中
s ? ?表示進程是控制進程
l ? ?表示進程是多線程
+ ? ?表示當前進程運行在前臺
查看Docker 相關進程
[root@jany ~]# ps -aux | grep docker
root ? ? ? 1233 ?1.0 ?1.5 1560912 60596 ? ? ? ? Ssl ?07:35 ? 3:32 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
root ? ? ? 1776 ?0.0 ?0.1 143312 ?5256 ? ? ? ? ?Sl ? 07:36 ? 0:00 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 9105 -container-ip 172.17.1.2 -container-port 9100
1
2
3
top 命令
概念
top命令為Linux 命令下最常用性能分析工具,可以實時顯示進程、CPU、內存等系統資源占用情況,默認每3秒刷新一次
,ps命令只是顯示當前進程的快照
命令格式
top [命令參數]
命令參數
命令參數 ? ?含義
-d ? ?秒數 指定每隔幾秒更新
-i ? ?不顯示任何閑置或僵死進程
-p ? ?通過指定監控進程ID來監控某個進程的狀態
交互操作快捷鍵
快捷鍵 ? ?含義
P ? ?以CPU使用率排序(默認)
M ? ?以內存使用率排序
N ? ?以PID排序
q ? ?退出top
u ? ?查看某個用戶進程,進而結束進程
top 命令應用
查看進程ID為3965的進程
[root@jany ~]# top -p3965
查看root的進程
[root@jany ~]# top -i
top - 15:30:49 up ?6:13, ?1 user, ?load average: 1.31, 1.89, 2.11
Tasks: 176 total, ? 1 running, 175 sleeping, ? 0 stopped, ? 0 zombie
%Cpu(s): 18.2 us, 13.6 sy, ?0.0 ni, 68.2 id, ?0.0 wa, ?0.0 hi, ?0.0 si, ?0.0 st
KiB Mem : ?3861280 total, ? 133940 free, ?3464716 used, ? 262624 buff/cache
KiB Swap: ?2097148 total, ?1799932 free, ? 297216 used. ? 143176 avail Mem
PID USER ? ? ?PR ?NI ? ?VIRT ? ?RES ? ?SHR S ?%CPU %MEM ? ? TIME+ COMMAND
3968 root ? ? ?20 ? 0 3672876 590732 ? 4560 S ?20.0 15.3 ?43:59.16 java
4380 root ? ? ?20 ? 0 2842216 289852 ? 4468 S ?20.0 ?7.5 ?43:22.17 java
37329 root ? ? ?20 ? 0 3683528 627324 ? 4180 S ?20.0 16.2 ?39:08.80 java
鍵盤按u,返回Which user (blank for all),輸入要查看的用戶名稱即可
top - 15:31:03 up ?6:13, ?1 user, ?load average: 1.61, 1.93, 2.12
Tasks: 179 total, ? 3 running, 176 sleeping, ? 0 stopped, ? 0 zombie
%Cpu(s): 21.3 us, ?9.1 sy, ?0.0 ni, 68.7 id, ?0.0 wa, ?0.0 hi, ?1.0 si, ?0.0 st
KiB Mem : ?3861280 total, ? 131388 free, ?3465952 used, ? 263940 buff/cache
KiB Swap: ?2097148 total, ?1799932 free, ? 297216 used. ? 141904 avail Mem
Which user (blank for all) root
PID USER ? ? ?PR ?NI ? ?VIRT ? ?RES ? ?SHR S ?%CPU %MEM ? ? TIME+ COMMAND
3965 root ? ? ?20 ? 0 3676836 569584 ? 4404 S ?16.8 14.8 ?43:58.57 java
4380 root ? ? ?20 ? 0 2842216 289852 ? 4468 S ?16.7 ?7.5 ?43:24.52 java
3968 root ? ? ?20 ? 0 3672876 590748 ? 4560 S ?16.7 15.3 ?44:01.50 java
37329 root ? ? ?20 ? 0 3683528 627324 ? 4180 S ?16.6 16.2 ?39:11.13 java
按q即可退出top 窗口
netstat
概念
netstat 命令用于查看網絡情況
命令格式
netstat [命令參數]
命令參數
命令參數 ? ?含義
-an ? ?按一定順序排列輸出
netstat 命令應用
顯示進程網絡情況
[root@jany ~]# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address ? ? ? ? ? Foreign Address ? ? ? ? State
tcp ? ? ? ?0 ? ? ?0 0.0.0.0:9005 ? ? ? ? ? ?0.0.0.0:* ? ? ? ? ? ? ? LISTEN
tcp ? ? ? ?0 ? ? ?0 0.0.0.0:9999 ? ? ? ? ? ?0.0.0.0:* ? ? ? ? ? ? ? LISTEN
tcp ? ? ? ?0 ? ? ?0 0.0.0.0:8080 ? ? ? ? ? ?0.0.0.0:* ? ? ? ? ? ? ? LISTEN
查看8080端口 網絡情況
[root@jany ~]# netstat -nat | grep 8080
tcp ? ? ? ?0 ? ? ?0 0.0.0.0:8080 ? ? ? ? ? ?0.0.0.0:* ? ? ? ? ? ? ? LISTEN
CentOS Linux 任務調度
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。