一:概念
- 在 Linux 中,使用一个 32位整数 来记录每一个用户(USER ID 简单 UID),这意味着在 Linux 中,可以有 40亿 个不同的用户。
- 系统默认从 500之后创建用户/组,ROOT 用户的 UID/GID(Group ID 简称 GID) 为 0.
- 在 /etc/passwd 记录了每一个用户组/权限等信息
- 由于每个用户都有权限查看 /etc/passwd 权限.对于密码来说,是不安全的。
-
- 所以现代 Linux 将密码剥离到了 /etc/shadow 里面,只有 ROOT用户 可以查看
二: 账号管理
- useradd 添加用户
- 推荐使用 useradd -m 用户名 创建用户,这样会同时生成用户 ‘家’ 目录。
-
root@1feebb8a548b:~# useradd -m homework root@1feebb8a548b:~# cd /home/homework/ root@1feebb8a548b:/home/homework# pwd /home/homework
-
- 用户创建成功后,Linux 会在在 /etc/passwd 和 /etc/shadow 追加该用户记录,同时分配一个 UID 和 GID
-
cat /etc/passwd ... homework:x:1000:1000::/home/homework: cat /etc/shadow ... homework:!:17942:0:99999:7:::
-
- 同时创建这个用户组
-
cat /etc/group ... homework:x:1000:
-
- 推荐使用 useradd -m 用户名 创建用户,这样会同时生成用户 ‘家’ 目录。
- passwd 修改密码
- 没有设置过密码的用户是不允许登录的
- 在 /etc/shdow 里面会有 !作为标识
- usedel 删除用户
- 使用 usedel 删除用户, 同时会删除 /etc/passwd 和 /etc/shadow 的记录
- 但是 Linux 出于安全考虑,并不会删除所有的用户记录
- usedel -r 用户名 可以删除与用户相关的所有信息
- usermod 修改用户
- 冻结账户
- usermod -L 用户名
- 解冻账户
- usermod -U 用户名
- 冻结账户
三: 用户组管理
- groupadd 新增用户组
- groupadd 组名,新增的用户组可在 /etc/group 中查看
- groupdel 删除用户组
- groupdel 组名, 如果组内有成员,则删除失败
四: 用户信息
- users 查看系统内有哪些用户
- Who 查看当前登录用户
- W 用户详细信息