/lib/systemd/system 系統服務管理,開機啟動,無需登入使用者
/usr/lib/systemd/system 使用者服務管理,使用者登入後自動啟動
1.systemd的特性:
#支援并行化任務
#同時采用socket式和D-Bus總線式激活服務
#按需啟動守護程序daemon
#利用linux的cgroups監視程序
#支援快照和系統恢複
#維護挂載點和自動挂載點
#各服務間基于依賴關系進行精密控制
2.systemd基本工具
監視和控制systemd的主要指令systemctl,該指令用于檢視系統狀态和管理系統及服務
3.檢視分析系統及服務狀态:
#systemctl 輸出激活的單元
#systemctl list-units 輸出激活的單元
#systemctl --failed 輸出運作失敗的服務單元
#systemctl list-units-files 使用單元檔案
一個單元配置檔案可以描述如下内容之一:(.service)系統服務,(.mount)挂載點,(.sockets)sockets系統裝置,交換分區/檔案,(.target)啟動目标,檔案系統路徑。
詳情參閱man 5 systemd.unit
4.服務單元管理
使用 systemctl 控制單元時,通常需要使用單元檔案的全名,包括擴充名(例如 sshd.service)。但是有些單元可以在systemctl中使用簡寫方式:
a.如果無擴充名, 預設把擴充名當作 .service。例如 netcfg 和 netcfg.service 是等價的。
b.挂載點會自動轉化為相應的 .mount 單元。例如 /home 等價于 home.mount。
c.裝置會自動轉化為相應的 .device 單元,是以 /dev/sda2 等價于 dev-sda2.device。
#systemctl start <單元> 立即激活相應單元
#systemctl stop <單元> 立即停止單元
#systemctl restart <單元> 重新開機單元
#systemctl reload <單元> 重新讀取單元配置
#systemctl daemon-reload 重新加載systemd,掃描新的或有變化的單元
#systemctl status <單元> 單元的運作狀态
#systemctl is-enable <單元> 檢查單元是否配置為自動啟動
#systemctl enable <單元> 設定單元開機啟動
5.電源管理
安裝polkit即可實作電源管理
如果在本地systemd-logind使用者會話,且目前沒有其他活動的話,無需root即可執行電源管理。
如果tty/ssh等遠端登入使用者,systemd将會自動請求root權限
#systemctl reboot 重新開機
#systemctl poweroff 退出系統并停止電源
#systemctl suspend 待機
#systemctl hibernate 休眠
#systemctl hybrid-sleep 混合休眠模式
systemd擴充:systemd詳解 https://blog.linuxeye.com/400.html