Centos7.x的版本的服務(wù)都是以
systemctl start xxxx
來啟動的堂油,如何制作自己的開機(jī)啟動腳本? 大豬就來帶大家如何實(shí)現(xiàn)一個自己的開機(jī)啟動服務(wù)。
大豬是參考/usr/lib/systemd/system
目錄中的其它服務(wù)來修改實(shí)現(xiàn)的赌髓。
使用說明
參考nginx.service
cat /usr/lib/systemd/system/nginx.service
[Unit]
Description=The nginx HTTP and reverse proxy server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
# Nginx will fail to start if /run/nginx.pid already exists but has the wrong
# SELinux context. This might happen when running `nginx -t` from the cmdline.
# https://bugzilla.redhat.com/show_bug.cgi?id=1268621
ExecStartPre=/usr/bin/rm -f /run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
KillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=process
PrivateTmp=true
[Install]
WantedBy=multi-user.target
說明
[Unit]
Description=描述信息
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking#運(yùn)行方式
PIDFile=PID進(jìn)程文件
ExecStartPre=開啟準(zhǔn)備
ExecStart=開啟腳本
ExecReload=重啟腳本
KillSignal=停止信號量
TimeoutStopSec=停止超時時間
KillMode=殺掉模式
PrivateTmp=獨(dú)立空間
[Install]
WantedBy=multi-user.target#腳本啟動模式,多用戶多網(wǎng)絡(luò)
例子demo
cat /root/user-start.sh
#!/bin/bash
echo "123" > /root/hello.txt
vim /usr/lib/systemd/system/user-start.service
[Unit]
Description=這是開機(jī)啟動腳本
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/run/user-start.pid
ExecStart=/root/user-start.sh
KillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=process
PrivateTmp=true
[Install]
WantedBy=multi-user.target
設(shè)置腳本開始啟動
systemctl enable user-start
禁止開啟啟動
systemctl disable user-start
常規(guī)命令
systemctl start
systemctl reload
systemctl stop