centos7下如何自行在systemctl添加系统服务

以nginx为例

[Unit]

Description=nginx - high performance web server

Documentation=http://nginx.org/en/docs/

After=network-online.target remote-fs.target nss-lookup.target

 

[Service]

Type=forking

PIDFile=/usr/local/nginx/logs/nginx.pid

ExecStartPre=/usr/local/nginx/sbin/nginx -t                  #系统服务执行前执行的命令,这里是在启动nginx之前先检查一下语法。

ExecStart=/usr/local/nginx/sbin/nginx                           #系统服务启动命令。

ExecReload=/usr/local/nginx/sbin/nginx -s reload        #系统服务重新读取配置的命令。

ExecStop=/usr/local/nginx/sbin/nginx -s stop               #系统服务停止的命令。

PrivateTmp=true

 

[Install]

WantedBy=multi-user.target                                        #依赖配置,基本每个服务都需要加这行,不然无法使用systemctl  enable来设置开机启动。

 

 

设置开机启动

systemctl  enable  nginx

 

 

!!!!!如遇到无法通过命令创建开机启动连接时,可以自行创建连接,

观察系统创建开机启动连接时的操作

此处的操作是将/usr/lib/systemd/system/下的系统服务脚本,创建以个软连接到/etc/systemd/system/multi-user.target.wants/下。

同理,当systemctl  enable命令无法自动创建连接时,可执行如下命令:

ln -s  /usr/lib/systemd/system/php.service    /etc/systemd/system/multi-user.target.wants/php.service

posted @ 2018-10-19 11:13  喜欢it的小聪聪  阅读(943)  评论(0编辑  收藏  举报