在Linux系统中,用户和组的管理是权限控制的核心。以下是五种常见的用户ID(UID)和组ID(GID)分组方式及其应用场景:
root
组(GID 0)、daemon
组(GID 1)、sys
组(GID 3)bash
# 查看系统组
grep -E ':[0-9]{1,3}:' /etc/group
alice
(UID 1001)自动拥有私有组alice
(GID 1001)bash
# 创建用户时自动建立私有组(默认行为)
useradd -m alice
developers
组供团队共享文件访问bash
# 创建组并添加用户
groupadd developers
usermod -aG developers bob,alice
/etc/passwd
)/etc/group
)bash
# 用户信息示例(主组users,附加组docker,admin)
id username
bash
# 修改主组
usermod -g new_primary_group user
# 添加附加组
usermod -aG supplementary_group user
bash
# 配置nsswitch.conf使用LDAP
passwd: files ldap
group: files ldap
/etc/passwd
- 用户基本信息(包括主组GID)/etc/group
- 组定义和成员列表/etc/shadow
- 用户密码信息/etc/gshadow
- 组密码信息(较少使用)vigr
/vipw
工具安全编辑组/用户文件newgrp
命令临时切换主组:
bash
newgrp developers
通过合理组合这些分组方式,可以实现从简单个人系统到企业级环境的灵活权限管理。