歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux Systemd——在RHEL/CentOS 7中啟動/停止/重啟服務

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

日期:2017/2/28 14:28:36   编辑:Linux教程

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

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

  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

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

檢查服務狀態

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

  1. # systemctl status httpd.service

輸出結果就像這樣:

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

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

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

  1. # systemctl enable httpd.service
  2. # systemctl disable httpd.service

輸出結果看這裡:

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

Linux 引導方式systemd upstart sysV http://www.linuxidc.com/Linux/2014-01/95555.htm

為什麼systemd會被如此迅速的采用? http://www.linuxidc.com/Linux/2014-08/105789.htm

更多CentOS相關信息見CentOS 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=14

Copyright © Linux教程網 All Rights Reserved