1.linux为什么要用户管理
linux是多用户的系统,一个Linux上可以使用很多用户,当用户过多就会每个文件混乱,为了保证文件安全性和私密性,可以归类,方便管理,以及一个组中成员的权限设置
2.用户查看
id username : 验证用户是否存在
如果存在会显示此用户的uid , gid,groups
whoami: 查看当前登录用户
3.用户的切换
su 和su - 都可以
区别:su 只是单纯切换了用户的身份,没有加载用户的环境和用户配置。su -: 属于完全切换,加载了用户环境和配置,使用su 可能会存在bash 的显示问题
4.用户添加
4.1 指定uid 添加用户
4.2指定家目录添加用户
4.3指定用户所属组g和副组G
如果没有指定用户的主组,创建用户时会创建一个同名的组,自己属于这个组
4.4指定用户bash
4.5 指定用户的描述信息
5.用户删除
userdel -r 是全部删除,包括用户家目录等。user 会保留。
6.用户修改
6.1 修改家目录
usermod -md /var/test charlotte
:这条命令是用来修改用户 charlotte
的主目录为 /var/test
。-m
参数表示移动用户主目录,-d
参数表示定义新主目录。不加-m就是重新创建一个家目录。
6.2修改用户bash
可以看到charlotte 的家目录已经改到了/sbin/nologin下面,同时可以看到他的uid为1010
6.3修改用户uid
-u 表示修改用户的uid,刚刚还是1010,修改之后改为1100
查看用户uid的方法: 1. id 用户名
2. 查看 /etc/passwd 文件
6.4修改用户组
在修改用户组之前,需要先看看有没有这个用户组/etc/group
如果已经有用户组就可以添加了
-g : 修改用户的主组,不能加参数a
-G : 给用户把副组清空,在添加一个副组。如果需要追加不覆盖以前的副组,需要加上参数a。
7.设置用户密码
passwd 用户名 : 交互式设置密码
echo '密码' | passwd --stdin charlotte : 面交互修改密码
7.1 给用户设置锁
passwd -l 用户名 : 为用户设置锁,不能ssh登录。
passwd -u 用户名 : 解锁
8.用户组添加
group 用户组名 : 根据gid顺序创建用户组
group -g 用户名 : 指定gid 创建用户
9.用户组修改
group -g gid 用户组 : 修改用户组的gid
10.用户组删除
groupdel 用户组名 : 删除用户组