Linux中國

Linux Systemd——在RHEL/CentOS 7中啟動/停止/重啟服務

RHEL/CentOS 7.0中一個最主要的改變,就是切換到了systemd。它用於替代紅帽企業版Linux前任版本中的SysV和Upstart,對系統和服務進行管理。systemd兼容SysV和Linux標準組的啟動腳本。

Systemd是一個Linux操作系統下的系統和服務管理器。它被設計成向後兼容SysV啟動腳本,並提供了大量的特性,如開機時平行啟動系統服務,按需啟動守護進程,支持系統狀態快照,或者基於依賴的服務控制邏輯。

先前的使用SysV初始化或Upstart的紅帽企業版Linux版本中,使用位於/etc/rc.d/init.d/目錄中的bash初始化腳本進行管理。而在RHEL 7/CentOS 7中,這些啟動腳本被服務單元取代了。服務單元以.service文件擴展結束,提供了與初始化腳本同樣的用途。要查看、啟動、停止、重啟、啟用或者禁用系統服務,你要使用systemctl來代替舊的service命令。

註:為了向後兼容,舊的service命令在CentOS 7中仍然可用,它會重定向所有命令到新的systemctl工具。

使用systemctl來啟動/停止/重啟服務

要啟動一個服務,你需要使用如下命令:

# systemctl start httpd.service

這會啟動httpd服務,就我們而言,Apache HTTP伺服器。

要停掉它,需要以root身份使用該命令:

# systemctl stop httpd.service

要重啟,你可以使用restart選項,如果服務在運行中,它將重啟服務;如果服務不在運行中,它將會啟動。你也可以使用try-start選項,它只會在服務已經在運行中的時候重啟服務。同時,reload選項你也可以有,它會重新載入配置文件。

# systemctl restart httpd.service
# systemctl try-restart httpd.service
# systemctl reload httpd.service

我們例子中的命令看起來會像下面這樣:

systemctl start-stop-restart

檢查服務狀態

要檢查服務狀態,你可以使用status選項,看這裡:

# systemctl status httpd.service

輸出結果就像這樣:

systemctl status

它會告訴你運行中的服務的方方面面。

使用啟用/禁用服務來控制開機啟動

你也可以使用enable/disable選項來控制一個服務是否開機啟動,命令如下:

# systemctl enable httpd.service
# systemctl disable httpd.service

輸出結果看這裡:

systemctl-enable

雖然在過去的幾年中,對systemd的採用飽受爭議,然而大多數主流發行版都已經逐漸採用或打算在下一個發行版中採用它。所以,它是一個有用的工具,我們需要好好熟悉它。

via: http://linoxide.com/linux-command/start-stop-services-systemd/

作者:Adrian Dinu 譯者:GOLinux 校對:Caroline

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國