web-dev-qa-db-fra.com

Comment ajouter un utilisateur sans commande useradd?

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/shadow mais je ne connais pas les étapes exactes pour le faire et l'utilisateur doit obtenir son répertoire personnel et son shell bash.

10
mr_eclair

Il n'est pas recommandé de modifier manuellement /etc/passwd, /etc/shadow, /etc/group ou /etc/gshadow en raison du risque de rupture. Si vous recherchez une commande alternative plus facile à utiliser, regardez adduser(8) . Tout ce que vous avez à courir est:

Sudo adduser user

Le shell sera par défaut /bin/bash par /etc/adduser.conf.

Généralement, si vous souhaitez ajouter un utilisateur avec le shell bash, créez ainsi un répertoire de base /home/user et un groupe d'utilisateurs, utilisez:

Sudo useradd --create-home --Shell /bin/bash --user-group user

Cette commande consiste essentiellement à déterminer un ID utilisateur libre $UID et un ID de groupe $GID, puis à exécuter 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 réalisant ainsi éventuellement une sauvegarde des fichiers.

Les pages de manuel suivantes sur les formats de fichier peuvent vous intéresser:

19
Lekensteyn

Bien que cela ne soit généralement ni nécessaire ni recommandé, la réponse à la question de Comment ajouter un utilisateur sans commande useradd consiste à utiliser Sudo vipw

Ceci lancera votre éditeur défini par le système lors du verrouillage du fichier passwd. Entrez une ligne pour un nouvel utilisateur. (Dans vi, shift-G pour aller à la dernière ligne puis yy p pour le dupliquer.) Modifiez le nom d'utilisateur et créez un numéro d'identification 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 username pour le déverrouiller et définir un mot de passe.

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

Source: http://itguykelly.wordpress.com/2011/04/19/manually-add-new-user-to-red-hatfedoracentos/ (oui, ces commandes fonctionnent avec différents types de * rien)

1
DrumEater

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

0
govind saraf