Linux用户管理
2.1 查看用户
$ who am i
输出的第一列表示打开当前伪终端的用户的用户名(要查看当前登录用户的用户名,去掉空格直接使用 whoami
即可)
2.2 创建用户
添加一个用户lilei
$ sudo adduser lilei
登录到用户账户lilei
(su
: switch user)
$ su -login lilei #登录到账户 lilei 并且切换至该账户的工作目录
$ su -l lilei #简写
$ su - lilei #简写
$ su lilei #登录到账户 lilei 但还停留在当前目录
2.3 用户组
在 Linux 里面每个用户都有一个归属(用户组),用户组简单地理解就是一组用户的集合,它们共享一些资源和权限,同时拥有私有资源,就跟家的形式差不多,你的兄弟姐妹(不同的用户)属于同一个家(用户组),你们可以共同拥有这个家(共享资源),爸妈对待你们都一样(共享权限),你偶尔写写日记,其他人未经允许不能查看(私有资源和权限)。当然一个用户是可以属于多个用户组的,正如你既属于家庭,又属于学校或公司。
查看账户所在用户组
$ groups USERNAME # USERNAME为要查看的账户名
也可以通过查看 /etc/group
文件获知用户组信息
$ cat /etc/group
可以使用grep
命令过滤一下
$ cat /etc/group | grep -E "lilei" # 管道操作符 | 将上一个命令的输出传入下一个命令,-E 代表使用正则表达式
/etc/group
文件格式如下
group_name:password:GID:user_list
你看到上面的 password 字段为一个 x
,并不是说密码就是它,只是表示密码不可见而已。
这里需要注意,如果用户的 GID
等于用户组的 GID
(是组的创建者,默认就在组里面),那么最后一个字段 user_list
就是空的。
将新用户添加到指定用户组
$ sudo usermod -G sudo lilei # 将用户lilei添加到sudo组里(sudo组里的用户默认拥有sudo权限)
$ sudo usermod -G sudo shiyanlou # 将用户lilei添加到sudo组里
2.4 删除用户和用户组
$ sudo deluser lilei --remove-home # 删除用户lilei,并且一并删除其工作目录
/etc/group
文件也会同步更新,即该用户所在用户组也会自动移除被删除的账户
删除用户组可以使用 groupdel
命令,倘若该群组中仍包括某些用户,则必须先删除这些用户后,才能删除群组。