banner
李大仁博客

李大仁博客

天地虽大,但有一念向善,心存良知,虽凡夫俗子,皆可为圣贤。

CentOS7 使用SystemD實現開機自啟動和服務管理

CentOS7 可以使用 SystemD 來管理服務,以實現自動啟動服務的功能。

SystemD 即 System Daemon,是 Linux 下的一種 init 軟體,其開發目標是提供更優秀的框架來表示系統服務之間的依賴關係,並以此實現系統初始化時服務的並行啟動,同時達到降低 Shell 系統開銷的效果。

假設我們需要啟動的服務為:

# /usr/share/autostartup/foobar.sh

步驟 1. 創建 SystemD 管理服務所使用的.service 文件

/usr/share/autostartup/foobar.service

以下是測試的.service 文件,具體的編寫方式可以參考 SystemD 相關文檔。

[Unit]
Description=foobar
Documentation=http://www.doc.com/doc.html
After=network.target

[Service]
Type=simple
WorkingDirectory=/home/foobar
ExecStart=/usr/share/autostartup/foobar.sh
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=foobar
User=foobar
Group=foobar
Environment=

[Install]
WantedBy=multi-user.target

步驟 2. 將編寫好的.service 文件移動到 `/usr/lib/systemd/` 下的指定目錄,這裡我們需要隨系統啟動,所以移動到 `/usr/lib/systemd/system/` 下。

cp /usr/share/autostartup/foobar.service /usr/lib/systemd/system/foobar.service

步驟 3. 配置和啟動相應的服務

# 重新加載 systemd 的配置
systemctl daemon-reload

配置服務為開機啟動#

systemctl enable foobar.service

開啟服務#

systemctl start foobar.service

關閉服務#

systemctl stop foobar.service

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。