用户
Linux 用户
在 Linux 中,每个文件和目录都有一个所有者和属组,用于控制对它们的访问权限
无论是 Windows、MacOS、Linux 均采用多用户的管理模式进行权限管理
换句话说,Linux 系统支持多个用户在同一时间内登陆,不同用户可以执行不同的任务,并且互不影响
不同用户具有不同的权限,毎个用户在权限允许的范围内完成不同的任务
提示
在 Linux 系统中,拥有最大权限的账户名为:root(超级管理员)
而普通用户在许多地方的权限是受限的
每个用户在自己家目录下,拥有最高权限
Linux 用户组
用户组是一组用户的集合,由管理员定义
目的就是更方便地管理和授予权限。同一用户组内的所有成员都具有相同的访问权,这些访问权取决于组的权限设置
用户与用户组的关系
在 Linux 中,每个用户都至少属于一个用户组,但也可以同时属于多个用户组
这些用户组定义了用户的访问权限,决定着用户可以执行哪些操作、访问哪些目录和文件等

用户管理
添加用户
useradd -c "这是新增用户" liuchunlong
useradd -u 1009 liuchunlong参数
-ccomment 指定一段注释性描述。-d目录 指定用户主目录,如果此目录不存在,则同时使用-m 选项,可以创建主目录(默认为 hone,一般不指定)。-g用户组 指定用户所属的用户组。-e账户的到期时间,格式为 YYYY-MM-DD.-u指定该用户的默认 UID-s指定该用户的默认 Shell 解释器
设置用户密码
passwd liuchunlong # 回车,输入新密码--确认新密码
passwd -df liuchunlong参数
-d:删除密码,仅有系统管理者才能使用;-f:强制执行;-k:设置只有在密码过期失效后,方能更新;-l:锁住密码;-s:列出密码的相关信息,仅有系统管理者才能使用;-u:解开已上锁的帐号
删除用户
userdel -r liuchunlong参数
-r,删除用户的 HOME 目录,不使用-r,删除用户时,HOME 目录保留-f强制删除用户
修改用户
usermod -u 1002 liuchunlong
usermod -s bash liuchunlong参数
-c<备注>: 修改用户帐号的备注文字;-d<登入目录>: 修改用户登入时的目录;-e<有效期限>: 修改帐号的有效期限;-f<缓冲天数>: 修改在密码过期后多少天即关闭该帐号;-g<群组>: 修改用户所属的群组;-G<群组>;修改用户所属的附加群组;-l<帐号名称>: 修改用户帐号名称;-L: 锁定用户密码,使密码无效;-s: 修改用户登入后所使用的 shell;-u: 修改用户 ID; U:解除密码锁定
查看所有用户信息
这个命令将显示系统中所有现有的用户账户
cat /etc/passwd| 字段 | 含义 |
|---|---|
| 用户名 | 用户登录系统时,使用的用户名 |
| 密码 | 密码位 |
| UID | 用户标识号 |
| GID | 缺省组标识号 |
| 注释性描述 | 例如,存放用户全名等信息 |
| HOME 目录 | 用户登录系统后的默认目录 |
| 命令解释器 | 用户使用的 shell,默认为 bash |
查看具体用户默认信息
id liuchunlong超级用户与普通用户
在 Linux 系统中,拥有最大权限的账户名为:root(超级管理员)
普通用户的权限,一般在其 HOME 目录内是不受限的
一旦出了 HOME 目录,大多数地方,普通用户仅有只读和执行权限,无修改权限
su 和 exit 命令
su 命令就是用于账户切换的系统命令
切换用户后,可以通过 exit 命令退回上一个用户,也可以使用快捷键:ctrl + d
su liuchunlong
exit切换用户失败解决方法
有时:切换用户后发现只显示$符号,部分命令无法正常使用,解决如下:
usermod -s /bin/bash liuchunlong # 更改 shell 解释器sudo 命令
在我们得知 root 密码的时候,可以通过 su 命令切换到 root 得到最大权限,但是不建议长期使用 root 用户,避免带来系统损坏
我们也可以使用 sudo 命令,为普通的命令授权,临时以 root 身份执行
但是并不是所有的用户,都有权利使用 sudo,我们需要为普通用户配置 sudo 认证
切换到 root 用户,执行 visudo 命令,会自动通过 vim 编辑器打开:/etc/sudoers,在文件的最后添加
用户名 ALL=(ALL) NOPASSWD:ALL其中最后的 NOPASSWD:ALL 表示使用 sudo 命令,无需输入密码
id 与 whoami 命令
id 命令
用来查看用户基本信息
终端会输出当前用户的身份信息,其中包括 uid 和 gid 字段,分别表示用户 ID 和组 ID。如果 uid 为 0,则说明该用户是管理员
id liuchunlongwhoami 命令
whoami 命令可以查看当前用户的用户名,但是不能直接判断该用户是否为管理员
whoami令行提示符中的$和#符号通常用来表示不同的用户或权限等级
$:该符号一般出现在非特权用户的命令提示符中,表示当前用户没有超级用户(root)的权限#:该符号一般出现在超级用户(root)的命令提示符中,表示当前用户拥有最高权限

至此,本章节的学习就到此结束了,如有疑惑,可对接技术客服进行相关咨询。