①查看用户
whoami:查看当前登录用户的用户名
who am i (who mom likes):
打开当前伪终端的用户的用户名 伪终端/当前打开伪终端的序号 当前伪终端的启动时间
who命令其他常用参数
参数 | 说明 |
-a | 打印能打印的全部 |
-d | 打印死掉的进程 |
-m | 同 am i,mom likes |
-q | 打印当前登录用户数及用户名 |
-u | 打印当前登录用户登录信息 |
-r | 打印运行等级 |
②创建用户
在Linux系统中,root账户拥有整个系统的最高权限。root权限是系统权限的一种,与SYSTEM权限是一个概念,但高于Administrator权限,root是Linux和UNIX系统中的超级管理员用户账户,该账户拥有整个系统的最高权限。
登录系统时都是以普通账户的身份登录的,要创建用户需要root权限,需要用到sudo命令。使用sudo命令有两个前提:一是要知道当前登录用户的密码;二是当前用户必须在sudo用户组。
su,su- 与 sudo(在Linux环境下输入密码是不会显示的)
su<user> 可以切换到用户user,执行时需要输入目标用户的密码,sudo<cmd>可以以特权级别运行cmd命令,需要当前用户属于sudo组,且需要输入当前用户的密码。su - <user>命令也是切换用户,同时环境变量也会跟着改变成目标用户的环境变量。
创建用户:sudo adduser 要创建的用户名称
该命令不仅可以添加用户到系统,而且也会默认为新用户创建home目录;
登录用户:su -l 用户名称
退出当前用户:exit或Ctrl + d
③用户组
在Linux中每个用户都有一个归属(用户组),用户组简单地理解就是一组用户的集合,它们共享一些资源和权限,同时拥有私有资源。一个用户可以属于多个用户组,就像你既属于家庭有属于公司或学校。
③查看自己所处的用户组
方法一:使用groups命令(groups shiyanlou)
冒号之前表示用户,后面表示该用户所属的用户组。每次新建用户如果不指定用户组的话,默认会自动创建一个与用户名相同的用户组。默认情况下在sudo用户组里可以使用sudo命令获得root权限。
方法二:查看 /etc/group 文件(cat /etc/group | sort)
cat命令用于读取指定文件的内容并打印到终端输出。| sort 表示将读取的文本进行一个字典排序再输出。
可以使用 cat /etc/group | grep -E "shiyanlou"来过滤掉不想看到的结果。
(使用cat命令输出/etc/group目录下的所有文件,使用管道符,并在管道符后使用grep命令搜索“shiyanlou”,在将查询到的结果替换之前的输出结果输出)
/etc/group 文件格式说明:
/etc/group的内容包括用户组(Group)、用户组指令、GID及该用户组所包含的用户(User),每个用户组一条记录。格式如下:
group_name:password:GID:user_list
password字段为x并不表示密码就是它,而是表示密码不可见。如果用户主用户组,即用户的GID等于用户组的GID,那么最后一个字段user_list就是空的。
将其他用户加入sudo用户组
默认情况下,新创建的用户是不具有root权限的,也不在sudo用户组中,可以让其加入sudo用户组从而获取root权限。
使用usermod命令可以为用户添加用户组,使用该命令必须有root权限。(可以直接使用root用户为其他用户添加用户组,或者用其他已经在sudo用户组的用户使用sudo命令获取权限来执行该命令)。
例如:
su shiyanlou(此处需要输入密码) → 登录shiyanlou
groups lilei → 查看lilei所属的用户组
sudo usermod -G sudo lilei → 将lilei添加进sudo用户组
groups lilei → 再次查看lilei所属于的用户组,看是否加入成功
④删除用户
sudo deluser lilei