LinuxSystemctl是一個系統管理守護進程、工具和庫的集合,用於取代System V、service和chkconfig命令,初始進程主要負責控制systemd系統和服務管理器。通過Systemctl –help可以看到該命令主要分為:查詢或發送控制命令給systemd服務,管理單元服務的命令,服務文件的相關命令,任務、環境、快照相關命令,systemd服務的配置重載,系統開機關機相關的命令。
1. 列出所有可用單元
# systemctl list-unit-files
2. 列出所有運行中單元
# systemctl list-units
3. 列出所有失敗單元
# systemctl –failed
4. 檢查某個單元(如 crond.service)是否啟用
# systemctl is-enabledcrond.service
5. 列出所有服務
# systemctl list-unit-files –type=service
6. Linux中如何啟動、重啟、停止、重載服務以及檢查服務(如 httpd.service)狀態
# systemctl start httpd.service
# systemctl restart httpd.service
# systemctl stop httpd.service
# systemctl reload httpd.service
# systemctl status httpd.service
注意:當我們使用systemctl的start,restart,stop和reload命令時,終端不會輸出任何內容,只有status命令可以打印輸出。
7. 如何激活服務並在開機時啟用或禁用服務(即系統啟動時自動啟動mysql.service服務)
# systemctl is-active mysql.service
# systemctl enable mysql.service
# systemctl disable mysql.service
8. 如何屏蔽(讓它不能啟動)或顯示服務(如ntpdate.service)
# systemctl mask ntpdate.service
ln -s ‘/dev/null”/etc/systemd/system/ntpdate.service’
# systemctl unmask ntpdate.service
rm ‘/etc/systemd/system/ntpdate.service’
9. 使用systemctl命令殺死服務
# systemctl killcrond
10. 列出所有系統掛載點
# systemctl list-unit-files –type=mount
11. 掛載、卸載、重新掛載、重載系統掛載點並檢查系統中掛載點狀態
# systemctl start tmp.mount
# systemctl stop tmp.mount
# systemctl restart tmp.mount
# systemctl reload tmp.mount
# systemctl status tmp.mount
12. 在啟動時激活、啟用或禁用掛載點(系統啟動時自動掛載)
# systemctl is-active tmp.mount
# systemctl enable tmp.mount
# systemctl disable tmp.mount
13. 在Linux中屏蔽(讓它不能啟用)或可見掛載點
# systemctl mask tmp.mount
ln -s ‘/dev/null”/etc/systemd/system/tmp.mount’
# systemctl unmask tmp.mount
rm ‘/etc/systemd/system/tmp.mount’
14. 列出所有可用系統套接口
# systemctl list-unit-files –type=socket
15. 檢查某個服務的所有配置細節
# systemctl showmysql
16. 獲取某個服務(httpd)的依賴性列表
# systemctl list-dependencies httpd.service
17. 啟動救援模式
# systemctl rescue
18. 進入緊急模式
# systemctl emergency
19. 列出當前使用的運行等級
# systemctl get-default
20. 啟動運行等級5,即圖形模式
# systemctl isolate runlevel5.target
或
# systemctl isolate graphical.target
21. 啟動運行等級3,即多用戶模式(命令行)
# systemctl isolate runlevel3.target
或
# systemctl isolate multiuser.target
22. 設置多用戶模式或圖形模式為默認運行等級
# systemctl set-default runlevel3.target
# systemctl set-default runlevel5.target
23. 重啟、停止、掛起、休眠系統或使系統進入混合睡眠
# systemctl reboot
# systemctl halt
# systemctl suspend
# systemctl hibernate
# systemctl hybrid-sleep
對於不知運行等級為何物的人,說明如下。
Runlevel 0 : 關閉系統
Runlevel 1 : 救援,維護模式
Runlevel 3 : 多用戶,無圖形系統
Runlevel 4 : 多用戶,無圖形系統
Runlevel 5 : 多用戶,圖形化系統
Runlevel 6 : 關閉並重啟機器