linux服务开机自启动、注册系统服务
- 新建文件servername.service,例如doowe.service
- 编写服务配置,spring boot服务修改对应的Description、WorkingDirectory、ExecStart即可
- 编写代码service文件
[Unit]
# 服务描述
Description=doowe
[Service]
# 服务工作目录
WorkingDirectory=/opt/epay/wechat
# 启动执行命令
ExecStart=/usr/local/lib/jdk1.8.0_131/bin/java -jar /opt/epay/wechat/epay-wechat-1.0-SNAPSHOT.jar
# 服务文件句柄限制
LimitNOFILE=40000
# 私有临时文件
PrivateTmp=false
# 服务异常重新启动
Restart=always
# 服务启动模式
Type=simple
# 停止命令
ExecStop=/usr/bin/kill -15 $MAINPID
# 重启服务延时
RestartSec=5s
# 服务停止超时时间
TimeoutStopSec=20s
[Install]
WantedBy=multi-user.target
-
将servername.service文件移动到/usr/lib/systemd/system/目录下
-
更新systemd服务信息systemctl daemon-reload
-
服务开机自动启动systemctl enable servername
-
启动服务systemctl start servername
-
查看服务状态systemctl status servername
-
停止服务systemctl stop servername
-
重启服务systemctl restart servername
-
查看服务日志journalctl -u servername
-
持续监控服务日志journalctl -u servername -f
-
持续监控服务日志,且查看末尾500行 journalctl -u servername -f -n 500
journalctl基础命令
- 查看指定时间的日志
通过–since和–until选项,可以过滤任意时间限制,显示指定条件之前、之后或之间的日志。
journalctl --since="2018-09-21 10:21:00"
- 查询一个时间段范围内的日志。
journalctl --since="2018-09-21 10:21:00" --until="2018-09-21 10:22:00"
- 查看日志占用的磁盘空间
journalctl --disk-usage
- 设置日志占用的空间
journalctl --vacuum-size=500M
- 设置日志保存的时间
journalctl --vacuum-time=1month