Linux-10 進程管理 服務管理 動態監控進程

基本介紹

1,在linux中,每個執行的程序(代碼)都稱爲一個進程。每一個進程都分配一個ID號。
2,每一個進程,都會對應一個父進程,而這個父進程可以複製多個子進程。例如www服務器。
3,每個進程都可能以兩種方式存在的。前臺與後臺,所謂前臺進程就是用戶目前的屏幕上可以進行操作的。後臺進程則是實際在操作,但由於屏幕上無法看到的進程,通常使用後臺方式執行。
4,一般系統的服務都是以後臺進程的方式存在,而且都會常駐在系統中。直到關機才結束。

顯示系統執行的進程

ps命令是用來查看目前系統中,有哪些正在執行的進程。以及它們執行的狀況。可以不加任何參數。

字段 說明
USER 用戶名
PID 進程識別號
%CPU 佔用的CPU
%MEM 佔用的內存
VSZ 使用的虛擬內存
RSS 使用物理內存情況
TTY 終端機號
STAT 進程的狀態 s:休眠 r:運行 d-短期等待 n-表示進程擁有比普通進程優先級更低的優先級 z-僵死進程,t-被跟蹤或者被停止等等
STARTED 進程的啓動時間
TIME 此進程所消CPU時間
CMD 正在執行的命令或進程名
PPID 父進程ID,通過ps -ef查看父進程

ps -a:顯示當前終端的所有進程信息
ps -u:以用戶的格式顯示進程信息
ps -x:顯示後臺進程運行的參數

查看父進程 ps -ef
查看某個進程的父進程 ps -ef | grep xxx

終止進程 kill和killall

若是某個進程執行一半需要停止時,或是已消了很大的系統資源時,此時可以考慮停止該進程。使用kill命令完成此任務。
kill [選項] 進程號(功能描述:通過進程號殺死進程)
killall 進程名稱(功能描述,通過進程名稱殺死進程,也支持通配符,這在系統因負載過大而變得很慢時很有用)

-9:表示強迫進程立即停止

查看進程樹 pstree

pstree [選項],可以更加直觀的來看進程信息

-p:顯示進程的PID
-u:顯示進程的所屬用戶

服務管理

服務本質就是進程,但是是運行在後臺,通常都會監聽某個端口,等待其他程序的請求,比如(sshd,mysql,防火牆等),因此我們又
service 服務名 [ start | stop | restart | reload | status ]
在centosOS7.0 後,不再用service,而是systemctl

可以通過telnet指令檢查linux的某個端口是否在監聽並且可以訪問

dos
telnet ip 端口

查看服務名

方式1:使用setup -> 系統服務 就可以看到
方式2:/etc/init.d/服務名稱

服務的運行級別

查看或者默認級別:vi /etc/inittab
Linux系統有7種運行級別(runlevel):常用的是3和5

開機的流程說明:

1,開機
2,BIOS
3,/boot
4,init進程1
5,運行級別
6,運行級別對應的服務

chkconfig指令

通過chkconfig命令可以給每個服務的各個運行級別設置自啓動/關閉

1,查看服務chkconfig --list | grep xxx
2,chkconfig 服務名 --list
3,chkconfig --level 5 服務名 on/off

動態監控進程

top與ps命令很相似。它們都是用來顯示正在執行的進程。top與ps最大的不同之處,在於top在執行一段時間可以更新正在運行的進程。

top [選項]

選項 功能
-d秒數 指定top命令每隔幾秒更新。默認是3秒,在top命令的交互模式當中可以執行的命令
-i 使top不顯示任何閒置或者僵死進程。
-p 通過指定監控進程ID來僅僅監控某個進程的狀態

交互操作說明

操作 功能
P 以CPU使用率培訓,默認就是此項
M 以內存的使用率排序
N 以PID排序
q 退出top

監控網絡狀態

netstat 查看系統網絡情況

netstat [選項]
-an 按一定順序排列輸出
-p 顯示哪個進程在調用

ping 測試主機命令

是一種網絡監測工具,它主要是用於監測遠程主機是否正常,或是兩部主機間的介質是否爲斷、網線是否脫落或網卡故障
ping ip地址

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章