詳解在Linux系統(tǒng)中如何管理systemd服務(wù)

(1) 什么是單元
在RHEL7之前,服務(wù)管理是分布式的被SysV init或UpStart通過/etc/rc.d/init.d下的腳本管理。這些腳本是經(jīng)典的Bash腳本,允許管理員控制服務(wù)的狀態(tài)。在RHEL7中,這些腳本被服務(wù)單元文件替換。
在systemd中,服務(wù)、掛載等資源統(tǒng)一被稱為單元,所以systemd中有許多單元類型,服務(wù)單元文件的擴展名是.service,同腳本的功能相似。例如有查看、啟動、停止、重啟、啟用或者禁止服務(wù)的參數(shù)。
systemd單元文件放置位置:
/usr/lib/systemd/system/systemd默認(rèn)單元文件安裝目錄
/run/systemd/systemsystemdsystemd單元運行時創(chuàng)建,這個目錄優(yōu)先于按照目錄
/etc/systemd/system系統(tǒng)管理員創(chuàng)建和管理的單元目錄,優(yōu)先級最高。
(2)systemd的服務(wù)管理
使用systemcl命令可以控制服務(wù),service命令和chkconfig命令依然可以使用,但是主要是出于兼容的原因,應(yīng)該盡量避免使用。
使用systemctl命令的時候,服務(wù)名字的擴展名可以寫全,例如:
也可以忽略,例如:
systemctl常用命令:
啟動服務(wù)
關(guān)閉服務(wù)
重啟服務(wù)
僅當(dāng)服務(wù)運行的時候,重啟服務(wù)
重新加載服務(wù)配置文件
檢查服務(wù)運作狀態(tài)
展示所有服務(wù)狀態(tài)詳細信息
允許服務(wù)開機啟動
禁止服務(wù)開機啟動
檢查服務(wù)開機啟動狀態(tài)
is-enabled name.service
列出所有服務(wù)并且檢查是否開機啟動
(3)服務(wù)詳細信息查看
使用如下命令列出服務(wù):
默認(rèn)只列出處于激活狀態(tài)的服務(wù),如果希望看到所有的服務(wù),使用--all或-a參數(shù):
有時候希望看到所以可以設(shè)置開機啟動的服務(wù),使用如下命令:
查看服務(wù)詳細信息,使用如下命令:
服務(wù)信息關(guān)鍵詞解釋
Loaded服務(wù)已經(jīng)被加載,顯示單元文件絕對路徑,標(biāo)志單元文件可用。
Active服務(wù)已經(jīng)被運行,并且有啟動時間信息。
Main PID與進程名字一致的PID,主進程PID。
Status服務(wù)的附件信息。
Process相關(guān)進程的附件信息。
CGroup進程的CGroup信息。
相關(guān)文章
用systemd-analyze分析Linux系統(tǒng)的啟動性能
這篇文章主要介紹了用systemd-analyze分析Linux系統(tǒng)的啟動性能,systemd-analyze能夠?qū)崿F(xiàn)圖形化的結(jié)果展示,非常強大,需要的朋友可以參考下2015-07-01詳解linux中systemd命令的運行級別與其常見應(yīng)用
這篇文章主要介紹了詳解linux中systemd命令的運行級別與其常見應(yīng)用,文中以CentOS系統(tǒng)作為環(huán)境進行演示,需要的朋友可以參考下2015-06-15- 這篇文章主要介紹了詳解Linux系統(tǒng)的systemd啟動過程,Systemd主要被用來管理進程,并且縮短系統(tǒng)的引導(dǎo)時間,本文正是在探究其運行的原理,需要的朋友可以參考下2015-05-29