jenkins安装后,会创建一个jenkins用户,之后jenkins上任务的执行,都是以这个用户来执行的。
但是,有时候,我们是需要使用其他用户来执行jenkins的任务的,因此就要修改jenkins执行的默认用户,将之修改为我们想要执行任务的用户。
如我们想让jenkins的任务,执行在 jun.lu 用户下。
首先修改,jenkins的配置文件 jenkins 文件。不同的系统,文件位置不一样。
- centos系统: /etc/sysconfig/jenkins
-
Ubuntu系统: /etc/default/jenkins
首先是修改 JENKINS_HOME 变量。该变量,表明将来,jenkins的文件,生成在什么地方
修改 JENKINS_USER 变量, 该变量,表示将来,jenkins是以哪一个用户,执行任务。
注释有说明,要确保 $JENKINS_HOME 和 /var/log/jenkins 目录的权限 是指定的用户,可以访问的。
将$JENKINS_HOME和/var/log/jenkins的属主设置为 jun.lu, 数组设置为 jun.lu用户对应的属组。
如果文件权限设置不正确,将来启动Jenkins后,查看jenkins状态的时候,就会出现以下错误:
jenkins dead but pid file exists |
该错误,说明,为jenkins生成了pid.file,但是jenkins这个服务并没有被执行。
对于/var/log/jenkins文件夹,启动jenkins后,会自动创建。
启动jenkins,使用命令:
/etc/init.d/jenkins start
查看jenkins状态,使用命令:
/etc/init.d/jenkins status
以上状态,就表示jenkins启动了,但是不一定成功启动,还需要查看/var/log/jenkins/jenkins.log文件。如果没有显示上述,信息,说明jenkins启动失败,查看 /var/log/jenkins/jenkins.log 文件,找到失败原因。
一般的失败原因,是文件权限的问题,如以下错误:
红色部分的文件的权限不能访问,查看该文件夹。发现文件夹的属主和属组都是jenkins,进行修改。
使用命令
chown jun.lu:jun.lu jenkins -R
将文件属主和属组进行修改。
重新启动jenkins。
浏览器,输入ip地址和端口号,就可以看到jenkins界面了。