systemd系統服務管理詳解

/lib/systemd/system        系統服務管理,開機啓動,無需登陸用戶html

/usr/lib/systemd/system    用戶服務管理,用戶登陸後自動啓動linux


1.systemd的特性:ssh

    #支持並行化任務socket

    #同時採用socket式和D-Bus總線式激活服務
ide

    #按需啓動守護進程daemon
工具

    #利用linux的cgroups監視進程
spa

    #支持快照和系統恢復
hibernate

    #維護掛載點和自動掛載點
rest

    #各服務間基於依賴關係進行精密控制
orm


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 <單元>    設置單元開機啓動

通常設置enable後,會自動鏈接到啓動文件。手動配置,則兩種方式:1.手動建一條軟鏈接;2.在/lib/systemd/system/下建一個xx.service文件,並修改相應配置。(參考文檔:)

    #systemctl disable <單元>     取消開機激活單元

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

相關文章
相關標籤/搜索