用户和组 -- 系统的“身份证”体系
三类用户
Linux 把用户分为三种角色:
| 类型 | 说明 | 例子 |
|---|---|---|
| 超级用户 | 系统的上帝,什么都能干 | UID=0 |
| 普通用户 | 日常使用的账户,受限 | UID ≧ 1000 (通常) |
| 系统用户 | 给程序/服务用的,不能登录 | UID 通常在 1 - 999 |
UID (User ID) 是系统识别用户的唯一编号。用户名只是给人看的”昵称“,系统内部只用数字 UID。
组(Group) --- "俱乐部"的盖面
每一个用户可以属于多个组,就像一个人可以参加多个俱乐部。
- 主组(Primary Group) :用户创建文件时,文件默认属于这个组
- 附加组((Supplementary Groups) :用户额外加入的组,获得这些组的权限
关键配置文件
系统通过两个纯文本来管理用户和组:
/etc/passwd --- 用户列表(任何人可读):
root:x:0:0:root:/root:/bin/bash
alice:x:1000:1000:Alice:/home/alice:/bin/bash
nginx:x:997:995:Nginx web server:/var/lib/nginx:/sbin/nologin
格式: 用户名:密码占位符:UID:GID:描述:home 目录:Shell
信息
密码不在 /etc/passwd 里,真正的密码哈希在 /etc/shadow
/etc/group --- 组列表:
root:x:0:
docker:x:993:alice,bob
wheel:x:10:alice
格式:组名:密码占位符:GID:成员列表
查看当前身份信息
whoami # 我是谁?→ 输出当前用户名
id # 详细信息:UID、GID、所属组
groups # 我属于哪些组?