[英]Cannot run cookiecutter after installing with pip in jenkins
[英]Can't su to user jenkins after installing Jenkins
我已經安裝了 jenkins,我正試圖以 Jenkins 的身份進入 shell 以添加 ssh 密鑰。 我似乎無法進入 jenkins 用戶:
[root@pacmandev /]# sudo su jenkins
[root@pacmandev /]# whoami
root
[root@pacmandev /]# echo $USER
root
[root@pacmandev /]#
jenkins 用戶存在於我的 /etc/passwd 文件中。 Runnin su jenkins
要求輸入密碼,但拒絕了我的正常密碼。 sudo su jenkins
似乎什么也沒做; sudo su - jenkins
。 我在 CentOS 上。
jenkins 是一個服務帳戶,它沒有設計外殼。 人們普遍認為服務帳戶不應該能夠以交互方式登錄。
我最初沒有回答這個問題,因為它與已移至 server fault 的問題重復。 我應該在評論中回答而不是鏈接到答案。
如果由於某種原因你想以 jenkins 身份登錄,你可以這樣做: sudo su -s /bin/bash jenkins
使用以下命令:
su -s /bin/bash jenkins
當我們安裝 Jenkins 時,它使用 = "/bin/false" 創建了一個 Jenkins 用戶
您將從 cat /etc/password 文件中獲取該信息。
cat /etc/passwd | grep jenkins
jenkins:x:995:993:Jenkins Automation Server:/var/lib/jenkins:/bin/false
@thekbb 在上面的回答中已經提到了最好的方法
su - jenkins -s /bin/bash
我們還可以使用 /etc/shells 文件中提到的任何其他 shell 進行切換。
cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/bin/tcsh
/bin/csh
要永久進行更改,您可以修改 /etc/passwd,但強烈建議不要這樣做,因為它是 Apache、MySQL、Nginx 等服務/應用程序用戶。
jenkins:x:995:993:Jenkins Automation Server:/var/lib/jenkins:/bin/bash
如果你在 docker 中使用 jenkins。 那么你應該嘗試以下方法。
首先你需要運行 jenkins 容器“docker start (container-name or container-id)”
然后運行這個命令“docker exec -it (container-name or container-id) bash”
現在希望您將作為 jenkins 用戶使用。
下面提到的命令對我有用
“須藤蘇詹金斯”
以 root 身份輸入su - jenkins
另外,檢查/etc/passwd是否允許用戶 jenkins 登錄:應該有/bin/bash或/bin/sh之類的東西,當然不是/bin/false在行尾。
提示:不要同時使用su和sudo 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.