Vérification des droits d'accès actuels : commandes whoami
, id
1. Qui suis-je dans le système ? Commande whoami
Chaque utilisateur de Linux fonctionne sous un compte spécifique qui possède ses propres droits, restrictions et appartenance à des groupes. Dans cette conférence, tu vas apprendre à vérifier sous quel compte tu travailles, quels sont tes droits, et à quels groupes tu appartiens. Connaître les paramètres actuels de l'utilisateur est important aussi bien dans le travail quotidien que pour répondre à des questions liées à la sécurité, l'administration et le débogage.
Quand tu travailles dans un système Linux, c'est utile de savoir sous quel compte tu es actif à un moment donné. Par exemple, si tu te connectes accidentellement sous un utilisateur privilégié (root), tu pourrais effectuer des modifications irréversibles dans les fichiers système. Pour éviter de telles situations, il existe la commande whoami
.
Syntaxe
whoami
Qu'est-ce que la commande fait?
La commande whoami
affiche le nom de l'utilisateur actuel sous lequel le travail est effectué dans le système. Elle répond à la question essentielle : "Qui suis-je?"
Exemple
$ whoami
étudiant
Dans ce cas, la sortie étudiant
signifie que tu es connecté au système sous un utilisateur nommé étudiant
. Si tu travaillais sous un utilisateur avec des droits élevés (par exemple, root
), la sortie serait la suivante :
$ whoami
root
Pourquoi est-ce important?
Imagine que tu utilises une commande pour supprimer tous les fichiers d'un répertoire (par exemple, rm -rf /important_directory
). Sous un utilisateur normal, le système peut te restreindre si tu n'as pas les droits correspondants. Mais sous l'utilisateur root
, il exécutera ta commande sans hésitation. La commande whoami
t'aide à éviter de te retrouver dans de telles situations désagréables.
2. Étude détaillée des informations sur l'utilisateur : commande id
Connaître son nom d'utilisateur, c'est bien, mais ce n'est pas suffisant pour comprendre pleinement vos droits et privilèges dans le système. Pour des informations plus détaillées, il existe la commande id
.
Syntaxe
id [utilisateur]
Si le nom d'utilisateur n'est pas spécifié, la commande id
affichera les informations sur l'utilisateur actuel. Si vous fournissez le nom d'un autre utilisateur, vous pourrez vérifier les détails de son compte.
Que retourne la commande id
?
- UID (User ID) — identifiant unique de l'utilisateur.
- GID (Group ID) — identifiant unique du groupe principal de l'utilisateur.
- Liste des groupes — tous les groupes auxquels appartient l'utilisateur (y compris le principal).
Exemple
$ id
uid=1001(student) gid=1001(student) groupes=1001(student),27(sudo),1002(developers)
- UID=1001: C'est l'identifiant unique de l'utilisateur actuel (student). Dans les systèmes Linux, l'UID de l'utilisateur
root
est toujours égal à 0. - GID=1001: C'est l'identifiant du groupe principal de l'utilisateur (student).
- Groupes=1001(student), 27(sudo), 1002(developers): Ici sont listés les groupes supplémentaires auxquels appartient l'utilisateur. Par exemple, le groupe
sudo
permet à l'étudiant d'exécuter des commandes en tant qu'utilisateur privilégié.
Si nous exécutons la commande pour un autre utilisateur :
$ id user2
uid=1002(user2) gid=1002(user2) groupes=1002(user2),1001(developers)
On voit que l'utilisateur user2
appartient au groupe developers
.
3. Utilisation des UID et GID dans le travail réel
À chaque utilisateur et groupe sont attribués des identifiants numériques uniques (UID et GID respectivement). Ils jouent un rôle super important dans le système, souvent en remplaçant les noms textuels d'utilisateurs et de groupes. Pourquoi ça sert ?
- Certains processus système bossent directement avec les identifiants numériques pour être plus efficaces.
- Les droits d'accès aux fichiers et dossiers sont définis non pas par les noms des utilisateurs ou groupes, mais par leurs UID et GID.
- Dans les fichiers de configuration et les logs (genre
/etc/passwd
), tu peux tomber sur les UID des utilisateurs et pas leurs noms.
4. Explorer les groupes avec groups
En plus, tu peux utiliser la commande groups
pour savoir à quels groupes appartient l'utilisateur actuel.
Syntaxe
groups [utilisateur]
En omettant le nom de l'utilisateur, tu obtiendras une liste des groupes pour le compte actuel. Si tu spécifies un nom d'utilisateur, tu découvriras les groupes pour cet utilisateur spécifié.
Exemple :
$ groups
student developers sudo
$ groups user2
user2 developers
5. Travailler avec des commandes
Et maintenant un peu de pratique, histoire de consolider les connaissances acquises.
Vérification du compte utilisateur actuel
- Ouvre le terminal.
Exécute la commande :
whoami
Vérifie ton nom d'utilisateur.
- Lance la commande
sudo su
(on te demandera de saisir le mot de passe), puis exécute à nouveauwhoami
pour voir sous quel utilisateur tu travailles.
Explorer les informations utilisateur
Exécute la commande :
Regarde quel UID, GID ton utilisateur a et à quels groupes il appartient.id
Crée un nouvel utilisateur (si tu as accès à la commande
sudo
) :sudo adduser testuser
Ensuite, exécute :
id testuser
Analyser l'appartenance aux groupes
Exécute :
groups
Prête attention aux groupes auxquels appartient ton utilisateur.
Ajoute l'utilisateur actuel à un nouveau groupe :
sudo groupadd testgroup sudo usermod -aG testgroup $(whoami)
Vérifie le résultat :
groups
6. Erreurs typiques et pièges
Beaucoup de débutants confondent
whoami
etid
. Souvenez-vous :whoami
affiche uniquement le nom de l'utilisateur actuel, tandis queid
offre des informations plus détaillées sur les droits et les groupes.Si vous n'avez pas de privilèges administrateur (accès à
sudo
), vous ne pourrez peut-être pas ajouter d'utilisateurs aux groupes ou modifier leurs paramètres. Dans ces cas, vous devriez demander de l'aide à l'admin du système.La commande
id
avec un utilisateur inexistant renverra une erreur :$ id nonexistinguser id: ‘nonexistinguser’: aucun utilisateur trouvé
Maintenant, tu sais comment vérifier quel utilisateur est actif en ce moment, quels droits et accès il utilise. Les commandes whoami
et id
semblent simples, mais elles jouent un rôle clé dans la compréhension des systèmes d'utilisateurs et des droits d'accès sous Linux. En pratique, tu les utiliseras souvent pour diagnostiquer des problèmes, vérifier des droits et configurer des utilisateurs.
GO TO FULL VERSION