1. 用户和用户组
- 使用操作系统的人都是用户
- 用户组是具有相同系统权限的一组用户
2 配置文件
2.1 /etc/group
- /etc/group 存储当前系统中所有用户组信息
root 组编号为 0
1-499系统预留的编号 预留给安装的软件和服务的
- 用户手动创建的用户组从
500开始
- 组密码占位符都是
x
- 如果组内只有一个用户,而且用户名和组名相同的话,是可以省略用户名的
root:x:0:root
| 含义 | 含义 |
|---|
| root | 组的名称 |
| x | 密码占位符 |
| 0 | 组编号 |
| root | 组中用户名列表 |
2.2 /etc/gshadow
- 存放当前系统中用户组的密码信息
- 和
/etc/group中的记录一一对应
root:*::root
| 内容 | 含义 |
|---|
| root | 组的名称 |
| * | 组密码,*为空 |
| 组管理者,为空表示都可以管理这个组 |
| root | 组中用户名列表 |
2.3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
| 内容 | 含义 |
|---|
| root | 用户名 |
| x | 密码占位符 |
| 0 | 用户编号 |
| 0 | 用户组编号 |
| root | 用户注释信息 |
| /root | 用户主目录 |
| /bin/bash | shell类型 |
2.4 /etc/shadow
- 存放当前系统中所有用户的密码信息
- user:xxx:::::::
- 用户名:密码:
root:password:17982:0:99999:7:::
| 内容 | 含义 |
|---|
| root | 用户名 |
| password | 单向加密后的密码 |
| 17982 | 修改日期,这个是表明上一次修改密码的日期与1970-1-1相距的天数密码不可改的天数:假如这个数字是8,则8天内不可改密码,如果是0,则随时可以改 |
| 0 | 这个是表明上一次修改密码的日期与1970-1-1相距的天数密码不可改的天数:假如这个数字是8,则8天内不可改密码,如果是0,则随时可以改 |
| 99999 | 如果是99999则永远不用改。如果是其其他数字比如12345,那么必须在距离1970-1-1的12345天内修改密码,否则密码失效 |
| 7 | 修改期限前N天发出警告 |
| 密码过期的宽限天数 |
| 帐号失效日期 |
| 保留:被保留项,暂时还没有被用上 |
3. 用户命令
显示登录的用户名
whoami
显示指定用户信息,包括用户编号,用户名 主要组的编号及名称,附属组列表
id student
显示zhangsan用户所在的所有组
groups student
4. 用户和用户组操作
4.1 添加用户组
groupadd stu
cat /etc/group
4.2 修改用户组名称
groupmod -n student stu
cat /etc/group
4.3 修改用户组编号
groupmod -g 666 student
cat /etc/group
4.4 创建分组并指定编号
groupadd -g 888 teacher
4.5 删除用户组
groupdel student
4.6 添加用户
- 如果创建用户的时候没有指定用户组,系统会为他创建一个和用户名相同的用户组
groupadd stu
useradd -g stu zhangsan
useradd -g stu lisi
id zhangsan
id lisi
useradd -d /home/james james
passwd zhangsan
4.7 指定个人文件夹
usermod -d /home/james james
4.8 修改用户组
usermod -g student james
4.9 删除用户
userdel james
userdel -r james