1.用户信息文件 /etc/passwd
第1个字段:用户名称
第2个字段:密码标志
第3个字段:UID(用户ID) 0表示超级用户;1-499表示系统用户(伪用户);500-65535表示普通用户
第4个字段:GID(用户初始组ID)
第5个字段:用户说明
第6个字段:家目录普通用户在 /home/用户名/超级用户在 /root/
第7个字段:登录之后的Shell
2.影子文件 /etc/shadow
第1个字段:用户名
第2个字段:加密密码,SHA512散列加密算法,如果密码位是“!!”或“*”代表没有密码,不能登录
第3个字段:密码最后一次修改日期,使用1970年1月1日作为标准时间,每过一天时间戳加1
第4个字段:两次密码的修改间隔时间
第5个字段:密码有效期
第6个字段:密码修改到期前的警告天数
第7个字段:密码过期后的宽限天数,0表示过期后立即失效,-1表示密码永远不会失效
第8个字段:账号失效时间,用时间戳表示
第9个字段:保留
时间戳换算:
1.时间戳换算为日期: date -d “1970-01-01 16066 days”
2.日期换算为时间戳: echo $(($(date--date="2014/01/06"+%s)/86400+1))
3.组信息文件 /etc/group
第1字段:组名
第2字段:组密码标志
第3字段:GID
第4字段:组中附加用户
组密码文件 /etc/gshadow
第1字段:组名
第2字段:组密码
第3字段:组管理员用户名
第4字段:组中附加用户
用户的家目录:
普通用户:/home/用户名/ 权限是700
超级用户:/root/ 权限是55 0
用户的邮箱:/var/spool/mail/用户名/
用户的模板目录:/etc/skel/
用户管理命令:
用户添加命令:useradd [选项] 用户名
a.选项: -u UID 手工指定用户的UID号
b.选项: -d 家目录 手工指定用户的家目录
c.选项: -c 用户说明 手工指定用户的说明
d.选项: -g 组名 手工指定用户的初始组
e.选项: -G 组名 指定用户的附加组
f.选项: -s shell 手工指定用户的登录shell,默认是/bin/bash
用户默认值文件:/etc/default/useradd
GROUP=100 用户默认组
HOME=/home 用户家目录
INACTICE=-1 密码过期宽限天数(shadow文件7字段)
EXPIRE= 密码失效时间
SHELL=/bin/bash 默认shell
SKEL=/etc/skel 模板目录
CREATE_MAIL_SPOOL=yes 是否建立邮箱
/etc/login.defs
PASS_MAX_DAYS 99999 密码有效期
PASS_MIN_DAYS 0 密码修改间隔
PASS_MIN_LEN 5 密码最小5位
PASS_WARN_AGE 7 密码到期警告
UID_MIN 最小UID
UID_MAX 最大UID
ENCRYPY_METHOD SHA512 加密模式
用户密码命令:passwd [选项] 用户名
a.选项:-S 查询用户密码的密码状态。仅root用户可用
b.选项:-l 暂时锁定用户。仅root用户可用
c.选项:-u 解锁yoghurt。仅root用户可用
d.选项:--stdin 可以通过管道符输出的数据作为用户的密码
修改用户信息:usermod [选项] 用户名
a.选项: -u 修改用户的UID号
b.选项: -c 修改用户的说明信息
c.选项: -G 修改用户的附加组
d.选项: -L 临时锁定用户
e.选项: -U 解锁用户锁定
修改用户密码状态:chage [选项] 用户名
a.选项:-l 列出用户的详细密码状态
b.选项:-d 修改密码最后一次更新日期
c.选项:-m 两次密码修改间隔
d.选项:-M 密码有效期
e.选项:-W 密码过期前警告天数
f.选项: -I 密码过后宽限天数
g.选项:-E 账号失效时间
删除用户:userdel [-r] 用户名
a.选项: -r 删除用户的同时删除用户家目录
切换用户身份:su [选项] 用户名
a.选项: - 选项只使用“-”代表连带用户的环境变量一起切换
b.选项: -c 仅执行一次命令,而不切换用户身份