/etc/passwd和/etc/shadow是Linux用户管理的核心文件,前者存储用户基本信息如UID、家目录和Shell,后者保存加密密码及安全策略,通过字段分隔实现登录认证与权限控制,二者协同构成影子密码机制,保障系统安全。

在Linux系统中,用户账户信息的管理主要依赖两个关键文件:/etc/passwd 和 /etc/shadow。它们各自承担不同的角色,理解其结构和作用对系统管理和安全至关重要。
/etc/passwd 是一个传统的用户信息数据库文件,所有用户都可以读取。它不存储密码,而是保存用户的基本属性。每一行代表一个用户账户,字段之间用冒号(:)分隔,共7个字段:
username:x:UID:GID:GECOS:home_directory:shell各字段含义如下:
示例:
alice:x:1001:1001:Alice Smith:/home/alice:/bin/bash/etc/shadow 存储用户的加密密码及相关安全信息,只有 root 用户或特定系统进程可读。每行对应一个用户,同样以冒号分隔,共9个字段:
username:encrypted_password:last_change:min_age:max_age:warn:inactive:expire:reserved核心字段说明:
示例:
alice:$6$salt...hashed:19487:0:99999:7:::其中 $6$ 表示使用 SHA-512 加密算法。
/etc/passwd 和 /etc/shadow 协同工作,实现用户认证与权限控制。
这种分离设计是 Linux 安全体系的重要组成部分,称为“影子密码机制”(Shadow Passwords)。
直接编辑这些文件风险高,推荐使用专用工具:
定期检查这两个文件的权限也很重要:
基本上就这些。掌握这两个文件的结构和用途,有助于深入理解Linux用户管理系统的工作原理。虽然日常操作多用高级命令完成,但在排查登录问题或脚本自动化时,直接分析这些文件非常有用。
以上就是Linux用户/etc/passwd与/etc/shadow文件解析的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号