No puedo su al usuario jenkins después de instalar Jenkins

96

Instalé jenkins y estoy tratando de ingresar a un shell como Jenkins para agregar una clave ssh. Parece que no puedo aceptar el usuario de jenkins:

[root@pacmandev /]# sudo su jenkins
[root@pacmandev /]# whoami
root
[root@pacmandev /]# echo $USER
root
[root@pacmandev /]# 

El usuario de jenkins existe en mi archivo / etc / passwd. Runnin su jenkinspide una contraseña, pero rechaza mi contraseña normal. sudo su jenkinsno parece hacer nada; lo mismo para sudo su - jenkins. Estoy en CentOS.

sfendell
fuente
El usuario existe ... pero probablemente no tiene cáscara, ver superuser.com/questions/566041/...
thekbb
No necesitas sudo cuando eres root. Aunque no duele.
thekbb
12
sudo usermod -s /bin/bash jenkins
jgb
1
no agregue un caparazón a jenkins, falta uno por diseño. Por lo general, no desea que las cuentas de servicio puedan iniciar sesión de forma interactiva.
thekbb

Respuestas:

235

jenkins es una cuenta de servicio, no tiene un shell por diseño. En general, se acepta que las cuentas de servicio no deberían poder iniciar sesión de forma interactiva.

No respondí a esta inicialmente porque es un duplicado de una pregunta que se ha movido a error del servidor . Debería haber respondido en lugar de vincularme a la respuesta en un comentario.

si por alguna razón desea iniciar sesión como jenkins, puede hacerlo con: sudo su -s /bin/bash jenkins

thekbb
fuente
8
¡Gracias! Entiendo que agregar un shell a jenkins parece una mala idea; Solo lo estaba haciendo porque había comandos en mi proceso de compilación que no tenía problemas para ejecutar desde mi shell, pero la compilación fallaba porque no podía ejecutarlos. Quería entrar como jenkins y ver si había problemas de permisos.
sfendell
editó la respuesta para incorporar la información exactamente correcta de @mrg sobre la necesidad sudo.
thekbb
1
¿Hay una contraseña predeterminada que solicita porque no recuerdo haber configurado una contraseña durante la instalación?
Joe Lloyd
@mrg ¿Qué contraseña usaste?
Nabin
@JoeLloyd ¿Descubriste la contraseña predeterminada? ¿Cual es la contraseña?
Nabin
1

Utilice el siguiente comando:

su -s /bin/bash jenkins
Sudipto Das
fuente
-1

Si usa jenkins dentro de docker. Entonces deberías probar lo siguiente.

  • Primero debe ejecutar el contenedor jenkins "docker start (container-name o container-id)"

  • Luego ejecute este comando "docker exec -it (nombre del contenedor o id del contenedor) bash"

Ahora, con suerte, lo usará como usuario de jenkins.

Ashik Ahmed
fuente
-11

como root, ingrese su - jenkins

Además, verifique en / etc / passwd que el usuario jenkins puede iniciar sesión: debería haber algo como / bin / bash o / bin / sh , ciertamente no / bin / false al final de la línea.

Sugerencia: no usa su y sudo al mismo tiempo.

Rotscher
fuente
1
ese es exactamente el comando que intentó el OP ... tiene razón en cuanto a por qué jenkins no puede iniciar sesión, pero no estoy de acuerdo con su solución.
thekbb