Comment ajouter un utilisateur sans la commande useradd?


11

Est-il possible d'ajouter un utilisateur dans ubuntu linux sans commande useradd Je pense que c'est possible en ajoutant les entrées dans /etc/passwd and /etc/shadowmais je ne connais pas les étapes exactes pour le faire et l'utilisateur devrait également obtenir son répertoire personnel et son shell bash.

Réponses:


19

Il est recommandé de ne pas modifier manuellement /etc/passwd, /etc/shadow, /etc/groupou /etc/gshadowparce que le risque de rupture. Si vous recherchez une commande alternative plus facile à utiliser, jetez un œil à adduser(8). Tout ce que vous devez exécuter est:

sudo adduser user

Le shell sera /bin/bashpar défaut per /etc/adduser.conf.

Habituellement, si vous souhaitez ajouter un utilisateur avec le shell bash, créant ainsi un répertoire personnel /home/useret un groupe d'utilisateurs, vous utiliseriez:

sudo useradd --create-home --shell /bin/bash --user-group user

Cette commande détermine essentiellement un ID utilisateur $UIDet un ID de groupe gratuits $GID, puis exécute les commandes suivantes:

echo "user:x:$UID:$GID::/home/user:/bin/bash" | sudo tee -a /etc/passwd
echo "user:x:$GID:" | sudo tee -a /etc/group
echo "user:!:$DATE_OF_LAST_PASS_CHANGE:0:99999:7:::" | sudo tee -a /etc/shadow
echo "user:!::" | sudo tee -a /etc/gshadow

..et ainsi faire éventuellement une sauvegarde des fichiers.

Les prochaines pages de manuel sur les formats de fichiers peuvent vous intéresser:


hé, Lekensteyn, avez-vous manqué cette première partie de leur message? "Est-il possible d'ajouter un utilisateur dans ubuntu linux sans commande useradd ..." Ils veulent une solution sans useradd: /
Thomas Ward

1
@TheEvilPhoenix: Je pensais qu'il demandait une alternative pour adduser. J'ai maintenant inclus addusercomme réponse. C'est en effet "sans useradd" :)
Lekensteyn

Pas de problème, je voulais le souligner, c'est tout. et pardonne-moi d'être semi-frontalière ... de longues et mauvaises journées de travail avec une panne de serveur en cascade te font ça ...
Thomas Ward

@Tous je veux créer un utilisateur sans useradd en ajoutant des entrées possibles dans / etc / passwd et / etc / shadow
mr_eclair

2
@ m59 >>essaie d'ouvrir un fichier en tant qu'utilisateur actuel (non root) qui échouera avec une erreur Autorisation refusée. En utilisant cela sudo teecontourne. Alternativement, vous pouvez encapsuler la commande dans a sudo sh -c '...'pour éviter ce problème.
Lekensteyn

1

Bien que cela ne soit généralement pas nécessaire ou recommandé, la réponse à la question Comment ajouter un utilisateur sans la commande useradd est d'utilisersudo vipw

Cela lancera votre éditeur défini par le système tout en verrouillant le fichier passwd. Entrez une ligne pour un nouvel utilisateur. (Dans vi, shift-G pour arriver à la dernière ligne puis yy p pour la dupliquer.) Modifiez le nom d'utilisateur et créez un numéro d'ID utilisateur unique.

Après avoir enregistré le fichier et quitté l'éditeur, vous serez invité à modifier / etc / shadow. Utilisez la même technique pour créer une nouvelle ligne et utilisez "*" pour le hachage du mot de passe. Le nouveau compte est verrouillé. Utilisez passwd usernamepour le déverrouiller et définir un mot de passe.

Il est également nécessaire de créer un répertoire personnel, de copier des fichiers à partir du répertoire squelette, de définir des autorisations de groupe, etc. Mais vipwc'est votre principale ressource. Voir aussi vigr.

Source: http://itguykelly.wordpress.com/2011/04/19/manually-add-new-user-to-red-hatfedoracentos/ (oui, ces commandes fonctionnent sur différentes versions de * nix)


0

Lorsque l'utilisateur est créé dans le système, cela a un effet sur les fichiers tels que / etc / passes, / etc / group, / etc / shadow alors parcourez ces fichiers et faites l'entrée manuelle. Et enfin, à partir du fichier / etc / skel, ajoutez un squelette pour l'utilisateur dans le répertoire personnel de l'utilisateur que vous devez créer dans le répertoire personnel.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.