Vérifier le shell avec getent passwd
Dans les étapes précédentes, vous avez appris à visualiser directement le fichier /etc/passwd
et à lister les shells disponibles. Maintenant, utilisons une autre commande, getent
, pour récupérer des informations sur l'utilisateur, y compris le shell.
La commande getent
est un utilitaire qui récupère des entrées à partir des bases de données Name Service Switch (NSS), qui peuvent inclure /etc/passwd
, /etc/group
et d'autres. C'est un moyen plus standardisé de récupérer des informations sur l'utilisateur par rapport à la lecture directe de /etc/passwd
, car elle peut également interroger des bases de données d'utilisateurs basées sur le réseau.
Pour obtenir l'entrée de l'utilisateur labex
à partir de la base de données passwd
, tapez la commande suivante dans votre terminal et appuyez sur Entrée :
getent passwd labex
Cette commande demande spécifiquement l'entrée de l'utilisateur labex
à partir de la base de données passwd
. La sortie sera similaire à la ligne que vous avez vue lorsque vous avez utilisé cat /etc/passwd
:
labex:x:5000:5000:LabEx user,,,:/home/labex:/usr/bin/zsh
Encore une fois, le dernier champ /usr/bin/zsh
confirme le shell par défaut de l'utilisateur labex
.
L'utilisation de getent
est souvent préférée dans les scripts ou pour interroger des systèmes qui pourraient utiliser des systèmes d'authentification centralisés (comme LDAP) au lieu de simplement des fichiers locaux. Pour des vérifications simples sur un système local, cat /etc/passwd
et getent passwd <username>
fonctionnent tous les deux.
Vous avez maintenant utilisé avec succès trois méthodes différentes pour comprendre les shells des utilisateurs sous Linux : visualisation directe de /etc/passwd
, listing des shells disponibles avec chsh -l
et interrogation des informations sur l'utilisateur avec getent
.
Cliquez sur Continuer pour terminer ce laboratoire.