1、進入/etc/systemd/system目錄,下面以redis服務爲例,首先在目錄下自定義一個redisd.service文件,內容如下
[Unit]
Description=Redis persistent key-value database
After=network.target
[Service]
ExecStart=/home/myuser/redis-server /home/myuser/redis.conf --supervised systemd
ExecStop=/home/myuser/redis-shutdown
Type=notify
User=myuser
Group=myuser
RuntimeDirectory=redis
RuntimeDirectoryMode=0755
[Install]
WantedBy=multi-user.target
2、如果你是普通用戶,則運行sudo systemctl enable redisd.service,運行完成後不出意外會提示你創建了軟連接:
Created symlink from /etc/systemd/system/multi-user.target.wants/iptvd.service to /etc/systemd/system/redisd.service.
這一步也即是將你的服務加入自啓。
3、完成第二步之後你就可以利用sudo systemctl start redisd.service命令啓動redis服務了。
對於上面的redisd.service文件我這裏只寫了start和stop啓動項,故可以用sudo systemctl stop redisd.service來停止啓動的redis服務。還可以加一些命令如:
ExecReload=/bin/kill -s HUP $MAINPID //重載
ExecStop=/bin/kill -s QUIT $MAINPID //如果自定義服務沒有相對應的關閉命令,則可以用此命令代替
注意:
1、如果redisd.service文件有改動時,還需要執行一下sudo systemctl daemon-reload命令。
2、如果自定義腳本沒有啓動成功可能是配置出了問題,請參考:centos7編寫自己的服務,運行systemctl後卡住了(即shell阻塞了)
3、另外可以參考下面的文章:
https://www.cnblogs.com/wjb10000/p/5566801.html