这里以python脚本为例
- 创建服务:
# 查看已有的服务有哪些
cd /etc/systemd/system
ls
# 创建新服务
sudo vim test.service
#编辑service文件内容(如果无法输入或修改,点击i代表insert)
[Unit]
Description=项目描述
Wants=network.target #设置依赖关系(弱依赖)
After=syslog.target network-online.target #设置启动顺序
[Service]
Type=idle #定义启动类型
User=root
ExecStart=python3 -u 脚本地址 #指定启动单元的命令或脚本,python3可能需要指定安装地址
ExecReload=/bin/kill -s HUP $MAINPID #指定单元重启时执行的命令或者脚本
ExecStop=/bin/kill -s QUIT $MAINPID #指定单元停止时执行的命令或者脚本
Restart=always
RestartSec=5s
[Install]
WantedBy=multi-user.target #表示该服务所在的 Target
- 完成service文件编辑后点击ESC,进入命令行模式:
命令 | 含义 |
---|
:q | 不保存退出 |
:q! | 不保存并强退出 |
:wq | 保存退出 |
:wq! | 强制保存退出 |
:x | 保存退出(如果没有修改则不修改更新时间) |
- 开启服务:
ls #查看服务是否存在
systemctl enable test.service #开启服务
systemctl status test.service #检查服务状态
命令 | 含义 |
---|
systemctl enable test.service | 启用服务(开机启动+后台启动) |
systemctl is-active test.service | 激活服务 |
systemctl disable test.service | 禁用服务 |
systemctl start test.service | 启动服务 |
systemctl restart test.service | 重启服务 |
systemctl stop test.service | 停止服务 |
systemctl reload test.service | 重新加载服务 |
systemctl status test.service | 检查服务状态 |