-
切换root用户
su root
- 设置免密 命令
sudo visudo
- 粘贴到最后一行 并保存
userName ALL=(ALL) NOPASSWD:ALL
- 在 /etc/systemd/system/目录下创建服务文件
/etc/systemd/system/tomcat8080.service
- 修改tomcat8080.service 内容
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
User=tomcat
Group=tomcat
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
- 重新加载system服务
sudo systemctl daemon-reload
- 设置开机启动
sudo systemctl enable tomcat8080.service
- 手动启动服务
sudo systemctl start tomcat8080
- 查看服务状态
sudo systemctl status tomcat8080
- 如果启动失败可以使用journalctl命令查看服务日志(最后50行)
sudo journalctl -u tomcat8080.service --since "5 minutes ago" -n 50
如果是jar包 只需要修改tomcat8080.service
[Unit]
Description=My Java Application
After=network.target
[Service]
Type=simple
WorkingDirectory=/path/to/your/app
ExecStart=/bin/bash -c 'exec /usr/bin/java -jar your-app.jar >> /path/to/specified/logfile.log 2>&1'
Restart=always
RestartSec=5
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target