我已经在centos 7上安装并配置了jenkins。在文件 /etc/init.d/jenkins中* 添加了有效的 Java路径, 即“ / usr / bin / java” 。 *
以下是Java路径detils:
lrwxrwxrwx. 1 root root 22 Dec 24 2015 java -> /etc/alternatives/java
现在,以 root用户 运行“ service jenkins start”命令后,出现以下错误。
● jenkins.service - LSB: Jenkins Continuous Integration Server Loaded: loaded (/etc/rc.d/init.d/jenkins) Active: failed (Result: exit-code) since Wed 2016-07-13 18:25:51 IST; 5s ago Docs: man:systemd-sysv-generator(8) Process: 807 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=1/FAILURE) Jul 13 18:25:51 localhost systemd[1]: Starting LSB: Jenkins Continuous Integration Server... Jul 13 18:25:51 localhost runuser[812]: pam_unix(runuser:session): session opened for user jenkins by (uid=0) Jul 13 18:25:51 localhost jenkins[807]: Starting Jenkins bash: /usr/bin/java: Permission denied Jul 13 18:25:51 localhost runuser[812]: pam_unix(runuser:session): session closed for user jenkins Jul 13 18:25:51 localhost jenkins[807]: [FAILED] Jul 13 18:25:51 localhost systemd[1]: jenkins.service: control process exited, code=exited status=1 Jul 13 18:25:51 localhost systemd[1]: Failed to start LSB: Jenkins Continuous Integration Server. Jul 13 18:25:51 localhost systemd[1]: Unit jenkins.service entered failed state. Jul 13 18:25:51 localhost systemd[1]: jenkins.service failed.
我无法弄清楚为什么即使每个用户都可以访问Java路径,它也会拒绝我的权限。
同样在运行“ journalctl -xe”命令时,它在日志下方显示:
Jul 13 18:45:33 localhost systemd[1]: Unit jenkins.service entered failed state. Jul 13 18:45:33 localhost systemd[1]: jenkins.service failed. Jul 13 18:45:33 localhost polkitd[20151]: Unregistered Authentication Agent for unix-process:27889:3161602 (system bus name :1.303, object path /org/freedesktop/PolicyKit1/AuthenticationAgen
就像Jenkins服务没有访问Java路径的权限吗?如果不是,为什么会出现该错误?
您有两种选择来解决问题。
User=jenkins
User=root