Plus précisément, j'essaye de tester quelque chose sur mon serveur de build en passant à l'utilisateur "jenkins":
sudo su - jenkins
No passwd entry for user 'jenkins'
linux
su
not-root-user
jenkins
kevlarjacket
la source
la source
adduser jenkins
Réponses:
Le message d'erreur est assez explicite. Il indique que l'utilisateur
jenkins
n'a aucune entrée dans le/etc/passwd
fichier, c'est-à-dire que l'utilisateur n'existe pas dans le système.Lorsque vous effectuez des opérations liées à l'utilisateur qui nécessitent un nom d'utilisateur, un mot de passe, un répertoire personnel, des informations sur le shell, le
/etc/passwd
fichier est consulté en premier. Aucune entrée dans ce fichier ne conduit à l'erreur même que vous obtenez. Vous devez donc d'abord créer l'utilisateur (useradd
/adduser
). En remarque, sauf si nécessaire, vous devez créer un utilisateur spécifique au service (non humain), par exemple enjenkins
tant qu'utilisateur système.la source
/etc/passwd
). Sur la plupart des systèmes modernes, les mots de passe en tant que tels sont stockés ailleurs - souvent dans/etc/shadow
.Après une recherche rapide de "Liste de tous les utilisateurs sous Linux", j'ai trouvé cette réponse et j'ai exécuté la commande suivante:
et, comme l'a suggéré @Ipor Sircer, cet utilisateur n'existe pas réellement, et je dois l'ajouter avec:
la source
jenkins
utilisateur par vous-même est-elle la même que celle créée par jenkins lui-même?