一.用户管理配置文件
用户信息文件: /etc/passwd
密码文件: /etc/shadow
用户组文件: /etc/group
用户组密码文件: /etc/gshadow
用户配置文件: /etc/login.defs /etc/default/useradd
新用户信息文件: /etc/skel
登录信息: /etc/motd
1.用户信息文件 /etc/passwd
在终端输入 vi /etc/passwd 来打开用户配置文件,如下,每一行对应一个用户的信息
以root用户为例
root : x : 0 : 0 : root: /root: /bin/bash
一行有7个选项,每个选项对应的信息如下:
用户名 : 密码 : UID : GID : 注释性描述 : 宿主目录: 命令解释器(shell)
用户名: 用户登录系统时使用的用户名( 建议不要超过8位,并且用字母来命名)
密码 : 密码位 (其实并没有存放密码...,用x来代替)
UID:用户标识号
Linux用户分为三种: 超级用户( root, UID=0), 普通用户(UID 500-60000), 伪用户(UID 1-499)
伪用户: 1.伪用户与系统和程序服务相关 2.伪用户通常不需要或无法登录系统 3.可以没有宿主目录
GID: 缺省组标识号
用户组: 1.每个用户都至少属于一个组 2.每个用户组可以包括多个用户 3.同一用户组的用户享有改组共有的权限
注释性描述: 用户的描述信息, 这里的描述信息为root, 你也可以改成其他的, 比如superuser等,也可以什么都不写,当添加一个用户时,最好写上描述信息.
宿主目录: 用户登录系统后的缺省目录
命令解释器: 用户使用的Shell, 默认是bash.
2.密码文件 /etc/shadow
在终端输入命令 sudo cat /etc/shadow ,查看 /etc/shadow 文件
以root用户为 例
root : $6$lBJDhuJPKMsUtPix$v1BI7BylsT2/Kx4p/iGhufpDd9tTw2G2h8IDX0.ahunKNQ07JVXToADzmQ.DudoYkMfIDy0NNthw5qAbXqEAN1 : : 0 : 99999 : 7 :::
对应的解释如下
用户名 : 加密密码 : 最后一次修改时间 : 最小时间间隔 : 最大时间间隔(密码保持有效的最多天数) : 警告时间 : 帐号闲置时间 : 密码失效的绝对天数 : 标志
为什么要把密码放在/etc/shadow中呢, 一张图就解释了一切......
其实我们为用户设置密码时. 密码一开始会写到 /etc/passwd 的 密码位中, 也就是x 这个位置, 然后系统会执行一个 pwconv 命令 把这个密码 转换到 /etc/shadow 中.
现在试一下手工创建一个用户:(注意要在root权限下)
1. 先打开/etc/passwd 文件: vi /etc/passwd
如图,我在最尾端添加了一个pg2用户,因为不设置密码所以密码位没填,然后创建一个宿主目录
由于是用root创建的,所以还需要修改一下所有者,改成pg2
接下来还要在 /etc/shadow中添加信息
vi /etc/shadow
因为没密码,所以密码位不填,其他位模仿一下上面的pg1就可以了.至此就大功告成了,登录一下,果然成功了