启动jenkins服务错误

简介: 背景 重新安装了jenkins,需要启动,使用的yum install安装的,启动jenkins的话只需要执行service jenkins start,但出了两个问题 1. 是提示找不到java 2.

背景

重新安装了jenkins,需要启动,使用的yum install安装的,启动jenkins的话只需要执行service jenkins start,但出了两个问题

1. 是提示找不到java

2. 设置好了java后,提示没有权限

提示如下:

Starting Jenkins bash: /usr/bin/java: No such file or directory

starting jenkins bash /usr/bin/java permission denied

 

解决步骤

1. 第一个问题,Jenkins bash: /usr/bin/java: No such file or directory

这个问题比较好解决,因为没有配置好jdk导致的,重新安装jdk,配置好环境变量就行

2. 第二个问题,starting jenkins bash /usr/bin/java permission denied

权限问题的话,首先是添加权限,于是执行

chmod a+x /usr/bin/java

执行后,问题还在,继续google有这么一个解释:

You have two options to solve the problem.

1. Jenkins service is started by jenkins user. The error says that jenkins user does not have permission to run java. So check orginal java path and give execute permissions to other users.
2. In jenkins.service unit file, change the owner of the service. Replace User=jenkins with User=root

第一种就是修改权限,但一开始就是这么做的还是不能解决这个问题,猜测这里是涉及到了文件权限和文件夹权限的原因,有文件权限了的,但不一定有文件夹权限

第二种就是需要修改jenkins的启动用户,因为jenkins的配置中默认是以jenkins这个用户去启动jenkins服务的,所以需要修改/etc/sysconfig/jenkins里面的内容,将user=jenkins修改为user=root,就是用root去启动jenkins

不推荐修改用户的方式来解决该问题,但这样确实可以解决

那么为啥第一种方式不行呢,猜测是文件夹目录权限的问题,于是尝试移动jdk的目录,因为我当时jdk是配置在一个用户下面,比如是jwen,当时jdk的home目录是:/home/jwen/local/jdk8

猜测是因为jwen用户的原因导致jenkins用户无法执行java文件,

mv /home/jwen/local/jdk8 /usr/local/

移动到公共目录,就是跟用户没有关系

然后修改配置文件,重新加载配置文件:

# 修改配置文件
vim /etc/profile

# 重新加载
source /etc/profile

成功了,jenkins启动了

 

小结

软件的安装别TM蛋疼的放在某个用户下面

虽千万人,吾往矣!
目录
相关文章
|
jenkins Java Shell
容器 & 服务:Jenkins构建实例
这次准备研究容器相关技术,并不仅仅是学习,而是基于项目的实战。而使用容器的几个典型场景之一,就是通过容器构建/部署应用服务,而这与持续继承是密切相关的。我们可以使用jenkins,也可以使用其他持续继承工具,但最终都离不开对这类工具的理解和应用。在后续的学习中,还会有很多与持续继承工具紧密关联的实践案例,也会有很多问题需要深入调研解决。
139 0
|
Java jenkins 持续交付
服务搭建篇(十) 使用GitLab+Jenkins搭建CI\CD执行环境 (下) 配置整合
上一篇文章搭建了GitLab+Jenkins的基础环境 , 现在基于搭建好的环境快速的实现CI/CD , 接下来需要在Jenkins中配置一个构建任务。
137 0
|
运维 Devops Java
服务搭建篇(九) 使用GitLab+Jenkins搭建CI\CD执行环境 (上) 基础环境搭建
所以 , 在现代化的大型软件项目中 , 对于开发的要求还是比较高的 , 虽然不会要求像运维老哥那样linux命令熟练到起飞 , 精通各种参数调优 , 安全策略 , 但是基础的运行环境运维的操作也是需要了解的 , 这样才能指导运维老哥进行业务环境部署 , 也就是开发运维一体化。虽然现在有很多工具能够帮助开发人员减少一些复杂的操作,但是开发人员还是需要更多的接触运维的工作
237 0
|
jenkins Java 持续交付
容器 & 服务:Jenkins本地及docker安装部署
jenkins是常用的开源持续继承工具,现在所在的工作场景,也是使用jenkins进行基于github代码的拉取、打包、构建、部署的一系列流程,并结合了容器和函数计算实现金丝雀部署。本文先从基础的jenkins环境搭建开始。
355 0
|
jenkins Java 应用服务中间件
02-Jenkins-Jenkins服务部署在Tomcat下
02-Jenkins-Jenkins服务部署在Tomcat下
|
弹性计算 运维 Kubernetes
《2023云原生实战案例集》——05 金融服务——视野数科 运维提效60%,SAE+Jenkins打造云原生DevOps
《2023云原生实战案例集》——05 金融服务——视野数科 运维提效60%,SAE+Jenkins打造云原生DevOps
|
存储 前端开发 jenkins
实践:部署Jenkins服务并开发MERN应用的CI/CD构建管道
为了解决这个问题,我们可以创建一个 CI/CD流水线。因此,每当您添加功能或修复错误时,都会触发此管道。这会自动执行从测试到部署的所有步骤。
280 0
|
jenkins Java 持续交付
自从我学会了Jenkins的自动构建,我再也没有每次都打包上传到服务器然后发布Java服务了
自从我学会了Jenkins的自动构建,我再也没有每次都打包上传到服务器然后发布Java服务了
自从我学会了Jenkins的自动构建,我再也没有每次都打包上传到服务器然后发布Java服务了
|
jenkins Linux 持续交付
Linux下Jenkins服务搭建及配置 下
Linux下Jenkins服务搭建及配置 下
Linux下Jenkins服务搭建及配置 下
|
存储 监控 jenkins
Linux下Jenkins服务搭建及配置 上
Linux下Jenkins服务搭建及配置 上
Linux下Jenkins服务搭建及配置 上