systemctl命令是RHEL 7 的服務管理工具中主要的工具,它融合service和chkconfig的功能於一體。可以使用它永久性或只在當前會話中啟用/禁用服務。
一、systemd
系統初始化程序,系統開始的第一個進程,pid為1
二、systemctl命令
systemctl list-units ##列出當前系統服務的狀態
systemctl list-unit-files ##列出服務的開機狀態
systemctl status sshd ##查看指定服務的狀態
systemctl stop sshd ##關閉指定服務
systemctl start sshd ##開啟指定服務
systemctl restart sshd ##從新啟動服務
systemctl enable sshd ##設定指定服務開機開啟
systemctl disable sshd ##設定指定服務開機關閉
systemctl reload sshd ##使指定服務從新加載配置
systemctl list-dependencies sshd ##查看指定服務的倚賴關系
systemctl mask sshd ##凍結指定服務
systemctl unmask sshd ##啟用服務
systemctl set-default multi-user.target ##開機不開啟圖形
systemctl set-default graphical.target ##開機啟動圖形
setterm ##文本界面設定color
三、服務狀態
systemctl status 服務名稱
loaded ##系統服務已經初始化完成,加載過配置
active(running) ##正有一個或多個程序正在系統中執行, vsftpd就是這種模式
atcive(exited) ##僅執行一次就正常結束的服務, 目前並沒有任何程序在系統中執行
atcive(waiting) ##正在執行當中,不過還再等待其他的事件才能繼續處理
inactive ##服務關閉
enbaled ##服務開機啟動
disabled ##服務開機不自啟
static ##服務開機啟動項不可被管理
failed ##系統配置錯誤

實例:
啟動nfs服務:systemctl start nfs-server.service
設置開機自啟動:systemctl enable nfs-server.service
停止開機自啟動:systemctl disable nfs-server.service
查看服務當前狀態:systemctl status nfs-server.service
重新啟動某服務:systemctl restart nfs-server.service
查看所有已啟動的服務:systemctl list -units –type=service
開啟防火牆22端口:iptables -I INPUT -p tcp –dport 22 -j accept
查看服務是否開機啟動:systemctl is-enabled
nginx
.service
查看已啟動的服務列表:systemctl list-unit-files|grep enabled
查看啟動失敗的服務列表:systemctl --failed