寶山做網(wǎng)站公司看片子用什么app免費(fèi)蘋果手機(jī)
? 最近在通過Linux系統(tǒng)學(xué)一些技術(shù),但是在啟動(dòng)Nginx時(shí),總是需要執(zhí)行其安裝路徑下的腳本文件,要么我們需要先進(jìn)入其安裝路徑,要么我們每次執(zhí)行命令直接拼上Nginx的完整目錄,如啟動(dòng)時(shí)命令為/usr/local/nginx/sbin/nginx。
? 可以看到這樣在進(jìn)行Nginx操作時(shí)稍比較繁瑣,還需記住Nginx的安裝路徑,但是我了解到通過systemctl命令可以對(duì)系統(tǒng)服務(wù)進(jìn)行管理,那是否可以將Nginx配置一下,使用systemctl命令啟動(dòng)呢?
? 答案是,當(dāng)然可以!
? 在 Linux 系統(tǒng)中,一些服務(wù)可能已經(jīng)集成了 systemd 單元(units),因此可以直接通過 systemctl 命令來管理,包括啟動(dòng)、停止、重啟等操作。而另一些服務(wù)可能還未提供 systemd 單元,此時(shí)可能需要通過執(zhí)行腳本來啟動(dòng)、停止服務(wù)。
? 對(duì)于 Nginx 這樣的常見服務(wù),通常都可以通過 systemctl 來管理。如果你的系統(tǒng)沒有提供 Nginx 的 systemd 單元,你可以手動(dòng)創(chuàng)建一個(gè) systemd 單元文件來實(shí)現(xiàn)通過 systemctl 來管理 Nginx 服務(wù)。
? 以下是具體步驟:
1、sudo su提權(quán),確保當(dāng)前用戶有權(quán)限編輯文件
2、進(jìn)入配置文件目錄,創(chuàng)建一個(gè)新的 systemd 單元文件,如/usr/lib/systemd/system/nginx.service
3、編輯nginx.service
[Unit]Description=Nginx Web ServerAfter=network.target[Service]Type=forkingExecStart=/usr/local/nginx/sbin/nginxExecReload=/usr/local/nginx/sbin/nginx -s reloadExecStop=/usr/local/nginx/sbin/nginx -s stopKillMode=processRestart=on-failureRestartSec=5s[Install]
WantedBy=multi-user.target
解釋各個(gè)配置項(xiàng)的含義:
[Unit] 部分是對(duì)服務(wù)單元的描述。
- Description:描述服務(wù)的簡(jiǎn)短說明。
- After:指定服務(wù)單元依賴的其他單元,在本例中表示 Nginx 服務(wù)應(yīng)該在網(wǎng)絡(luò)服務(wù)啟動(dòng)后啟動(dòng)。
[Service] 部分是指定服務(wù)的具體執(zhí)行細(xì)節(jié)。
- Type:指定服務(wù)的啟動(dòng)類型,這里是 forking,表示啟動(dòng)服務(wù)時(shí)會(huì)派生出一個(gè)子進(jìn)程。
- ExecStart:指定啟動(dòng) Nginx 服務(wù)的命令;路徑應(yīng)為自己Nginx的安裝路徑。
- ExecReload:指定重新加載 Nginx 配置的命令;路徑應(yīng)為自己Nginx的安裝路徑。
- ExecStop:指定停止 Nginx 服務(wù)的命令;路徑應(yīng)為自己Nginx的安裝路徑。
- KillMode:指定終止模式,這里是 process,表示通過向進(jìn)程發(fā)送信號(hào)終止服務(wù)。
- Restart:指定在失敗時(shí)是否重新啟動(dòng)服務(wù),這里是 on-failure,表示只有在服務(wù)失敗時(shí)才重新啟動(dòng)。
- RestartSec:指定重新啟動(dòng)服務(wù)的時(shí)間間隔,這里是 5 秒。
[Install] 部分是指定服務(wù)的安裝信息。
- WantedBy:指定服務(wù)的啟動(dòng)級(jí)別,這里是 multi-user.target,表示服務(wù)將在多用戶環(huán)境下啟動(dòng)。
4、創(chuàng)建完成后,重新加載 systemd 配置:
systemctl daemon-reload
5、以上步驟完成后就可以使用systemctl命令對(duì)nginx服務(wù)進(jìn)行相關(guān)操作了
- 啟動(dòng) Nginx 服務(wù):
systemctl start nginx
- 查看 Nginx 服務(wù)狀態(tài):
systemctl status nginx
- 停止 Nginx 服務(wù):
systemctl stop nginx
- 重啟服務(wù):
systemctl restart nginx