Azure CentOS虚拟机重启后启动Jira报错:jira.service未找到
Jira服务启动报错"Unit jira.service not found"的原因排查
以下是几种常见的原因及对应检查/解决方式:
服务配置文件丢失或损坏
Jira的systemd服务文件一般存在于/etc/systemd/system/jira.service或/usr/lib/systemd/system/jira.service路径。虚拟机关机重启时可能因文件系统异常导致该文件被误删或损坏。直接检查这两个路径:ls -l /etc/systemd/system/jira.service ls -l /usr/lib/systemd/system/jira.service如果文件不存在,要么是之前没正确创建,要么是被意外删除,需要重新创建。
systemd缓存未更新
就算服务文件存在,systemd也可能因为缓存没刷新而识别不到。先重新加载systemd配置:systemctl daemon-reload之后再尝试启动Jira:
systemctl start jira.serviceAzure临时磁盘的影响
部分Azure虚拟机默认会挂载临时磁盘,这类磁盘关机后会被清空。如果当初把Jira的服务文件放在临时磁盘挂载目录(比如/mnt),重启后自然就没了。确认服务文件所在目录属于系统永久磁盘(/etc、/usr都是永久存储路径)。服务文件权限异常
服务文件存在但权限不对的话,systemd也无法读取。检查权限:ls -l /etc/systemd/system/jira.service正常权限应为
-rw-r--r--,所有者和组都是root。如果权限不对,执行以下命令修正:chmod 644 /etc/systemd/system/jira.service chown root:root /etc/systemd/system/jira.service修正后重新加载systemd配置再启动服务。
手动安装未注册服务
如果是手动解压安装的Jira(不是用包管理器安装),当初可能只是临时启动,没创建systemd服务文件。这种情况需要手动创建:- 创建服务文件:
vi /etc/systemd/system/jira.service - 写入配置内容(注意替换成你的Jira实际安装路径和运行用户):
[Unit] Description=Jira Service After=network.target [Service] Type=forking User=jira ExecStart=/opt/atlassian/jira/bin/start-jira.sh ExecStop=/opt/atlassian/jira/bin/stop-jira.sh Restart=on-failure [Install] WantedBy=multi-user.target - 保存后执行以下命令完成注册:
systemctl daemon-reload systemctl enable jira.service
- 创建服务文件:
内容的提问来源于stack exchange,提问作者Richard Wolford
相关产品推荐
相关产品推荐

