注册服务
*以下统一将serviceName作为服务名
- 进入服务目录:
cd /lib/systemd/system
- 创建并编辑配置文件:
vim serviceName.service
1 | [ Unit ] # 记录service文件的通用信息 |
killMode字段
- control-group(默认值):当前控制组里面的所有子进程,都会被杀掉
- process:只杀主进程
- mixed:主进程将收到 SIGTERM 信号,子进程收到 SIGKILL 信号
- none:没有进程会被杀掉,只是执行服务的 stop 命令。
restart 字段
- no(默认值):退出后不会重启
- on-success:只有正常退出时(退出状态码为0),才会重启
- on-failure:非正常退出时(退出状态码非0),包括被信号终止和超时,才会重启
- on-abnormal:只有被信号终止和超时,才会重启
- on-abort:只有在收到没有捕捉到的信号终止时,才会重启
- on-watchdog:超时退出,才会重启
- always:不管是什么退出原因,总是重启
systemctl 相关操作
1 | # 将服务注册为系统启动后自动启动 |
其他操作
修改配置文件后需要重新加载配置文件
1 | # 重新加载配置文件 |
参考
Systemd 入门教程:实战篇 - 阮一峰
CentOS 7之Systemd详解之服务单元设置system.service