背景
重新安裝了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蛋疼的放在某個用戶下面
