Linux基礎篇——進程管理(centos 7)

一、基本介紹和查看進程

  • 在 Linux中,每個執行的程序(代碼)都稱爲一個進程。每一個進程都分配一個 ID 號。
  • 每一個進程,都會對應一個父進程,而這個父進程可以複製多個子進程。
  • 每個進程都可能以兩種方式存在的。前臺與後臺,所謂前臺進程就是用戶目前的屏幕上可以進行操作的。後臺進程則是實際在操作,但由於屏幕上無法看到的進程,通常使用後臺方式執行。

顯示進程

ps -aux
ps -aux | grep xxx (查找特定進程)

在這裏插入圖片描述

在START中, S-睡眠,s-表示該進程是會話的先導進程,N-表示進程擁有比普通優先級更低的優先級,R-正在運行,D-短期等待,Z-殭屍進程,T-被跟蹤或者被停止。
以全格式顯示

ps -ef

在這裏插入圖片描述

  • PPID :父進程 ID
  • C : CPU 用於計算執行優先級的因子。數值越大,表明進程是 CPU 密集型運算,執行優先級會降低;數值越小,表明進程是 I/O 密集型運算,執行優先級會提高
  • TTY :完整的終端名稱

top
top命令將會在當前終端以全屏交互式的界面顯示進程排名,及時跟蹤CPU、內存等系統資源佔用情況,默認情況下每三秒刷新一次,其作用類似於windows系統中的任務管理器。(圖片來源於網絡)
在這裏插入圖片描述在這裏插入圖片描述

二、終止進程

若是某個進程執行一半需要停止時,或是已消了很大的系統資源時,此時可以考慮停止該進程。使用 kill 命令來完成此項任務。

kill  進程號(功能描述:通過進程號殺死進程)
kill -9 進程號(強制)
killall 進程名稱(功能描述:通過進程名稱殺死進程,也支持通配符)

比如說有多個gedit編輯器,要全部關閉:

killall gedit

查看進程樹

pstree [選項]
  • -p :顯示進程的PID
  • -u :顯示用戶

三、服務管理

服務(service) 本質就是進程,但是是運行在後臺的,通常都會監聽某個端口,等待其它程序的請求,比如(mysql , sshd 防火牆等),因此我們又稱爲守護進程。在CentOS7中,服務操作命令跟以往的版本有很大不同,用systemctl代替了原來的service。

查看一個服務
systemctl status name.service
設置開啓/關閉/重啓
systemctl start name.service
systemctl stop name.service
systemctl restart name.service

這些命令只是臨時開啓或關閉服務,系統重啓後會失效,如果想設置某個服務開啓總是啓用/禁用,要用下面中的命令。

設置開啓/禁用
systemctl enable name.service
systemctl disable name.service

查看服務列表

systemctl list-unit-files [| grep status/name]

status表示按狀態篩選可以取enabled、disabled、static,表示只篩選這種狀態的服務;name表示按名稱篩選,支持模糊匹配。這個命令查到的服務狀態是指開機啓用/禁用,而不是當前的狀態。

查看已開放端口
firewall-cmd --list-all
查看現在的防火牆端口
firewall-cmd --zone=public --list-ports
開放/關閉端口號 port爲端口號,重啓後生效
firewall-cmd --zone=public --add-port=port/tcp --permanent
firewall-cmd --zone=public --remove-port=port/tcp --permanent

四、開機與chkconfig 指令

在這裏插入圖片描述

Linux 系統有 7 種運行級別(runlevel):常用的是級別 3 和 5

  • 運行級別 0:系統停機狀態,系統默認運行級別不能設爲 0,否則不能正常啓動
  • 運行級別 1:單用戶工作狀態,root 權限,用於系統維護,禁止遠程登陸
  • 運行級別 2:多用戶狀態(沒有 NFS),不支持網絡
  • 運行級別 3:完全的多用戶狀態(有 NFS),登陸後進入控制檯命令行模式
  • 運行級別 4:系統未使用,保留
  • 運行級別 5:X11 控制檯,登陸後進入圖形 GUI 模式
  • 運行級別 6:系統正常關閉並重啓,默認運行級別不能設爲 6,否則不能正常啓動
chkconfig --list        #列出所有的系統服務
chkconfig --list mysqld        #列出mysqld服務設置情況

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

chkconfig --level httpd 2345 on        
#設置httpd在運行級別爲2、3、4、5的情況下都是on(開啓)的狀態

查看系統網絡情況

netstat -anp
  • -an 按一定順序排列輸出
  • -p 顯示哪個進程在調用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章