Rick Asked: 2019-03-08 20:07:40 +0800 CST2019-03-08 20:07:40 +0800 CST 2019-03-08 20:07:40 +0800 CST 为什么每次有人执行 `ls -l` 命令时都会使用 /etc/passwd? 772 读自APUE,只是好奇: 每次用户登录到 UNIX 系统以及每次有人执行ls -l命令时都会使用密码文件。 passwd ls 1 个回答 Voted Best Answer igal 2019-03-08T20:48:42+08:002019-03-08T20:48:42+08:00 文件系统直接将数字 UID(用户 ID)和 GID(组 ID)值与文件相关联,而不是用户名和组名(它们是字符串)。因此,该ls -l命令(以及显示文件的用户和组所有者的任何其他命令)需要从某处获取用户名和组名。该/etc/passwd文件就是这样一种来源(可能是原始和最常见的来源)。手册证明了这一点 - 来自PASSWD (5)(即/etc/passwd文件的手册页): 许多实用程序,例如 ls(1) 使用它将用户 ID 映射到用户名
文件系统直接将数字 UID(用户 ID)和 GID(组 ID)值与文件相关联,而不是用户名和组名(它们是字符串)。因此,该
ls -l
命令(以及显示文件的用户和组所有者的任何其他命令)需要从某处获取用户名和组名。该/etc/passwd
文件就是这样一种来源(可能是原始和最常见的来源)。手册证明了这一点 - 来自PASSWD (5)(即/etc/passwd
文件的手册页):