systemctl
配置服务.并且使其自启动[!note] ubuntu 21.04
定义服务
在
/lib/systemd/system/
目录下创建文件serverName.service
[!warning] serverName 替换为自己需要的服务名称,可以直接执行下面的代码
修改文件,使用vim
来进行编辑, 在shell
vim /lib/systemd/system/serverName.service
通过vim
打开serverName.service
后继续输入下方代码,其中的 server
替换成执行任务
[Unit]
Description=fraps service
After=network.target network-online.target syslog.target
Wants=network.target network-online.target
[Service]
Type=simple
#要启动的命令(此处根据实际情况填写)
ExecStart= #server 执行的任务,此注释替换新的
[Install]
WantedBy=multi-user.target
[Unit]
下添加After=network.target network-online.target syslog.target
Wants=network.target network-online.target
[Service]
Restart=always
RestartSec=3
Restart=never 服务退出后不重启
重启间隔 RestartSec
RestartSec=3 服务退出后3秒后重启
RestartSec=30s 服务退出后30秒后重启
RestartSec=1min 服务退出后1分钟后重启
重启次数 Limit
LimitRestart=3 服务退出后重启3次
sudo systemctl enable serverName
sudo systemctl start serverName
[!tip] 常用命令基本上分为 start restart stop
sudo systemctl start serverName
sudo systemctl restart serverName
sudo systemctl stop serverName
sudo systemctl enable serverName
sudo systemctl disable serverName
[!warning] 如果重新修改了服务文件需要执行
systemctl daemon-reload
重新加载 Warning: The unit file, source configuration file or drop-ins of githook.service changed on disk. Run > 'systemctl daemon-reload' to reload units.systemctl daemon-reload
日志查看
[!tip] 查看服务日志使用
journalctl -u 服务名
journalctl
用来查看systemctl
搜集到的日志,可以用来调试排查问题. 据说是systemctl
携带的使用示例
查看服务名为
githook
的服务日志journalctl -u githook.service
更多使用技巧
- 查看最近的日志
携带参数n
加数字可以看到最近n
条日志
代码示例
journalctl -n 100 -u githook.service