我有一台运行 jenkins 的 redhat linux 服务器。我按照此处提到的说明设置了 jenkinshttps://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Red+Hat+distributions问题是我需要切换到 jenkins 用户才能解决 ssh 连接问题,但我不能。
我尝试
su - jenkins
然而,在我输入之后,终端仍然存在[root@redhat ~]#
,并whoami
显示我仍然是,root
我查看了文件/etc/passwd etc/shadow
并看到 jenkins 是一个用户,但我没有足够的经验来判断我在设置这个 jenkins 用户时做错了什么。
有什么想法有帮助吗?或者有什么地方可以寻找线索吗?
答案1
jenkins 是一个没有配置 shell 的服务账户吗?/etc/password
如果是的话,尝试一下
sudo su -s /bin/bash jenkins
答案2
不要更改 /etc/passwd 文件。交互式登录设置为 false 是有充分理由的,安全隐患列表太长,无法在此描述。
相反,以 root 身份运行此命令:
sudo su - jenkins -s /bin/bash
答案3
另一个选择是更改 jenkins 的 shell。
运行以下命令:
chsh -s /bin/bash jenkins
现在你只需输入以下命令即可切换为詹金斯用户su jenkins