publish: Gérer les utilisateurs et les groupes sous Linux

This commit is contained in:
Cédrix
2026-05-17 08:03:41 +02:00
parent 3dea70019f
commit b7c8ad1c01
5 changed files with 293 additions and 296 deletions
@@ -1,12 +0,0 @@
{
"title": "Gérer les utilisateurs et les groupes sous Linux",
"_updated_at": "2026-05-17 06:03:40",
"slug": "gerer-les-utilisateurs",
"published": true,
"published_at": "2021-01-16 04:07",
"category": "Informatique",
"tags": [],
"seo_title": "",
"seo_description": "",
"og_image": "https://www.abonnel.fr/file?uuid=73c13a05-b5c1-4eef-9b2a-dabed200e555&name=cover.svg"
}
@@ -1,257 +0,0 @@
# Gérer les utilisateurs et les groupes sous Linux
## Pourquoi gérer utilisateurs et groupes ?
Linux est un système **multi-utilisateurs** : plusieurs personnes (ou plusieurs services) peuvent partager la même machine sans interférer entre elles. Chaque utilisateur dispose de son propre dossier personnel, de ses fichiers, de ses préférences. Et chaque fichier appartient à un utilisateur et à un groupe, ce qui détermine qui peut le lire, le modifier ou l'exécuter.
Comprendre la gestion des utilisateurs et des groupes, c'est donc maîtriser :
- **L'isolation** : empêcher un utilisateur d'accéder aux fichiers d'un autre.
- **Le partage contrôlé** : permettre à plusieurs utilisateurs de collaborer via un groupe commun (l'exemple classique : un groupe `famille` pour partager des photos).
- **La sécurité** : limiter ce qu'un compte peut faire, notamment les comptes de services.
Les commandes présentées ici nécessitent les droits **root** (administrateur), on les préfixe donc avec `sudo`.
## Notions de base
Avant de manipuler, posons le vocabulaire :
- **UID** (User ID) : identifiant numérique unique de l'utilisateur. Sur les distributions modernes, les UID des utilisateurs humains commencent généralement à **1000**. Les UID inférieurs à 1000 sont réservés au système et aux comptes de services.
- **GID** (Group ID) : identifiant numérique du groupe, avec la même logique.
- **Groupe principal** : chaque utilisateur a un groupe principal, défini dans `/etc/passwd`. C'est ce groupe qui est appliqué par défaut aux fichiers qu'il crée.
- **Groupes secondaires** : un utilisateur peut appartenir à plusieurs groupes supplémentaires, listés dans `/etc/group`.
Pour voir ces informations sur votre propre compte :
```
id
```
Vous obtenez quelque chose comme `uid=1000(cedric) gid=1000(cedric) groups=1000(cedric),10(wheel),1003(famille)`. Le premier groupe listé après `gid=` est votre groupe principal ; les autres sont vos groupes secondaires.
## Créer un groupe
Pour créer un groupe, on utilise `groupadd`. Le système attribue automatiquement un GID libre :
```
sudo groupadd famille
```
Si vous voulez fixer un GID précis (utile quand vous synchronisez des comptes entre plusieurs machines ou avec un NAS), utilisez `-g` :
```
sudo groupadd -g 1003 famille
```
Vérifiez la création en consultant `/etc/group` :
```
getent group famille
```
## Créer un utilisateur
La commande de référence est `useradd`. Sans option, elle crée un compte minimal mais ne le configure pas idéalement. Les options à connaître :
- `-m` : crée le dossier personnel (`/home/<nom>`) si nécessaire. **À utiliser presque toujours** pour un compte humain.
- `-d /chemin` : précise le chemin du dossier personnel s'il diffère de `/home/<nom>`.
- `-s /bin/bash` : définit le shell de connexion (sur certaines distributions, le shell par défaut est `/bin/sh`, ce qui n'est pas idéal pour une utilisation interactive).
- `-g <groupe>` : groupe principal.
- `-G <groupe1>,<groupe2>` : groupes secondaires (sans espace après la virgule).
- `-c "Commentaire"` : nom complet ou description du compte (champ GECOS).
- `-u <UID>` : fixe l'UID manuellement.
Exemple complet pour créer un utilisateur **cedric.abonnel** avec un dossier personnel, le shell Bash, le groupe principal `famille` et l'appartenance au groupe `wheel` (qui donne droit à `sudo` sur Fedora/RHEL) :
```
sudo useradd -m -s /bin/bash -g famille -G wheel \
-c "Cédric Abonnel" cedric.abonnel
```
Sur Debian/Ubuntu, le groupe administrateur s'appelle `sudo` au lieu de `wheel` :
```
sudo useradd -m -s /bin/bash -g famille -G sudo \
-c "Cédric Abonnel" cedric.abonnel
```
### Définir le mot de passe
Par défaut, le compte créé par `useradd` est **verrouillé** : impossible de se connecter tant qu'aucun mot de passe n'a été défini. Sortez-le de ce verrou avec `passwd` :
```
sudo passwd cedric.abonnel
```
Le système demande deux fois le nouveau mot de passe. Tant que cette étape n'est pas faite, le compte existe mais n'est pas utilisable.
### Une alternative plus simple sur Debian/Ubuntu : adduser
Sur les distributions dérivées de Debian (Debian, Ubuntu, Mint…), il existe un script interactif plus convivial qui crée le dossier, demande le mot de passe et les infos d'identité en une seule commande :
```
sudo adduser cedric.abonnel
```
C'est l'outil recommandé pour ces distributions quand on n'a pas de besoin d'automatisation particulier. Sur Fedora/RHEL/openSUSE, `useradd` reste la commande standard.
## Modifier le groupe principal d'un utilisateur
Pour changer le groupe principal d'un utilisateur déjà existant, on utilise `usermod` avec l'option `-g` :
```
sudo usermod -g famille cedric.abonnel
```
**Attention au piège** : il faut bien utiliser `usermod` ici, et **pas** `groupmod`. La commande `groupmod` sert à modifier un groupe (changer son nom ou son GID), pas à changer l'appartenance d'un utilisateur :
```
sudo groupmod -n famille-elargie famille # renomme le groupe
sudo groupmod -g 1010 famille # change le GID du groupe
```
## Ajouter un utilisateur à un groupe secondaire
C'est l'opération la plus courante : permettre à un utilisateur de rejoindre un groupe existant (par exemple pour accéder à un dossier partagé, ou pour gagner le droit de piloter des machines virtuelles via `libvirt`).
```
sudo usermod -aG famille cedric.abonnel
```
L'option **`-a` (append) est cruciale** : sans elle, `-G` **remplace** la liste complète des groupes secondaires au lieu d'y ajouter. C'est l'erreur classique qui fait perdre l'accès à `sudo` ou à `docker` parce qu'on a écrasé les autres appartenances.
Vous pouvez aussi ajouter plusieurs groupes d'un coup :
```
sudo usermod -aG famille,docker,libvirt cedric.abonnel
```
L'utilisateur devra **se déconnecter puis se reconnecter** pour que sa nouvelle appartenance soit prise en compte par sa session. Pour vérifier sans se reconnecter :
```
groups cedric.abonnel
```
## Retirer un utilisateur d'un groupe
Pour enlever un utilisateur d'un groupe secondaire :
```
sudo gpasswd -d cedric.abonnel famille
```
## Supprimer un utilisateur ou un groupe
Pour supprimer un utilisateur, mais **garder son dossier personnel** :
```
sudo userdel cedric.abonnel
```
Pour supprimer aussi son dossier personnel et sa boîte mail :
```
sudo userdel -r cedric.abonnel
```
Pour supprimer un groupe (à condition qu'il ne soit le groupe principal d'aucun utilisateur) :
```
sudo groupdel famille
```
## Verrouiller temporairement un compte
Plutôt que de supprimer un utilisateur, on peut bloquer son accès sans toucher à ses fichiers :
```
sudo usermod -L cedric.abonnel # verrouille
sudo usermod -U cedric.abonnel # déverrouille
```
## Comprendre et régler umask
Quand un utilisateur crée un fichier, le système lui applique des permissions par défaut. Ces permissions sont déterminées par une valeur appelée **umask** (« user file-creation mask »), qui retire des droits par rapport à la valeur maximale.
- Pour un fichier, le maximum est `666` (rw-rw-rw-).
- Pour un dossier, le maximum est `777` (rwxrwxrwx).
- L'umask **soustrait** des bits. Avec `umask 0022`, on retire `w` au groupe et au reste du monde : les fichiers sont créés en `644` (rw-r--r--), les dossiers en `755` (rwxr-xr-x). C'est la valeur classique pour un usage personnel ou professionnel.
- `umask 0027` est plus restrictif : retire toutes les permissions au reste du monde et l'écriture au groupe.
- `umask 0002` est plus permissif et adapté aux environnements collaboratifs avec un groupe partagé : les fichiers sont créés en `664`, donc modifiables par tout le groupe.
Vérifiez votre umask actuel :
```
umask
```
### Définir umask globalement
Pour appliquer un umask à tous les utilisateurs, créez un fichier dans `/etc/profile.d/` qui sera chargé à chaque ouverture de session shell :
```
sudo tee /etc/profile.d/umask.sh > /dev/null <<'EOF'
umask 0022
EOF
```
Le fichier doit se terminer par `.sh` pour être lu automatiquement par `/etc/profile`. Aucun `chmod +x` n'est nécessaire (il est *sourcé*, pas exécuté).
### Définir umask par utilisateur
Pour un réglage personnel, ajoutez la ligne `umask 0022` dans `~/.bashrc` ou `~/.profile` de l'utilisateur concerné.
## Cas pratique : créer un partage familial
Pour terminer, mettons tout en pratique en construisant un dossier partagé entre les membres d'une famille.
**1) Créer le groupe partagé** :
```
sudo groupadd famille
```
**2) Ajouter les utilisateurs au groupe** :
```
sudo usermod -aG famille alice
sudo usermod -aG famille bob
```
**3) Créer le dossier partagé** :
```
sudo mkdir /srv/famille
sudo chown root:famille /srv/famille
sudo chmod 2775 /srv/famille
```
Le mode `2775` mérite une explication : le `2` en tête active le **bit SGID** sur le dossier. Conséquence : tout fichier créé à l'intérieur hérite automatiquement du groupe `famille`, sans dépendre du groupe principal de la personne qui l'a créé. C'est la clé d'un partage qui « marche tout seul » sans avoir à corriger les permissions à la main à chaque fichier.
**4) Définir un umask permissif pour les membres** : ajoutez `umask 0002` dans le `~/.bashrc` d'alice et bob, pour que les fichiers qu'ils créent dans `/srv/famille` soient modifiables par tout le groupe.
Après reconnexion, chaque membre peut déposer des fichiers dans `/srv/famille` et tout le monde peut les lire et les modifier — sans intervention de l'administrateur.
## Les fichiers de configuration sous-jacents
Toutes ces commandes modifient en réalité quelques fichiers texte. Il est utile de savoir lesquels :
- **`/etc/passwd`** : la liste des utilisateurs (nom, UID, GID principal, dossier personnel, shell).
- **`/etc/shadow`** : les mots de passe chiffrés et les politiques d'expiration. Lisible uniquement par root.
- **`/etc/group`** : la liste des groupes et leurs membres secondaires.
- **`/etc/gshadow`** : les mots de passe de groupe (rarement utilisés).
Évitez d'éditer ces fichiers à la main : utilisez plutôt `vipw` (pour passwd/shadow) ou `vigr` (pour group/gshadow), qui posent un verrou pendant l'édition pour éviter les corruptions liées aux modifications concurrentes.
## En résumé
Les commandes essentielles à retenir :
- `groupadd <nom>` crée un groupe.
- `useradd -m -s /bin/bash <nom>` crée un utilisateur avec son dossier personnel.
- `passwd <nom>` définit ou réinitialise son mot de passe.
- `usermod -aG <groupe> <nom>` ajoute l'utilisateur à un groupe secondaire (le `-a` est indispensable).
- `usermod -g <groupe> <nom>` change le groupe principal.
- `userdel -r <nom>` supprime l'utilisateur et son dossier personnel.
Et le combo gagnant pour un partage propre : un groupe dédié, le bit SGID sur le dossier (`chmod 2775`), et un umask `0002` pour les membres concernés.
+229 -21
View File
@@ -1,49 +1,257 @@
# Gérer les utilisateurs Linux
# Gérer les utilisateurs et les groupes sous Linux
## Créer un groupe
Pour ajouter un nouveau groupe au système, il faut saisir dans un terminal, en root :
## Pourquoi gérer utilisateurs et groupes ?
**groupadd**
Linux est un système **multi-utilisateurs** : plusieurs personnes (ou plusieurs services) peuvent partager la même machine sans interférer entre elles. Chaque utilisateur dispose de son propre dossier personnel, de ses fichiers, de ses préférences. Et chaque fichier appartient à un utilisateur et à un groupe, ce qui détermine qui peut le lire, le modifier ou l'exécuter.
On peut specifier son id en utilisant l'option **-g**
Comprendre la gestion des utilisateurs et des groupes, c'est donc maîtriser :
- **L'isolation** : empêcher un utilisateur d'accéder aux fichiers d'un autre.
- **Le partage contrôlé** : permettre à plusieurs utilisateurs de collaborer via un groupe commun (l'exemple classique : un groupe `famille` pour partager des photos).
- **La sécurité** : limiter ce qu'un compte peut faire, notamment les comptes de services.
Les commandes présentées ici nécessitent les droits **root** (administrateur), on les préfixe donc avec `sudo`.
## Notions de base
Avant de manipuler, posons le vocabulaire :
- **UID** (User ID) : identifiant numérique unique de l'utilisateur. Sur les distributions modernes, les UID des utilisateurs humains commencent généralement à **1000**. Les UID inférieurs à 1000 sont réservés au système et aux comptes de services.
- **GID** (Group ID) : identifiant numérique du groupe, avec la même logique.
- **Groupe principal** : chaque utilisateur a un groupe principal, défini dans `/etc/passwd`. C'est ce groupe qui est appliqué par défaut aux fichiers qu'il crée.
- **Groupes secondaires** : un utilisateur peut appartenir à plusieurs groupes supplémentaires, listés dans `/etc/group`.
Pour voir ces informations sur votre propre compte :
```
sudo groupadd famille -g 1003
id
```
Vous obtenez quelque chose comme `uid=1000(cedric) gid=1000(cedric) groups=1000(cedric),10(wheel),1003(famille)`. Le premier groupe listé après `gid=` est votre groupe principal ; les autres sont vos groupes secondaires.
## Créer un groupe
Pour créer un groupe, on utilise `groupadd`. Le système attribue automatiquement un GID libre :
```
sudo groupadd famille
```
Si vous voulez fixer un GID précis (utile quand vous synchronisez des comptes entre plusieurs machines ou avec un NAS), utilisez `-g` :
```
sudo groupadd -g 1003 famille
```
Vérifiez la création en consultant `/etc/group` :
```
getent group famille
```
## Créer un utilisateur
La commande de référence est `useradd`. Sans option, elle crée un compte minimal mais ne le configure pas idéalement. Les options à connaître :
- `-m` : crée le dossier personnel (`/home/<nom>`) si nécessaire. **À utiliser presque toujours** pour un compte humain.
- `-d /chemin` : précise le chemin du dossier personnel s'il diffère de `/home/<nom>`.
- `-s /bin/bash` : définit le shell de connexion (sur certaines distributions, le shell par défaut est `/bin/sh`, ce qui n'est pas idéal pour une utilisation interactive).
- `-g <groupe>` : groupe principal.
- `-G <groupe1>,<groupe2>` : groupes secondaires (sans espace après la virgule).
- `-c "Commentaire"` : nom complet ou description du compte (champ GECOS).
- `-u <UID>` : fixe l'UID manuellement.
Exemple complet pour créer un utilisateur **cedric.abonnel** avec un dossier personnel, le shell Bash, le groupe principal `famille` et l'appartenance au groupe `wheel` (qui donne droit à `sudo` sur Fedora/RHEL) :
```
useradd [options] username
sudo useradd -m -s /bin/bash -g famille -G wheel \
-c "Cédric Abonnel" cedric.abonnel
```
Par défaut, le compte sera vérouillé, il faudra le déverrouiller en créant un mot de passe :
Sur Debian/Ubuntu, le groupe administrateur s'appelle `sudo` au lieu de `wheel` :
```
passwd username
sudo useradd -m -s /bin/bash -g famille -G sudo \
-c "Cédric Abonnel" cedric.abonnel
```
Par exemple :
### Définir le mot de passe
Par défaut, le compte créé par `useradd` est **verrouillé** : impossible de se connecter tant qu'aucun mot de passe n'a été défini. Sortez-le de ce verrou avec `passwd` :
```
sudo useradd -d /home/cedric.abonnel -g famille -M -u 1002 cedric.abonnel
sudo passwd cedric.abonnel
```
## Modifier le groupe principal de l'utilisateur
Par exemple, on veut que le groupe **famille** devienne le groupe principal de **cedric**
Le système demande deux fois le nouveau mot de passe. Tant que cette étape n'est pas faite, le compte existe mais n'est pas utilisable.
### Une alternative plus simple sur Debian/Ubuntu : adduser
Sur les distributions dérivées de Debian (Debian, Ubuntu, Mint…), il existe un script interactif plus convivial qui crée le dossier, demande le mot de passe et les infos d'identité en une seule commande :
```
groupmod -g famille cedric
sudo adduser cedric.abonnel
```
## Ajouter un groupe à l'utilisateur
Par exemple, on veut ajouter le groupe **famille** à l'utilisateur **cedric**
C'est l'outil recommandé pour ces distributions quand on n'a pas de besoin d'automatisation particulier. Sur Fedora/RHEL/openSUSE, `useradd` reste la commande standard.
## Modifier le groupe principal d'un utilisateur
Pour changer le groupe principal d'un utilisateur déjà existant, on utilise `usermod` avec l'option `-g` :
```
usermod -a -G famille cedric
sudo usermod -g famille cedric.abonnel
```
## Modifier umask
ajouter un fichier dans `/etc/profile.d/`, par exemple `/etc/profile.d/bash_complement.sh` :
**Attention au piège** : il faut bien utiliser `usermod` ici, et **pas** `groupmod`. La commande `groupmod` sert à modifier un groupe (changer son nom ou son GID), pas à changer l'appartenance d'un utilisateur :
```BASH
```
sudo groupmod -n famille-elargie famille # renomme le groupe
sudo groupmod -g 1010 famille # change le GID du groupe
```
## Ajouter un utilisateur à un groupe secondaire
C'est l'opération la plus courante : permettre à un utilisateur de rejoindre un groupe existant (par exemple pour accéder à un dossier partagé, ou pour gagner le droit de piloter des machines virtuelles via `libvirt`).
```
sudo usermod -aG famille cedric.abonnel
```
L'option **`-a` (append) est cruciale** : sans elle, `-G` **remplace** la liste complète des groupes secondaires au lieu d'y ajouter. C'est l'erreur classique qui fait perdre l'accès à `sudo` ou à `docker` parce qu'on a écrasé les autres appartenances.
Vous pouvez aussi ajouter plusieurs groupes d'un coup :
```
sudo usermod -aG famille,docker,libvirt cedric.abonnel
```
L'utilisateur devra **se déconnecter puis se reconnecter** pour que sa nouvelle appartenance soit prise en compte par sa session. Pour vérifier sans se reconnecter :
```
groups cedric.abonnel
```
## Retirer un utilisateur d'un groupe
Pour enlever un utilisateur d'un groupe secondaire :
```
sudo gpasswd -d cedric.abonnel famille
```
## Supprimer un utilisateur ou un groupe
Pour supprimer un utilisateur, mais **garder son dossier personnel** :
```
sudo userdel cedric.abonnel
```
Pour supprimer aussi son dossier personnel et sa boîte mail :
```
sudo userdel -r cedric.abonnel
```
Pour supprimer un groupe (à condition qu'il ne soit le groupe principal d'aucun utilisateur) :
```
sudo groupdel famille
```
## Verrouiller temporairement un compte
Plutôt que de supprimer un utilisateur, on peut bloquer son accès sans toucher à ses fichiers :
```
sudo usermod -L cedric.abonnel # verrouille
sudo usermod -U cedric.abonnel # déverrouille
```
## Comprendre et régler umask
Quand un utilisateur crée un fichier, le système lui applique des permissions par défaut. Ces permissions sont déterminées par une valeur appelée **umask** (« user file-creation mask »), qui retire des droits par rapport à la valeur maximale.
- Pour un fichier, le maximum est `666` (rw-rw-rw-).
- Pour un dossier, le maximum est `777` (rwxrwxrwx).
- L'umask **soustrait** des bits. Avec `umask 0022`, on retire `w` au groupe et au reste du monde : les fichiers sont créés en `644` (rw-r--r--), les dossiers en `755` (rwxr-xr-x). C'est la valeur classique pour un usage personnel ou professionnel.
- `umask 0027` est plus restrictif : retire toutes les permissions au reste du monde et l'écriture au groupe.
- `umask 0002` est plus permissif et adapté aux environnements collaboratifs avec un groupe partagé : les fichiers sont créés en `664`, donc modifiables par tout le groupe.
Vérifiez votre umask actuel :
```
umask
```
### Définir umask globalement
Pour appliquer un umask à tous les utilisateurs, créez un fichier dans `/etc/profile.d/` qui sera chargé à chaque ouverture de session shell :
```
sudo tee /etc/profile.d/umask.sh > /dev/null <<'EOF'
umask 0022
```
EOF
```
Le fichier doit se terminer par `.sh` pour être lu automatiquement par `/etc/profile`. Aucun `chmod +x` n'est nécessaire (il est *sourcé*, pas exécuté).
### Définir umask par utilisateur
Pour un réglage personnel, ajoutez la ligne `umask 0022` dans `~/.bashrc` ou `~/.profile` de l'utilisateur concerné.
## Cas pratique : créer un partage familial
Pour terminer, mettons tout en pratique en construisant un dossier partagé entre les membres d'une famille.
**1) Créer le groupe partagé** :
```
sudo groupadd famille
```
**2) Ajouter les utilisateurs au groupe** :
```
sudo usermod -aG famille alice
sudo usermod -aG famille bob
```
**3) Créer le dossier partagé** :
```
sudo mkdir /srv/famille
sudo chown root:famille /srv/famille
sudo chmod 2775 /srv/famille
```
Le mode `2775` mérite une explication : le `2` en tête active le **bit SGID** sur le dossier. Conséquence : tout fichier créé à l'intérieur hérite automatiquement du groupe `famille`, sans dépendre du groupe principal de la personne qui l'a créé. C'est la clé d'un partage qui « marche tout seul » sans avoir à corriger les permissions à la main à chaque fichier.
**4) Définir un umask permissif pour les membres** : ajoutez `umask 0002` dans le `~/.bashrc` d'alice et bob, pour que les fichiers qu'ils créent dans `/srv/famille` soient modifiables par tout le groupe.
Après reconnexion, chaque membre peut déposer des fichiers dans `/srv/famille` et tout le monde peut les lire et les modifier — sans intervention de l'administrateur.
## Les fichiers de configuration sous-jacents
Toutes ces commandes modifient en réalité quelques fichiers texte. Il est utile de savoir lesquels :
- **`/etc/passwd`** : la liste des utilisateurs (nom, UID, GID principal, dossier personnel, shell).
- **`/etc/shadow`** : les mots de passe chiffrés et les politiques d'expiration. Lisible uniquement par root.
- **`/etc/group`** : la liste des groupes et leurs membres secondaires.
- **`/etc/gshadow`** : les mots de passe de groupe (rarement utilisés).
Évitez d'éditer ces fichiers à la main : utilisez plutôt `vipw` (pour passwd/shadow) ou `vigr` (pour group/gshadow), qui posent un verrou pendant l'édition pour éviter les corruptions liées aux modifications concurrentes.
## En résumé
Les commandes essentielles à retenir :
- `groupadd <nom>` crée un groupe.
- `useradd -m -s /bin/bash <nom>` crée un utilisateur avec son dossier personnel.
- `passwd <nom>` définit ou réinitialise son mot de passe.
- `usermod -aG <groupe> <nom>` ajoute l'utilisateur à un groupe secondaire (le `-a` est indispensable).
- `usermod -g <groupe> <nom>` change le groupe principal.
- `userdel -r <nom>` supprime l'utilisateur et son dossier personnel.
Et le combo gagnant pour un partage propre : un groupe dédié, le bit SGID sur le dossier (`chmod 2775`), et un umask `0002` pour les membres concernés.
+15 -6
View File
@@ -1,18 +1,27 @@
{
"uuid": "73c13a05-b5c1-4eef-9b2a-dabed200e555",
"slug": "gerer-les-utilisateurs",
"title": "Gérer les utilisateurs Linux",
"title": "Gérer les utilisateurs et les groupes sous Linux",
"author": "cedric@abonnel.fr",
"published": true,
"published_at": "2021-01-16 04:07:07",
"featured": false,
"published_at": "2021-01-16 04:07",
"created_at": "2021-01-16 04:07:07",
"updated_at": "2021-01-16 04:07:07",
"revisions": [],
"updated_at": "2026-05-17 06:03:41",
"revisions": [
{
"n": 1,
"date": "2026-05-17 06:03:41",
"comment": "Titre modifié, contenu modifié, image de couverture modifiée",
"title": "Gérer les utilisateurs Linux"
}
],
"cover": "cover.svg",
"files_meta": [],
"external_links": [],
"seo_title": "",
"seo_description": "",
"og_image": "",
"category": "Informatique"
"og_image": "https://www.abonnel.fr/file?uuid=73c13a05-b5c1-4eef-9b2a-dabed200e555&name=cover.svg",
"category": "Informatique",
"tags": []
}
@@ -0,0 +1,49 @@
# Gérer les utilisateurs Linux
## Créer un groupe
Pour ajouter un nouveau groupe au système, il faut saisir dans un terminal, en root :
**groupadd**
On peut specifier son id en utilisant l'option **-g**
```
sudo groupadd famille -g 1003
```
## Créer un utilisateur
```
useradd [options] username
```
Par défaut, le compte sera vérouillé, il faudra le déverrouiller en créant un mot de passe :
```
passwd username
```
Par exemple :
```
sudo useradd -d /home/cedric.abonnel -g famille -M -u 1002 cedric.abonnel
sudo passwd cedric.abonnel
```
## Modifier le groupe principal de l'utilisateur
Par exemple, on veut que le groupe **famille** devienne le groupe principal de **cedric**
```
groupmod -g famille cedric
```
## Ajouter un groupe à l'utilisateur
Par exemple, on veut ajouter le groupe **famille** à l'utilisateur **cedric**
```
usermod -a -G famille cedric
```
## Modifier umask
ajouter un fichier dans `/etc/profile.d/`, par exemple `/etc/profile.d/bash_complement.sh` :
```BASH
umask 0022
```