CentOS7环境升级Jenkins提示junit.jpi文件不可写错误如何解决
问题根因定位
从报错堆栈可以直接确认核心问题:Jenkins进程启动时需要向插件目录写入新版捆绑的junit插件,但目标文件无写入权限,导致初始化流程直接中断,服务未正常启动,因此出现整页无法加载的报错。
排查步骤
- 确认Jenkins服务运行状态:执行
systemctl status jenkins,确认服务是否处于启动失败的状态 - 检查插件目录权限:执行
ls -ld /var/lib/jenkins/plugins/,确认目录属主是否为jenkins:jenkins,权限是否为755 - 检查报错的具体文件权限:执行
ls -l /var/lib/jenkins/plugins/junit.jpi*,确认文件属主和权限,排查是否存在root用户占用的情况(通常是升级时误操作使用root手动修改过插件目录文件导致) - 检查磁盘空间与inode占用:执行
df -h /var/lib/jenkins和df -i /var/lib/jenkins,排除分区满、inode耗尽导致的无法写入问题
解决方法
- 若为权限归属错误,执行以下命令递归修正Jenkins家目录权限:
chown -R jenkins:jenkins /var/lib/jenkins/ chmod -R u+rw /var/lib/jenkins/
- 若为插件文件损坏,可以先删除损坏的junit插件文件,重启后Jenkins会自动重新写入捆绑的新版插件:
rm -f /var/lib/jenkins/plugins/junit.jpi /var/lib/jenkins/plugins/junit.jpi.pinned
- 处理完成后重启Jenkins服务:
systemctl restart jenkins,等待1-2分钟后再访问服务验证 - 若重启后仍有同类其他插件不可写报错,重复上述权限修正和删除对应损坏插件文件的操作即可
内容的提问来源于stack exchange,提问作者Zach
相关产品推荐
相关产品推荐

