1. 程式人生 > >Linux程序管理之服務

Linux程序管理之服務

服務本質就是程序,但是是執行在後臺的,通常都會監聽某個埠,等待其他程式的請求,比如(mysql,sshd,防火牆等),因此我們又稱為守護程序,是Linux中非常重要的知識點。
(1)指令
service 服務名 [ start | restart | reload | status ]
(在CentOS7.0後,不再使用service,而是systemctl)
案例:
service iptables status:檢視防火牆狀態
service iptables stop:停止防火牆
service iptables start:重啟防火牆
(圖)
說明:
①關閉或者啟用防火牆後,立即生效。
[ telnet ip地址 埠號 ]:測試埠是否生效
②這種方法只是臨時生效時,當重啟系統後,還是迴歸以前對服務的設定。
(如果希望設定某個服務自動啟動或者關閉永久生效,要使用chkconfig指令)
(2)檢視服務名
①setup:進入系統服務
②ls -l /etc/init.d/:顯示服務名稱
(圖)


(3)服務的執行級別(runlevel)
檢視或者修改預設級別:vi /etc/inittab
Linux系統有7種執行級別,常用的級別是3-5
執行級別0:系統停機狀態,系統預設執行級別不能設為0,否則不能正常啟動。
執行級別1:單使用者工作狀態,root許可權,用於系統維護,禁止遠端登入。
執行級別2:多使用者工作狀態(沒有NFS),不支援網路。
執行級別3:完全的多使用者狀態(有NFS),登陸後進入控制後臺命令列模式。
執行級別4:系統未使用,保留。
執行級別5:X11控制檯,登入後進入圖形GUI模式。
執行級別6:系統正常關閉並重啟,預設執行級別不能設為6,否則不能正常啟動。
(4)開機的流程
開機 -> BIOS -> /boot -> init程序1 -> 執行級別 -> 執行級對應服務
(5)chkconfig指令
可以給每個服務的各個執行級別設定自動啟動/關閉。
檢視服務基本語法:
①chkconfig --list | grep xxx
(圖)

②chkconfig --list 服務名
(chkconfig 服務名 --list)
圖
③chkconfig --level 5 服務名 on/off
圖
(6)
①請顯示當前系統所有服務的各個執行級別的執行狀態
(圖)
②請檢視sshd服務的執行狀態
(圖)
③將sshd服務在執行級別5設定為不自動啟動
(圖)
④在執行級別為5時,關閉防火牆
(圖)
⑤在所有執行級別下,關閉防火牆
(圖)
⑥在所有執行級別下,開啟防火牆
在這裡插入圖片描述
說明:chkconfig重新設定服務後自啟動或者關閉,需要重啟機器reboot才能生效。