Utilisateurs et groupes

De ArchwikiFR


Liste des fichiers

Attention : Ne modifiez pas ces fichiers directement. Il existe des utilitaires qui gèrent correctement l'accès à ces fichiers (certains ne devant pas être accessibles, même en lecture, à tous les utilisateurs) et évitent d'invalider le format de ces données, voir ci-après pour la gestion des utilisateurs et des groupes.
Fichier Description Plus d'informations
/etc/passwd Information sur les comptes utilisateurs man 5 passwd
/etc/shadow information cachée sur les comptes utilisateurs man 5 shadow
/etc/group Défini les groupes auxquels les utilisateurs appartiennent man 5 group
/etc/gshadow Information cachée sur les groupes man 5 gshadow
/etc/sudoers Liste de qui peut lancer quoi avec sudo man 5 sudoers
/home/* Répertoires utilisateurs
Note : Les commandes pwck et grpck permettent de vérifier respectivement la cohérence des informations sur les mots de passe des utilisateurs (/etc/passwd et /etc/shadow) et les informations des groupes (/etc/group et /etc/gshadow). Pour information, ces vérifications sont faites au démarrage du système par le biais du service shadow.

Utilisateurs

Les utilisateurs sont stockés dans le fichier /etc/passwd.

cat /etc/passwd

Vous pouvez ajouter un utilisateur à l'aide de la commande useradd :

useradd -G groupe1,groupe2 -m <utilisateur>
Note : La commande adduser (et non useradd) propose la création d'un utilisateur de manière interactive. Il vous faudra installer adduser ou adduser-defaults depuis AUR. Attention cependant, car ce support n'est pas officiel: cf. rapport de bug FS#32893

Pour définir un mot de passe pour un utilisateur :

passwd <utilisateur>

Pour supprimer un utilisateur :

userdel -r <utilisateur>

L'option -r permet de supprimer le répertoire de l'utilisateur ainsi que son fichier de mails en attente.

Pour ajouter un utilisateur à un groupe existant (sans conserver les anciens groupes auquel appartient l'utilisateur) :

usermod -G groupe1,groupe2,groupeN user

Pour ajouter un utilisateur à un groupe existant (en conservant les groupes actuels auquel appartient l'utilisateur) :

usermod -aG groupe1,groupe2,groupeN user

Pour vérifier que l'utilisateur appartient bien à ce groupe :

groups user

Groupes

Les groupes sont disponibles dans le fichier /etc/group. Il est possible de connaître les groupes d'un utilisateur à l'aide de l'une des commandes groups, id ou:

cat /etc/group

Pour en créer un:

groupadd <groupe>

Ajouter un utilisateur au groupe:

gpasswd -a <utilisateur> <groupe>

Il est possible de rajouter plusieurs groupes à un utilisateur:

usermod -aG groupe1,groupe2 <utilisateur>

Pour effacer un groupe:

groupdel <groupe>

Enlever un utilisateur d'un groupe:

gpasswd -d <utilisateur> <groupe>

Groupes sur Arch Linux avant systemd

Avant la migration d'Archlinux vers systemd, les utilisateurs devaient s'ajouter manuellement à ces groupes afin de pouvoir accéder à différents périphériques. Ce comportement a depuis été déprécié en faveur d'udev.

Toutefois, il peut y avoir des exceptions (par exemple autoriser l'accès à un périphérique sans être connecté), d'où les explications suivantes.

Selon les commandes et périphériques utilisés, il peut être nécessaire de faire partie de certains groupes pour avoir certains accès ou permissions.

Important : systemd / udev affectent des permissions en fonction de l'état des sessions utilisateur, appartenir à un groupe peut court-circuiter cela et mener à des erreurs. Par exemple, appartenir au groupe audio permet à l'utilisateur et donc aux applications de ce dernier d'accéder directement aux périphériques audio. Dans le cas d'un basculement d'un utilisateur à l'autre, le périphérique peut se retrouver accaparé par une application
Groupe Fichiers Fonction
audio /dev/audio, /dev/snd/*, /dev/rtc* Accès au matériel son.
disk /dev/[sh]d* Accès direct au périphérique. Ne surtout pas utiliser, sinon n'importe quel utilisateur peut supprimer les partitions et leurs contenus.
floppy /dev/fd* Si si, on en trouve encore des lecteurs de disquettes.
log /var/log/* Accès à certains logs en lecture
lp /etc/cups, /var/log/cups, /var/cache/cups, /var/spool/cups Accès à l'imprimante
optical /dev/s[rg]* Accès au lecteur optique (cd/dvd).
root /* Super-utilisateur: accès complet au système
scanner Accès au matériel scanner
sys Administration du serveur d'impression CUPS
systemd-journal /var/log/journal/* Accès aux journaux de systemd.
storage /dev/sd* Accès aux périphériques amovibles (ex: clé/disque usb)
users groupe de base pour les utilisateurs
video /dev/fb/*, /dev/misc/agpart Accès aux périphériques de capture vidéo
wheel Selon la configuration (sudo, pam), ce groupe peut être utilisé pour donner l'accès root à l'utilisateur.
Par défaut, polkit considère les utilisateurs de ce groupe comme étant des administrateurs.
Note : Selon l'utilisation, il n'est pas nécessaire d'appartenir à un groupe pour effectuer une action. Par exemple, l'appartenance au groupe storage ou power n'est pas requise dans un environnement GNOME.