
1、用户配置文件
- /etc/passwd 用户信息
- /etc/shadow 用户密码信息
- /etc/group 组信息
- /etc/gshadow 组密码信息.
文件解析:
/etc/passwd文件
例如:
root:x:0:0:root:/root:/bin/bash
解释:
用户名:密码:uid:gid:说明:主目录:shell路径
/etc/shadow文件
例:
root:$1$aXe0vpNu$VLNGn6DFA64jsZu/Mjmsx.:17850:0:99999:7:::
解释:
用户名:密码:最近改动密码日期(1970.1.1算起的总天数):密码不可被更改的天数(0为没有限制):密码需要重新变更的天数(99999为没有限制):密码过期预警天数:密码过期的宽恕时间(到变更密码时期未修改密码则该天数有效):账号失效日期:保留
/etc/group文件
例:
root:x:0:root
解释:
组名:组密码:gid:组内用户
/etc/gshadow文件
例:
mike:!::
解释:
组名:加密密码:组管理员:组附加用户列表(!表示没有组密码)
2、用户管理
添加一个用户mike,获取root权限
- useradd mike
- passwd mike
- usermod -g root mike
- 修改/etc/passwd mike的uid=0 #当两个uid相同时,表示是一个用户,su -切换用户不会有任何变化
删除mike
userdel -r mike
-r 删除mike的用户目录
3、用户组管理
groupadd 添加用户组
groupdel 删除用户组
groupmod 修改用户组信息
groups mike 显示用户所属的用户组
4、切换用户
su - mike
-表示切换当前环境变量
例:su
su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。
su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;
su -命令切换以后,工作目录变成root的工作目录了。用echo $PATH命令看一下su和su -以后的环境变量有何不同。以此类推,要从当前用户切换到其它用户也一样,应该使用su -命令
