Linux 上 Jenkins 故障排查步骤
一 快速定位与通用检查
二 常见故障与修复对照表
| 症状 | 快速检查 | 修复建议 |
|---|---|---|
| 无法访问 http://IP:8080 | ss/netstat 查 8080 监听;firewalld/iptables 状态 | 开放端口:firewall-cmd --permanent --add-port=8080/tcp && firewall-cmd --reload;或临时 systemctl stop firewalld 验证;必要时修改 JENKINS_PORT 并重启 |
| systemctl 启动失败 | systemctl status jenkins、journalctl -xe | 在 jenkins.service 中显式设置 JAVA_HOME;执行 daemon-reload 后重启 |
| 启动报错 “Job for jenkins.service failed …” | 查看 jenkins.log 首屏异常 | 检查 /etc/init.d/jenkins 或 jenkins.service 中的 Java 路径 与配置文件语法 |
| 插件更新超时 | 管理界面提示 SocketTimeoutException | 更换可连通的更新源(如 清华镜像),或离线安装 .hpi 插件 |
| 插件导致无法启动 | 近期升级插件后异常 | 临时将 $JENKINS_HOME/plugins 重命名(如 plugins.bak),启动后再逐个恢复定位问题插件 |
| 构建失败且报依赖/环境问题 | 查看构建控制台输出 | 确认构建节点 JDK 与工具链版本匹配;检查 Maven/Node 等可执行文件在 PATH 中可用 |
| SSH 发布失败 | 控制台报密钥错误 | 生成兼容格式密钥:ssh-keygen -m PEM -t rsa -b 4096 |
| 忘记管理员密码 | 无法登录 Web | 使用 /var/lib/jenkins/secrets/initialAdminPassword 获取初始密码(首次安装或未设置前) |
| 磁盘写满导致异常 | df -h 显示 100% | 清理工作空间/旧构建/归档产物;配置 Log Rotator 或 logrotate 控制日志增长 |
三 日志与构建诊断
四 配置与权限修复
五 网络与插件源优化