目录
用户相关文件
/etc/passwd 用户信息文件
vi /etc/passwd
- root:x:0:0:root:/root:/bin/bash
- 第一列: 用户名
- 第二列: 密码位
- 第三列: 用户 ID
- 0 超级用户 UID。如果用户 UID 为 0,代表这个账号是管理员账号。那 Linux 中如何把普通用户升级成为管理员呢?就是把其他用户的 UID 修改为 0 就可以了,这点和Windows 是不同的。不过不建议建立多个管理员账号。
- 1-499 系统用户(伪用户)UID。这些 UID 账号是系统保留给系统用户的 UID,也就是说 UID 是 1-499 范围内的用户是不能登录系统的,而是用来运行系统或服务的。其中
- 1-99 是系统保留的账号,系统自动创建。100-499是预留给用户创建系统账号的。
- 500-60000 普通用户 UID。建立的普通用户 UID 从 500 开始,最大到 60000。这些用户足够使用了,但是如果不够也不用害怕,2.6.x 内核以后的 Linux 系统用户 UID 已经可以支持 2^32这么多了。
- 第四列:组 ID GID 添加用户时,如果不指定用户所属的初始组,那么会建立和用户名相同的组
- 第五列:用户说明
- 第六列:用户家目录 ~
- 第七列:登录 shell /bin/bash
- 查看密码
vi /etc/shadow
- 查看组
vi /etc/group
- 如何把普通用户变成超级用户:把用户 UID 改为 0
- 将普通用户改为root用户,改UID
/etc/shadow 影子文件
- root : $6$9w5Td6lg$bgpsy3olsq9WwWvS5Sst2W3ZiJpuCGDY.4w4MRk3ob/i85fI38RH15wzVoomff9isV1PzdcXmixzhnMVhMxbv0 : 15775 : 0 : 99999 : 7 : :
- 第一列:用户名
- 第二列:加密密码
- 我们也可以在密码前人为的加入“!”或“*”改变加密值让密码暂时失效,使这个用户无法登陆,达到暂时禁止用户登录的效果。
- 注意所有伪用户的密码都是“!!”或“*”,代表没有密码是不能登录的。当然我新
- 创建的用户如果不设定密码,它的密码项也是“!!”,代表这个用户没有密码,不能登录
- 第三列: 密码最近更改时间, 1970 年 1 月 1 日作为标准时间
- 时间戳转日期
[root@localhost ~]# date -d "1970-01-01 15775 days"
2013 年 03 月 11 日 星期一 00:00:00 CST
- 日期转时间戳
[root@localhost ~]# echo $(($(date --date="2013/03/11" +%s)/86400+1))
15775
-
- 第四列:两次密码的修改间隔时间(和第 3 字段相比)
- 第五例:密码有效期(和第 3 字段相比)
- 第六列:密码修改到期前的警告天数(和第 5 字段相比)
- 第七列:密码过期后的宽限天数(和第 5 字段相比)
- 第八列:密码失效时间这里同样要写时间戳,也就是用 1970 年 1 月 1 日进行时间换算。
- 如果超过了失效时间,就算密码没有过期,用户也就失效无法使用了
- 第九列:保留
/etc/group 组信息文件
- root : x : 0 : root
- 第一列:组名
- 第二列:组密码位
- 第三列:GID
- 第四列:此组中支持的其他用户。附加组是此组的用户
- 初始组:每个用户初始组只能有一个,初始组只能有一个,一般都是和用户名相同的组作为初始组
- 附加组:每个用户可以属于多个附加组。要把用户加入组,都是加入附加组
- 组密码文件/etc/gshadow
- 如果我给用户组设定了组管理员,并给该用户组设定了组密码,组密码就保存在这个文件当中。组管理员就可以利用这个密码管理这个用户组了。
- 用户的家目录
-
- 用户邮箱目录
- 这个邮箱在/var/spool/mail 目录当中,例如 user1 用户的邮箱就是/var/spool/mail/user1 文件
- 用户模板目录
- /etc/skel/
- 用户邮箱目录
- 为每一个新增用户加入一个信息,先写在/etc/skel/中,然后创建新用户就有了
【注】:参考尚硅谷沈超老师教程