centos 7以上是用Systemd進行系統初始化的,Systemd 是 Linux 系統中最新的初始化系統(init),它主要的設計目標是克服 sysvinit 固有的缺點,提高系統的啟動速度。
顯示錯誤:Redirecting to /bin/systemctl restart nginx.service
則需要進行以下操作
在系統服務目錄里創建nginx.service文件
vi /lib/systemd/system/nginx.service
內容如下
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
各個含義
[Unit]:服務的說明
Description:描述服務
After:描述服務類別
[Service]服務運行參數的設置
Type=forking是后臺運行的形式
ExecStart為服務的具體運行命令
ExecReload為重啟命令
ExecStop為停止命令
PrivateTmp=True表示給服務分配獨立的臨時空間
注意:[Service]的啟動、重啟、停止命令全部要求使用絕對路徑
[Install]運行級別下服務安裝的相關設置,可設置為多用戶,即系統運行級別為3
相關命令
- 啟動nginx服務:systemctl start nginx.service
- 設置開機自啟動:systemctl enable nginx.service
- 停止開機自啟動:systemctl disable nginx.service
- 查看服務當前狀態:systemctl status nginx.service
- 重新啟動服務:systemctl restart nginx.service
- 查看所有已啟動的服務:systemctl list-units --type=service