自定义服务,通过Systemctl进行管理
- 写好执行脚本,并保存到指定目录:
#!/bin/sh ... 脚本内容
- 写好服务文件,文件名以
.service
结尾,保存到/usr/lib/systemd/system/
目录下面:
简单点:
参考[Unit] Description = test scripy # 描述 [Service] Type=forking # 后台运行 ExecStart=/root/test.sh # 该脚本的启动命令 PrivateTmp=true # 独立分配临时空间 [Install] WantedBy=multi-user.target # 多用户登录服务 Alias=pppdrun.setvice # 服务别名
nginx.service
的服务文件[Unit] Description=nginx - high performance web server After=network.target remote-fs.target nss-lookup.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s stop [Install] WantedBy=multi-user.target
- 设置未开机自启动:
systemctl enable your_service_name.service
其他命令,以nginx
为例:
启动nginx服务
[root@localhost ~]# systemctl start nginx.service
停止nginx服务
[root@localhost ~]# systemctl start nginx.service
重启nginx服务
[root@localhost ~]# systemctl restart nginx.service
查看nginx服务当前状态
[root@localhost ~]# systemctl status nginx.service
查看所有已启动的服务
[root@localhost ~]# systemctl list-units --type=service
停止开机自启动
[root@localhost ~]# systemctl disable nginx.service