您现在的位置是:首页 >学无止境 >【Linux】4、Linux 的用户、用户组和权限等网站首页学无止境

【Linux】4、Linux 的用户、用户组和权限等

JavaLearnerZGQ 2023-06-10 16:00:03
简介【Linux】4、Linux 的用户、用户组和权限等

一、Linux 的 root 用户

🔖 Windows、MacOS、Linux 等操作系统是采用多用户模式进行权限管理
🔖 Linux 中拥有最高权限的用户名是 root(超级管理员)
🔖 root 用户有系统的最高操作权限,普通用户在许多地方是有操作限制的(如:在根目录下创建文件夹)


🔖 普通用户的权限在其 HOME 目录内是不受限的
🔖 一旦不在 HOME 目录内,在大多地方,普通用户仅有执行的权限【没有修改权限】

二、切换用户相关命令

(1) su

🔖 su:Switch User【切换用户】

🔖 命令:su [-] 用户名

🔥 -:表示是否在切换用户后加载环境变量【建议带上】
🔥 参数:用户名(表示要切换的用户。若省略,表示切换到 root 用户)
🔥 切换用户后,可通过 exit 命令退回到上一个用户【也可用快捷键 CTRL + d
🔥 普通用户切换到其他用户需要输入密码(如:切换到 root 用户)
🔥 root 用户切换到其他用户是:无需密码,直接切换

(2) sudo

🔖 当得知 root 用户密码的时候,可通过 su 命令切换到 root 用户,进而获得最大权限
🔖 但此操作会导致系统损坏【不建议经常如此操作】

🔖 可使用 sudo 命令为普通用户授权,让普通用户临时拥有 root 用户的操作权限

✏️ 在其他命令之前带上 sudo 即可为这一命令临时赋予 root 权限
✏️ 并不是所有的用户都有权利使用 sudo需要为普通用户配置 sudo 认证


为普通用户配置 sudo 认证

✏️ ① 切换到 ROOT 用户
✏️ ② 执行 visudo 命令【会自动通过 vi 编辑器打开 /etc/sudoers 文件】
✏️ ③ 在该文件的末尾添加以下文字

zhangguoqing ALL=(ALL)        NOPASSWD: ALL
  • zhangguoqing 是普通用户账号
  • NOPASSWD: ALL 表示使用 sudo 命令无需输入密码

✏️ ④ 保存该文件

三、用户和用户组

🎹 Linux 中可以配置多个用户、配置多个用户组
🎹 用户可以加入到用户组中

🎹 Linux 关于权限管控有 2 个级别:
① 针对用户的权限管控
② 针对用户组的权限管控

🎹 eg:某个文件
① 可给某用户该文件的修改权限
② 可给某个用户组该文件的修改权限
③ 该用户组中全部的用户都有该文件的修改权限

(1) 用户组命令

创建和删除用户组的命令需要拥有 ROOT 权限

🔎 创建用户组:groupadd 用户组名
🔎 删除用户组:groupdel 用户组名
🔎 查看全部的用户组:cat /etc/group

(2) 用户相关命令

用户相关命令需要拥有 ROOT 权限

🎼 ① 创建用户
useradd -g -d 用户名

  • -g:用于指定用户被加入到哪个中。若不通过 -g 指定用户所属组【会创建同名组并把该用户加入其中】,使用 -g 必须保证该用户组存在;如已存在同名组,必须使用 -g 选项
  • -d:指定该用户的 HOME 路径。若不通过 -d 指定该用户的 HOME 目录【HOME 目录默认是:/home/用户名

🎼 ② 删除用户
userdel -r 用户名

  • -r:删除用户的 HOME 目录【若不指定:仅删除用户账号,不删除 HOME 目录;若指定:账号和 HOME 目录都被删除】

🎼 ③ 查看用户所属组
id 用户名

若不指定 用户名,则查看当前用户所属用户组

🎼 ④ 修改用户所属组
usermod -aG 用户组 用户名:将用户添加到用户组

(3) 查看当前系统中有哪些用户和用户组

getent passwd:查看系统中有哪些用户

在这里插入图片描述
输出的信息包括:用户:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bashe)


getent group:查看系统中有哪些用户组
在这里插入图片描述
输出的信息包括:组名称:组认证(默认为x):组ID

四、认识权限控制信息

在这里插入图片描述

⌚①:表示文件或文件夹的权限控制信息- 打头的是文件;d 打头的是文件夹;l 打头的是软链接】
⌚②:表示文件或文件夹所属的用户
⌚③:表示文件或文件夹所属的用户组


(1) 权限控制信息分析

⏰ 权限控制信息共有十个槽位
在这里插入图片描述

  • ①:所属用户权限
  • ②:所属用户组权限
  • ③: 其他用户权限
  • r:可读
  • w:可写
  • x:可执行

r
① 对文件:可查看文件内容
② 对文件夹:可查看文件夹内容(如 ls 命令)

w
① 对文件:可修改此文件
② 对文件夹:可在文件夹内执行创建、删除、改名等操作

x
① 对文件:可将文件作为程序执行
② 对文件夹:可将该文件夹作为工作目录(可 cd 到该文件夹)

(2) chmod 命令

🎈 chmod 命令用于修改文件或文件夹的权限

只有文件或文件夹的所属用户或 root 用户才可修改(才可执行该命令)

🎈 chmode [-R] 权限 文件或文件夹

-R:对文件夹中的全部内容应用同样的操作

chmod u=rwx,g=r,o=w good.txt 

(3) 权限的数字序号

🎈 r 权限序号为 4
🎈 w 权限序号为 2
🎈 x 选项需要为 1

在这里插入图片描述

0 表示没有任何权限

(4) chown 命令

✒️ chown:用于修改文件或文件夹所属的用户和用户组
✒️ 语法:chown -[R] [用户][:][用户组] 文件或文件夹
✒️ 此命令只能 ROOT 用户执行

在这里插入图片描述

chown zhangguoqing good.txt 
chown :zhangguoqing handsom.html

在这里插入图片描述

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。