在本地服务器上安装Jenkins时,我已经有一个名为;詹金斯;

在本地服务器上安装Jenkins时,我已经有一个名为;詹金斯;,jenkins,Jenkins,我正在本地服务器上安装jenkins,以便在网络中本地访问。我在jenkins的文档中看到这一行: 创建“jenkins”用户以运行此服务。如果你改变这个 通过配置文件发送给其他用户时,必须更改 /var/log/jenkins、/var/lib/jenkins和/var/cache/jenkins 在安装jenkins之前,我已经在centos服务器上创建了jenkins用户。詹金斯跑着,似乎工作得很好。我很好奇,创建一个同名用户是否会在将来出现任何问题。TL;DRJenkins将使用您创建的

我正在本地服务器上安装jenkins,以便在网络中本地访问。我在jenkins的文档中看到这一行:

创建“jenkins”用户以运行此服务。如果你改变这个 通过配置文件发送给其他用户时,必须更改 /var/log/jenkins、/var/lib/jenkins和/var/cache/jenkins


在安装jenkins之前,我已经在centos服务器上创建了jenkins用户。詹金斯跑着,似乎工作得很好。我很好奇,创建一个同名用户是否会在将来出现任何问题。

TL;DRJenkins将使用您创建的用户,但您可能需要再次检查某些设置的一致性

Jenkins软件包中的预安装脚本(见下文)将尝试创建Jenkins用户和Jenkins组,但如果由于用户或组存在而导致任何一个步骤失败,则这不是一个错误——发生这种情况的常见情况是,用户帐户仍然来自以前的Jenkins安装。Jenkins将使用现有用户运行,并正确设置Jenkins目录上的权限

/usr/sbin/groupadd -r jenkins &>/dev/null || :
# SUSE version had -o here, but in Fedora -o isn't allowed without -u
/usr/sbin/useradd -g jenkins -s /bin/false -r -c "Jenkins Continuous Integration Server" \
        -d "/var/lib/jenkins" jenkins &>/dev/null || :
假设这是你想要的,一切都很好。您可能需要检查以下几点:

  • Jenkins创建了一个没有登录权限的系统用户(shell为
    /bin/false
    )。这意味着jenkins用户将能够运行进程并拥有文件和目录,但不能通过ssh或控制台登录。这是一种安全设置,可减少可能的入侵向量。根据jenkins用户的计划,您可能希望类似地禁用登录
  • jenkins用户的主要组是jenkins
  • jenkins用户的主目录设置为/var/lib/jenkins
最后两个主要是为了方便——例如,让其他用户可以读取Jenkins日志文件(属于相关组)可能会很有用。我想不出如果这些设置没有在预安装脚本中设置,会出现什么问题,但保持一致似乎是个好主意

这些用户帐户设置存储在/etc/passwd中。在Debian/Ubuntu发行版上,可以使用修改用户帐户设置

如果用户“jenkins”已经存在,则不会导致任何问题,除非您取消了执行某些操作(如访问配置目录、ssh身份验证、装载等)的权限


我使用过一个现有用户,但从未造成任何一致性或性能问题。

您是如何安装Jenkins的?打印到控制台或系统日志的内容,或尝试启动Jenkins时记录Jenkins?@Christopher通过以下方式安装:
sudo wget-O/etc/yum.repos.d/Jenkins.repohttp://pkg.jenkins-ci.org/redhat/jenkins.repo
然后
sudo rpm——导入https://jenkins-ci.org/redhat/jenkins-ci.org.key
然后
sudo-yum-install-jenkins
“保持一致的好主意”。两年后,当你使用服务器时,有一个一致的设置会有所帮助。对于#1:对于#1,没有登录权限的用户是什么意思?我在哪里可以检查该设置?对于#2,我可以自己解决这个问题。对于#3:在哪里检查用户主目录?@EGHDK检查用户设置的简单方法是
grep jenkins/etc/passwd
,它返回一个以冒号分隔的字符串,其中包含各种用户帐户设置。在Debian/Ubuntu上,可以使用修改用户帐户。