Les fichiers de gestion d'utilisateurs sont /etc/passwd
et /etc/group
. La commande qui gère les utilisateurs est adduser
.
Chaque compte est référencé dans le fichier /etc/passwd
, qui contient une ligne par utilisateur avec divers attributs. Voici la syntaxe du fichier /etc/passwd
:
Nom:Mot de passe:No d'utilisateur:No de groupe:Champ special:
Repertoire personnel:Programme de demarrage
Le mot de passe est bien entendu crypté (0 pour root), et si le premier charactère de ce champ est une astérisque (*), il ne correspondra alors à aucun mot de passe possible. Ce champ peut par ailleurs être vide (mais c'est déconseillé...). Pour changer de mot de passe, taper la commande passwd
. Le numéro d'utilisateur UID est propre à l'utilisateur, c'est par lui que le système distingue les différents utilisateurs. De même le numéro de groupe GID est propre à un groupe d'utilisateurs. Le champ spécial contient des informations personnelles, comme le véritable nom de l'utilisateur ou son adresse. Des programmes comme finger
ou mail
peuvent utiliser ces informations.
A propos du mot de passe, le fichier /etc/passwd
doit être autorisé en lecture par tous car c'est sur ce fichier que se basent certains programmes. Ce mot de passe est souvent matérialisé par le charactère 'x' dans le fichier /etc/passwd
, ce qui signifie qu'en fait il est stoqué pour des raisons évidentes de sécurité dans un autre fichier aux droits d'accés plus resctrictifs. En effet, même crypté, il n'est pas impossible de retrouver le mot de passe...
Ce fichier, qui contient lui les mots de passes cyptés, s'appelle /etc/shadow
. C'est la commande /usr/sbin/pwconv
qui s'occupe de transférer les mots de passes cryptés, commande à utiliser donc après chaque modification de /etc/passwd
.
Pour créer un compte ``à la main'', il suffit de rajouter dans les fichiers /etc/passwd
et, si besoin est, dans le fichier /etc/group
, une ligne comme expliqué ci-dessus, et de créer le répertoire personnel :
mkdir /home/toto cp /etc/skel/* /home/toto chown toto /home/toto chgrp le_groupe_de_toto /home/toto
Il ne reste plus qu'à attribuer un mot de passe en tapant passwd toto
.
Voici la syntaxe du fichier /etc/group
:
Nom de groupe:Champ special:No de groupe:Membre1, Membre2
...
Tous les utilisateurs d'un même groupe peuvent jouir des mêmes droits d'accès sur les fichiers de leurs groupes (voir section 1.9.6 page concernant les droits d'accès aux fichiers). Les commandes utiles sont chown
(change de propriétaire, option -R pour tous les sous répertoires), chgrp
9.3 ou newgrp
(change de groupe), chmod
(change de droits d'accés) et bien entendu mkdir
. Noter que si on n'opère pas en tant que root, la commande chown
ne permet plus de changer de groupe, il vaut donc mieux l'exécuter en dernier...
Pour supprimer un compte, il existe une commande :
userdel -r piou
L'option -r force à la suppression du répertoire personnel. Tous les fichiers restants appartenant à l'utilisateur piou peuvent être trouvés grâce à la commande find
:
find / -user piou -ls
ou, si la ligne concernant l'utilisateur dans le fichier /etc/group
a été supprimée, avec l'option -uid :
find / -uid 501 -ls