前言:由于系统断电导致服务重启,但是一些jar包部署的服务没有设置开机自动启动。
准备:
jar包路径:/data/devicedata/getDeviceData.jar
jdk安装路径:/data/jdk/jdk1.8.0_411/bin/java
步骤1:创建device-sync.service文件
vim /usr/lib/systemd/system/device-sync.service
步骤2:编写device-sync.service文件内容
在编辑器中输入以下内容:
[Unit]
Description=Get Device Data Service
After=network.target
[Service]
Type=simple
ExecStart=/data/jdk/jdk1.8.0_411/bin/java -jar /data/devicedata/getDeviceData.jar
Restart=always
[Install]
WantedBy=multi-user.target
说明:
Description(注释)
After(在哪个服务后执行)
Type=simple(启动类型)
ExecStart(启动命令)
此处只需要修改ExecStart后面的命令即可,其他不动。
步骤3:重新加载 systemd 配置
运行以下命令以使新的服务单元文件生效:
sudo systemctl daemon-reload
步骤4:启动服务并设置开机启动
sudo systemctl start device-sync.service
sudo systemctl enable device-sync.service
步骤5:检查device-sync服务状态
sudo systemctl status xxx.service
最后:启动异常排查
# 查看启动日志错误详情
journalctl -xe