web-dev-qa-db-fra.com

Pourquoi / etc / passwd serait-il utilisé chaque fois que quelqu'un exécute la commande `ls -l`?

Lisez APUE , sentez-vous simplement curieux:

Le fichier de mot de passe est utilisé chaque fois qu'un utilisateur se connecte à un système UNIX et chaque fois que quelqu'un exécute un ls -l commande.

28
Rick

Le système de fichiers associe directement les valeurs numériques UID (User ID) et GID (Group ID) au fichier, pas le nom d'utilisateur et le nom de groupe (qui sont des chaînes). La commande ls -l (Et toute autre commande qui affiche l'utilisateur et le propriétaire du groupe d'un fichier) doit donc obtenir les noms d'utilisateur et de groupe quelque part. Le fichier /etc/passwd Est une de ces sources (probablement la source originale et la plus courante). Le manuel le confirme - de PASSWD (5) (c'est-à-dire la page de manuel du fichier /etc/passwd):

de nombreux utilitaires, comme ls (1), l'utilisent pour mapper les ID utilisateur aux noms d'utilisateur

50
igal