当前位置: 首页 > ops >正文

Linux Systemd 管理java服务

systemd 是现代 Linux 发行版中用于初始化系统并管理服务的主要工具。通过创建一个 .service 文件来定义您的 Java 应用程序服务。

步骤:

1、创建一个服务单元文件,例如 /etc/systemd/system/my-java-app.service

     文件放在linux/etc/systemd/system/目录下,文本内容如下:

[Unit]
Description=MY-JAVA-SERVICE
After=syslog.target network.target[Service]
User=root
WorkingDirectory=/path/
ExecStart=/usr/bin/java -Xms2g -Xmx3g -jar /path/my-java-app.jar
SuccessExitStatus=143
Restart=on-failure
RestartSec=10
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=%n[Install]
WantedBy=multi-user.target

2、刷新 systemd 配置:sudo systemctl daemon-reload

3、启动服务:sudo systemctl start my-java-app

相关命令:

# 重载 systemd 配置
sudo systemctl daemon-reload# 启动服务
sudo systemctl start my-java-app# 停止服务
sudo systemctl stop my-java-app# 设置开机自启
sudo systemctl enable my-java-app# 查看状态
sudo systemctl status my-java-app# 查看日志
journalctl -u my-java-app -f

使用 journalctl -u my-java-app -f 命令可以实时查看指定服务的日志输出(类似于 tail -f 对文件的操作)。当你想要退出这个实时查看模式时,可以按照以下步骤操作:如何退出
•快捷键:在终端中按 Ctrl+C 可以中断当前正在执行的命令,包括 journalctl 的实时跟踪。这将停止日志的实时显示并返回到命令提示符。
其他有用的 journalctl 命令选项虽然不直接与退出有关,但了解这些选项可以帮助更有效地查看日志:
•查看特定时间段的日志:你可以使用 -S 和 -U 参数来指定开始和结束时间,例如 journalctl -u my-java-app -S "2023-05-22 14:00:00" -U "2023-05-22 15:00:00"。
•查看最近的日志:如果你只是想查看最新的日志条目而不是持续监控,可以省略 -f 参数,即 journalctl -u my-java-app。默认情况下,它会列出所有相关日志,最后显示最新的条目。
•分页查看:如果日志量很大,可以直接运行 journalctl -u my-java-app,然后使用方向键滚动浏览,或者配合 less 使用(实际上 journalctl 默认就是用 less 来分页的),按 q 键退出查看。
通过这些方法,您可以更加灵活地管理和查看系统服务日志。

http://www.xdnf.cn/news/8151.html

相关文章:

  • Java微服务架构:Spring Cloud全栈指南,附最新Demo源码,可独立运行!
  • 新能源汽车核心元器件深度解析
  • 装备制造企业如何解决项目管理难题?
  • 应用案例 | 集成Docker,解锁 HMI/网关的定制化应用
  • LeetCode:贪心算法
  • MySQL三种备份方式介绍
  • 完全背包模板
  • sqlserver数据库查询执行慢的sql、查询隔离级别、设置快照模式、查询锁表进程、锁表sql、解锁等
  • 30.第二阶段x64游戏实战-认识网络数据包发送流程
  • 网络安全-等级保护(等保) 3-1 GB/T 28448-2019 《信息安全技术 网络安全等级保护测评要求》-2019-05-10发布【现行】
  • Mujoco 学习系列(四)官方模型仓库 mujoco_menagerie
  • 道可云人工智能每日资讯|谷歌搜索正式引入AI模式
  • OpenCv高阶(十七)——dlib库安装、dlib人脸检测
  • Docker 挂载策略:何时使用临时容器拷贝默认配置,何时直接挂载?
  • 3.9/Q1,GBD数据库最新文章解读
  • C语言命名规范
  • 【小呆的随机振动力学笔记】随机过程基础【一】
  • 详解受约束的强化学习(二、理解学习)
  • Docker 疑难杂症全攻略:从环境搭建到生产故障的全链路解决方案
  • 计算机网络学习(二)——DNS
  • 智慧在线判题OJ系统项目总体,包含功能开发思路,内部中间件,已经部分知识点
  • 工业机器人RTOS“微秒级战争”:实时Linux能否打破传统RTOS的垄断局面?
  • ModbusRTU转profibusDP网关接三菱变频器与PLC通讯
  • 中国核电信息技术峰会|麒麟信安锻造电力“数智基座“,护航核电安全新生态
  • KaihongOS设备开发中Sensor 驱动开发
  • 【前端】每日一道面试题5:解释Proxy和Reflect的典型应用场景,如何用它们实现数据双向绑定?
  • 48页 @《人工智能生命体 新启点》中國龍 原创连载
  • 2025软考高级信息系统项目管理师英文选择题---管理类常见英语词汇
  • Ubuntu+Docker+内网穿透:保姆级教程实现安卓开发环境远程部署
  • 安卓原生兼容服务器