在Windows中,系統進程,資源管理都是通過可視化操作實現的,如下為Windows經典的可視化系統資源管理,其中,作為開發人員或伺服器運維人員, 查看系統系統,系統進程,系統性能和系統伺服器是三個重要的參考因素。 然而,在linux系統中,如何實現這些操作呢?本篇文章將從操作的角度,簡要分析liu ...
在Windows中,系統進程,資源管理都是通過可視化操作實現的,如下為Windows經典的可視化系統資源管理,其中,作為開發人員或伺服器運維人員,
查看系統系統,系統進程,系統性能和系統伺服器是三個重要的參考因素。
然而,在linux系統中,如何實現這些操作呢?本篇文章將從操作的角度,簡要分析liunx如何實現Linux系統的監管。
一 查看系統進程
在linux中,查看系統進程的命令為ps,常用格式為如下兩個:
(1)ps aux:unix格式查看系統進程
(2)ps -le:linux格式查看系統進程
一般地,ps aux更常用,下麵主要講解ps aux命令
(一)查看系統所有進程
ps aux,使用BSD(UNIX)系統格式查看系統所有進程
(二)參數註解
USER --進程使用用戶
PID --進程ID
%CPU -- 進程占用的CPU
%MEM --進程占用記憶體
VSZ --進程占用虛擬記憶體,單位為KB
RSS --進程占用物理記憶體,單位為KB
TTY --該進程所運行終端
(1)tty1-tty7:本地控制台終端(tty1-tty6:本地字元界面終端;tty7:圖形終端)
(2)pts/0-255:虛擬終端,即遠程終端
(3)?:由linux內核直接調用,不由終端調用
STAT -- 進程狀態
(1)R--運行狀態
(2)S--休眠
(3)T--停止
(4)s--包含子進程
(5)+ --後臺進程
START --進程啟動時間
TIME --占用CPU運算時間
COMMAND -- 產生進程的命令
二 查看系統運行狀態
在linux中,用top命令來查看系統運行性能及狀態。
參數解釋:
(一)第一行:top
該行表示系統性能相關
需要註意的是,系統負載參數中,對於單核CPU,當負載>時,表示系統壓力比較大,如果是n核CPU,當負載>n時,表示
系統壓力比較大。
(二)第二行:Tasks
該行表示線程相關
參數解釋:
tatal:線程總數
running:正在運行的線程
sleeping:正在休眠進程
stopped:已經停止進程
zombie:僵死進程(正在終止,但未終止的進程
(三)第三行:%CPU
該行表示CPU相關
參數解釋:
us:用戶模式占用cpu百分比
sy:系統模式占用cpu百分比
ni:改變過優先順序的用戶進程占用的cpu百分比
id:空閑cpu百分比
wa:等待輸入輸出進程占用cpu百分比
hi:硬終端請求服務占用cpu百分比
si:軟中斷請求服務占用cpu百分比
st:虛擬時間百分比,即若存在虛擬機,虛擬cpu等待cpu響應時間百分比
(四)第四行:%KiB Mem
該行表示系統記憶體情況
參數解析:
total:當前系統總記憶體
free:空閑記憶體
used:已用記憶體
buff/cache:緩存緩存記憶體
需要註意的是,當記憶體不夠時,根據linux管理記憶體機制,會將buff/cache記憶體作為記憶體來使用。
(五)第五行:KiB Swap
該行表示系統交換分區
參數解析:
total:總分區大小
free:空閑分區大小
used:已使用分區大小
(六)第六行:系統進程狀態行
該行表示當前系統進程運行狀態,預設是按照cpu占用比例從大到小排列的,常見快捷操作:
M- 記憶體排序
P-CPU排序
N-PID排序
參數解析:
PID:進程ID,在系統中,唯一標識進程
USER:進程所有者
PR:優先順序
NI:負值表示高優先順序,正值表示低優先順序
VIRT:進程使用的虛擬記憶體總量,單位kb。VIRT=SWAP+RES
RES:進程使用的、未被換出的物理記憶體大小,單位kb。RES=CODE+DATA
SHR:共用記憶體大小,單位kb
S:進程狀態(D=不可中斷的睡眠狀態,R=運行,S=睡眠,T=跟蹤/停止,Z=僵屍進程)
%CPU:進程占用cpu百分比
%MEM:進程占用記憶體百分比
TIME+:進程使用的CPU時間總計
COMMAND:進程命令
(七)top命令常用快捷鍵
1.ctr+z 停止
2.ctr+c 強制退出
3.q 退出
4.m 按記憶體排序查找
5.p 按PID排序
三 進程常用操作
(一)查看進程樹
linux中查看進程樹命令是pstree,要使用它,首先在linux上安裝
yum install psmisc -y
1.查看預設進程樹
pstree
2.帶有PID的進程樹
pstree -p
3.通過進程名查找
pstree -p | grep java
4.通過進程PID查找
pstree -ps 被查看進程PID
(二)終止進程
kill命令用來終止進程
1.查看進程信號
kill -l
列舉幾個常用信號:
2.強制殺死進程
kill -9 PID
(三)查看進程工作狀態
在Linux中,從交互角度,我們習慣將進程分為前臺進程和後臺進程,所謂前臺進程,即與用戶交互的
進程,如top,vim命令,後臺進程,即不需要與用戶交互的進程。
1.查看後臺工作進程
linux中,jobs -l 查看後臺工作的進程
參數解釋:
第一列:數字表示該進程倒數第幾放入工作進程
第二列:只有倒數第一(+),倒數第二(-)放入的進程才有符號
第三列:進程PID
第四列:進程狀態
第五列:進程信號標識
第六列:進程名
2.將後臺進程恢復到前臺
fg %工作號
需要註意的是,%可省略
3.將後臺進程恢復後臺
bg %工作號
需要註意的是,%可省略
四 系統資源查看
1.系統資源監控
vmstat [刷新延時(秒為單位) 刷新次數]
2.開機內核檢測
dmesg用來檢測開機時,linux內核情況,如檢測 dmesg |grep cpu
3.查看記憶體使用
free 用來查看記憶體使用
4.查看cpu信息
cat /proc/cpuinfo
5.uptime查看系統啟動時間和平均負載
6.查看系統與內核信息
uname 命令查看系統與內核信息
參數解釋:
-a :查看系統相關信息
-s:查看內核名稱
-r:查看內核版本
7.查看進程使用文件
lsof命令查看進程使用文件
參數:
-p :查看某個PID進程使用的文件
-u:查看某個用戶使用的文件
-c:列出以字元串開頭的進程打開的文件
版權區
- 轉載博客,必須註明博客出處
- 博客園:http://www.cnblogs.com/wangjiming/ (側重.NET)
- CSDN:https://blog.csdn.net/u010228798 (側重JAVA)
- 如您有新想法,歡迎提出,郵箱:[email protected]
- 專業.NET之家技術QQ群:490539956
- 專業化Java之家QQ群:924412846
- 有問必答QQ群:2098469527
- 一對一技術輔導QQ:2098469527