CentOS7中啓動/停止/重啓服務命令

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來啓動/停止/重啓服務

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

  1. # systemctl start httpd.service

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

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

  1. # systemctl stop httpd.service

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

  1. # systemctl restart httpd.service

  2. # systemctl try-restart httpd.service

  3. # systemctl reload httpd.service

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

systemctl start-stop-restart

檢查服務狀態

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

  1. # systemctl status httpd.service

輸出結果就像這樣:

systemctl status

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

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

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

  1. # systemctl enable httpd.service

  2. # systemctl disable httpd.service

輸出結果看這裏:

systemctl-enable

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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章