raspberrypi:linux:bashp1

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
raspberrypi:linux:bashp1 [2023/03/13 09:45] – [4.2 Les groupes] philraspberrypi:linux:bashp1 [2026/01/27 14:34] (Version actuelle) – [4. Les utilisateurs, les groupes et les droits] mno
Ligne 3: Ligne 3:
 ===== BASH - Découvrir son système d'exploitation ===== ===== BASH - Découvrir son système d'exploitation =====
 {{ :raspberrypi:linux:bash.png?nolink&200|}} {{ :raspberrypi:linux:bash.png?nolink&200|}}
-[Mise à jour le 13/3/2023]+[Mise à jour le 26/1/2026]
  
 <html><span style="color:red"><strong>En cours de rédaction</strong></span></html> <html><span style="color:red"><strong>En cours de rédaction</strong></span></html>
Ligne 44: Ligne 44:
  
 <code bash *.bash> <code bash *.bash>
-# La commande interne type suivie du nom d’une commande sert à indiquer le type de la commande+# La commande interne //type// suivie du nom d’une commande sert à indiquer le type de la commande 
 +# Exemple
 pi@Pi4Bp8Go:~ $ type echo man pi@Pi4Bp8Go:~ $ type echo man
-echo est une primitive du shell # type built-in (commande interne) +# Renvoie 
-man est /usr/bin/man # commande externe dans le répertoire /usr/bin+echo est une primitive du shell # echo est de type built-in (commande interne) 
 +man est /usr/bin/man # man est une commande externe située dans le répertoire /usr/bin
 </code> </code>
  
Ligne 54: Ligne 56:
 <callout type="primary" icon="true">//Format// : **commande** **arg1** **arg2** ... **argn**</callout> <callout type="primary" icon="true">//Format// : **commande** **arg1** **arg2** ... **argn**</callout>
  
-//Exemples// : la commande date avec et sans arguments+//Exemples// : la commande **date** avec et sans arguments
  
 <code bash *.bash> <code bash *.bash>
Ligne 93: Ligne 95:
 La valeur associée à l’option peut être spécifiée dans le même argument, mais séparée de l’identifiant d’option via un **caractère délimiteur**. La valeur associée à l’option peut être spécifiée dans le même argument, mais séparée de l’identifiant d’option via un **caractère délimiteur**.
  
-//Exemple// : la commande date+//Exemple// : la commande **date**
  
 <code bash *.bash> <code bash *.bash>
Ligne 180: Ligne 182:
   * **Devenir super utilisateur**   * **Devenir super utilisateur**
  
-<callout type="warning" icon="true">Pour passer de simple utilisateur à **super utilisateur**, on utilise la commande **sudo** (**S**ubstitute **U**ser **DO**) puis on entre le mot de passe super utilisateur.</callout>+<callout type="warning" icon="true">Pour passer de simple utilisateur à **super utilisateur**, on utilise la commande **sudo** (**S**ubstitute **U**ser **DO**) puis on entre le mot de passe super utilisateur. (**exit** pour revenir en simple utilisateur)</callout>
  
 //Exemple// //Exemple//
Ligne 196: Ligne 198:
     * Wiki Ubuntu-fr : <html><a href="https://doc.ubuntu-fr.org/tutoriel/gestion_utilisateurs_et_groupes_en_ligne_de_commande" target="_blank">Gestion des utilisateurs et groupes en ligne de commande</a></html>     * Wiki Ubuntu-fr : <html><a href="https://doc.ubuntu-fr.org/tutoriel/gestion_utilisateurs_et_groupes_en_ligne_de_commande" target="_blank">Gestion des utilisateurs et groupes en ligne de commande</a></html>
  
-**Créer un utilisateur** +== 4.1.1 Créer un utilisateur ==
 <callout type="primary" icon="true">Lorsque l'on crée un utilisateur, le répertoire personnel portant son nom est automatiquement créé  : **/home/**//nom//. Un mot de passe est demandé. Pour des raisons de sécurité, ce qui est entré au clavier n'apparaît pas à l'écran.</callout> <callout type="primary" icon="true">Lorsque l'on crée un utilisateur, le répertoire personnel portant son nom est automatiquement créé  : **/home/**//nom//. Un mot de passe est demandé. Pour des raisons de sécurité, ce qui est entré au clavier n'apparaît pas à l'écran.</callout>
  
Ligne 205: Ligne 206:
 </code> </code>
  
-**Supprimer un utilisateur** +== 4.1.2 Supprimer un utilisateur (un utilisateur d'un groupe)==
 //Commandes// //Commandes//
 <code bash *.bash> <code bash *.bash>
 sudo deluser nom_utilisateur # Supprime l'utilisateur, mais pas son répertoire personnel sudo deluser nom_utilisateur # Supprime l'utilisateur, mais pas son répertoire personnel
 sudo deluser --remove-home nom_utilisateur # Supprime l'utilisateur et son répertoire personnel sudo deluser --remove-home nom_utilisateur # Supprime l'utilisateur et son répertoire personnel
 +
 +sudo gpasswd -d nom nomgroupe # Supprime l'utilisateur du groupe
 +sudo gpasswd -d paul developpeurs # Supprime Paul du groupe developpeurs
 </code> </code>
  
- +== 4.1.3 Changer le mot de passe d'un utilisateur==
-**Changer le mot de passe d'un utilisateur** +
 //Commande// //Commande//
 <code bash *.bash> <code bash *.bash>
Ligne 221: Ligne 222:
 </code> </code>
  
-**Afficher la liste des utilisateurs et des groupes**+== 4.1.4 Afficher la liste des utilisateurs et des groupes ==
   * **Source** : <html><a href="https://www.tutos.eu/?n=1509" target="_blank">tuto.eu</a></html>   * **Source** : <html><a href="https://www.tutos.eu/?n=1509" target="_blank">tuto.eu</a></html>
 <callout type="warning" icon="true">Le fichier **/etc/passwd** contient toutes les informations relatives aux utilisateurs (nom, mot de passe chiffré, UID, GID, nom complet, répertoire home utilisateur, connexion Shell (par défaut /bin/bash)).</callout> <callout type="warning" icon="true">Le fichier **/etc/passwd** contient toutes les informations relatives aux utilisateurs (nom, mot de passe chiffré, UID, GID, nom complet, répertoire home utilisateur, connexion Shell (par défaut /bin/bash)).</callout>
  
-  * **Liste des utilisateurs**+== 4.1.5 Liste des utilisateurs ==
 //Exemple 1// //Exemple 1//
 <code bash *.bash> <code bash *.bash>
 cat /etc/passwd # ou less /etc/passwd si le fichier comprend plusieurs pages cat /etc/passwd # ou less /etc/passwd si le fichier comprend plusieurs pages
 +cut -d: -f1 /etc/passwd | sort # liste triée des utilisateurs
 </code> </code>
  
Ligne 236: Ligne 238:
 </code> </code>
  
-{{ :raspberrypi:linux:groupe.png?nolink|}} +== 4.1.6 Informations du compte utilisateur == 
- +//Commande//
-  * **Liste des groupes** +
-//Exemple//+
 <code bash *.bash> <code bash *.bash>
-cat /etc/group ou less /etc/group si le fichier comprend plusieurs pages +id utilisateur Groupes auxquels appartient un utilisateur 
- +getent passwd nom_utilisateur UIDGIDrépertoire personnelshellcommentaire
-Exemples d'affichage +
-# www-data:x:33:hickelleguillouxbaillyborracinolefreteur, etc. sont dans le groupe www-data +
-# tsin:x:1029:borracino,lefreteur sont dans le groupe tsin +
-# borracino:x:1030 est dans son propre groupe+
 </code> </code>
  
 +
 +{{ :raspberrypi:linux:groupe.png?nolink|}}
 === 4.2 Les groupes === === 4.2 Les groupes ===
-<callout type="warning" icon="true">Chaque utilisateur appartient à un groupe. Si on ne définit rien, un groupe du même nom que l'utilisateur est automatiquement créé.</callout>+<callout type="warning" icon="true">Chaque utilisateur appartient à un groupe. Si on ne définit rien, un **groupe du même nom** que l'utilisateur est automatiquement créé.</callout>
  
-**Créer un groupe**+== 4.2.1 Créer un groupe == 
 +//Commande//
 <code bash *.bash> <code bash *.bash>
 sudo addgroup nom_groupe sudo addgroup nom_groupe
Ligne 262: Ligne 261:
 </code> </code>
  
-**Mettre un utilisateur dans un ou plusieurs groupes**+== 4.2.2 Mettre un utilisateur dans un ou plusieurs groupes ==
 <callout type="primary" icon="true">La commande **usermod** permet d'éditer un utilisateur. On utilise les paramètres : \\ <callout type="primary" icon="true">La commande **usermod** permet d'éditer un utilisateur. On utilise les paramètres : \\
   * **-l** pour renommer l'utilisateur (il faudra également renommer son répertoire)   * **-l** pour renommer l'utilisateur (il faudra également renommer son répertoire)
-  * **-g** pour changer le groupe +  * **-g** pour changer le groupe principal 
-  * **-G** pour mettre un utilisateur dans plusieurs groupes+  * **-aG** pour mettre un utilisateur dans plusieurs groupes sans supprimer les groupes existants a: append G:groupe supplémentaire
 </callout> </callout>
  
-//Commande//+//Commandes//
 <code bash *.bash> <code bash *.bash>
 sudo usermod -g nom_groupe nom_utilisateur # place l'utilisateur nom_utilisateur dans le groupe nom_groupe sudo usermod -g nom_groupe nom_utilisateur # place l'utilisateur nom_utilisateur dans le groupe nom_groupe
-sudo usermod -goupe1,groupe2,groupe3 nom_utilisateur # place l'utilisateur nom_utilisateur dans +sudo usermod -aG goupe1,groupe2,groupe3 nom_utilisateur # place l'utilisateur nom_utilisateur dans 
                                                        # les groupes group1, groupe2 et groupe3                                                        # les groupes group1, groupe2 et groupe3
 </code> </code>
Ligne 279: Ligne 278:
 <code bash *.bash> <code bash *.bash>
 sudo usermod -g www-data ruche1 sudo usermod -g www-data ruche1
 +sudo usermod -aG www-data,sin elevesin1 # elevesin1 est placé dans les groupes www-data et sin
 </code> </code>
  
- +== 4.2.3 Lister le contenu d'un groupe == 
-**Lister le contenu**+//Exemple//
 <code bash *.bash> <code bash *.bash>
-cat /etc/nom_group # ou less /etc/nom_group si le fichier comprend plusieurs pages+cat /etc/group # ou less /etc/group si le fichier comprend plusieurs pages
  
-Exemple d'affichage+Exemples d'affichage 
 +# www-data:x:33:hickel, leguilloux, bailly, borracino, lefreteur, etc. sont dans le groupe www-data 
 +# tsin:x:1029:borracino,lefreteur sont dans le groupe tsin
 # borracino:x:1030 est dans son propre groupe # borracino:x:1030 est dans son propre groupe
 </code> </code>
  
-**Supprimer un groupe** +== 4.2.4 Supprimer un groupe ==
 //Commande// //Commande//
 <code bash *.bash> <code bash *.bash>
Ligne 297: Ligne 298:
 </code> </code>
  
- +== 4.2.5 Afficher la liste des groupes ==
-**Afficher la liste des groupes**+
  
 //Exemple// //Exemple//
 <code bash *.bash> <code bash *.bash>
-cat /etc/group | awk -F: '{print $ 1}'+cat /etc/group | awk -F: '{print $ 1}' | sort # triée
 </code> </code>
  
  • raspberrypi/linux/bashp1.1678697109.txt.gz
  • Dernière modification : 2025/06/19 19:26
  • (modification externe)