Linux 用户属于多用户操作系统, 在 windows 中, 可以创建多个用户, 但不允许同一时间多个用户进行系统登陆, 但是 Linux 可以同时支持多个用户同时登陆操作系统, 登陆后互相之间并不影响.
用户 uid 的分类
0 超级管理员 <br/>1-200 系统用户, 由系统分配给系统进程使用 < br/>201-999 系统用户, 用来运行服务账户, 不需要登陆系统 (动态分配)<br/>1000 + 常规用户
组类别
基本组 优先使用基本组, 用户只能属于一个基本组, 用户默认基本组
附加组 基本组不能满足授权要求, 创建附加组, 用户可以属于多个附加组
私有组 私有组, 创建用户时如果没有指定基本组, 系统会创建和用户同名的组
1. 用户配置文件和密码配置文件
账户信息存放在 / etc/passwd, 账户密码信息保存在 / etc/shadow, 这两个文件是 linux 系统中最重要的文件之一.
如果没有这两个文件或者这两个文件出问题, 会导致无法正常登录 linux 系统.
/etc/passwd 账户文件
- root:x:0:0:root:/root:/bin/bash
- ///etc/passwd 由 ':' 分割成 7 个字段, 每个字段的具体含义如下:
字段名称 注释说明
1. 用户名称 // 用户的账号名称
2. 密码占位符 // 存放账户的口令, 暂用 x 表示, 密码保存在 / etc/shadow
3. 用户的 UID // 用户标识号
4. 用户基本组 GID // 组标识号
5. 用户注释 // 用户详细信息
6. 用户家目录 // 用户家目录, root 家目录是 / root 普通用户的家目录存在 / home/username, 可自定义
7. 用户登录 Shell // 用户登录 Linux 使用的 shell cat /etc/shells
/etc/shadow 用户密码文件
- root:!:14859:0:99999:7:::
- ///etc/shadow 由 ':' 分割成 9 个字段, 每个字段的具体含义如下:
字段名称 注释说明
1. 用户登陆名 // 用户的账号名称
2. 加密后的密码 // 用户密码, 这是加密过的口令 (未设密码时为!!)
3. 最近一次密码更改时间 // 从 1970 年到最近一次更改密码时间之间过了多少天
4. 密码最少使用几天 // 密码最少使用几天才可以更改密码 (0 表示无限制)
5. 密码最长使用几天 // 密码使用多少天需要修改密码 (默认 99999 永不过期)
6. 密码到期前警告期限 // 密码过期前多少天提醒用户更改密码 (默认过期提前 7 天警告)
7. 密码到期后保持活动的天数 // 在此期限内, 用户依然可以登陆系统并更改密码, 指定天数过后, 账户被锁定
8. 账户到期时间 // 从 1970 年起, 账户在这个日期前可使用, 到期后失效.
9. 标志 // 保留
2. 用户组管理, 用户管理
`/etc/group` 中存放用户组信息, 每行代表一个用户组, 如
root:x:0:groupname:password:gid:members
1. 用户组名.
2. 密码, 使用方法类似于 / etc/passwd, 只是其查找密码的文件为 / etc/gshadow.
3.gid, 该用户组的 id.
4. 该用户组包含的用户, 以该用户组为主用户组的用户不会在 members 中.
/etc/gshadow 中存放用户组的密码, 每行代表一个用户组, 如
1. groupname:password:admin_users:members
2. 用户组名.
3. 密码, 使用方法类似于 / etc/shadow.
4. 用户组管理员用户, 可以为逗号分隔的列表.
5. 该用户组包含的用户, 以该用户组为主用户组的用户不会在 members 中.
来源: http://www.bubuko.com/infodetail-2623458.html