Lorsque vous travaillez dans un environnement Linux multi-utilisateurs, il est souvent essentiel de savoir avec quel compte utilisateur vous êtes actuellement connecté. Qu’il s’agisse de gérer des serveurs, d’automatiser des scripts ou de résoudre des problèmes d’autorisations, Linux propose plusieurs commandes pour afficher votre nom de connexion actuel.
Utiliser la commande whoami
La commande whoami est le moyen le plus simple d’afficher votre nom d’utilisateur actuel
Comment cela fonctionne-t-il ?
- Lit l’identifiant effectif de l’utilisateur (EUID ) du processus en cours.
- Recherche le nom d’utilisateur associé dans /etc/passwd.
- Affiche toujours votre nom d’utilisateur actuel.
Meilleur cas d’utilisation :
Lorsque l’on utilise sudo ou que l’on change d’utilisateur, “whoami” affiche l ‘utilisateur actif.
Utiliser la commande id
La commande id fournit plus que votre nom d’utilisateur – elle indique l’ID de l’utilisateur (UID), l’ID du groupe (GID) et l’appartenance à un groupe. Commande id :
Autre solution, sans drapeaux :
Comment cela fonctionne-t-il ?
Utilise la base de données des utilisateurs du système pour afficher les informations relatives à l’identité et au groupe.
-u → Affiche l’UID.
-n → Imprime le nom d’utilisateur au lieu des identifiants numériques.
Utilisation de la commande logname
La commande logname affiche le nom d’utilisateur original utilisé pour démarrer la session.
La commande :
Différence clé :
logname renvoie toujours le nom d’utilisateur utilisé pour se connecter à la session.
Si vous avez changé d’utilisateur via su ou sudo, le nom d’utilisateur d’origine est toujours affiché.
Utilisation de la commande “who
La commande who affiche tous les utilisateurs actuellement connectés et les détails de leur session.
Commande “who” :
Exemple de sortie :
Comment cela fonctionne-t-il ?
Lit les données de session dans /var/run/utmp.
Affiche le nom d’utilisateur original, le terminal et l’heure de connexion.
meilleur cas d’utilisation :
Lors de l’audit de sessions en cours ou d’environnements multi-utilisateurs.
Utilisation de la variable d’environnement $USER
Dans la plupart des distributions Linux, votre nom d’utilisateur actuel est stocké dans la variable d’environnement $USER.
Commande :
Exemple de sortie :
Comment cela fonctionne-t-il ?
Récupère la valeur de la variable $USER définie lors de la connexion.
Léger et très rapide.
Cas d’utilisation avancés
a) Dans les scripts Shell
Utile pour l’automatisation de la journalisation.
b) Vérification des utilisateurs connectés sur un serveur
Exemple de sortie :
Affiche tous les utilisateurs actifs.
c) Combiner avec ps pour les propriétaires de processus
Affiche tous les processus appartenant à l’utilisateur actuel.
Considérations de sécurité
Serveurs multi-utilisateurs : Vérifiez toujours votre utilisateur effectif avant d’exécuter des commandes privilégiées.
Contexte Sudo : Utilisez “whoami” au lieu de $USER pour éviter l’usurpation des variables d’environnement.
Scripts de journalisation : Préférez id -un pour un rapport précis du nom d’utilisateur.
Conclusion
Linux propose plusieurs commandes pour afficher votre nom de connexion actuel, mais chacune d’entre elles a un objectif légèrement différent :
- Utilisez“whoami” pour l’identité de l’utilisateur actif.
- Utilisez“id -un” lorsque vous avez également besoin d’informations sur le groupe.
- Utilisez“logname” pour savoir qui s’est connecté à l’origine.
- Utilisez echo $USER pour des recherches rapides et des scripts shell.
La compréhension de ces différences est essentielle pour l’administration du système, l’automatisation des scripts et l’audit de sécurité.


