Linux-02(Linux用户和权限)
文章目录
- (一)认知 root 用户
- 一、root用户(超级管理员)
- 二、su 和 exit 命令
- 三、sudo 命令
- 四、为普通用户配置 sudo 认证
- (二)用户、用户组管理
- 用户组管理
- 用户管理
- getent
- (三)查看权限控制
- rwx
- (四)修改权限控制 chmod
- 权限的数字序号
- (五)修改权限控制 chown
(一)认知 root 用户
一、root用户(超级管理员)
Windows、MacOS、Linux,均采用多用户的管理模式进行权限管理。
在 Linux 系统中,拥有最大权限的账户名为:root(超级管理员)。
而在前期,我们一直使用的账户是普通的用户:yulisa
root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。
普通用户的权限,一般在其 HOME 目录内是不受限的。
一旦除了 HOME 目录,大多数地方,普通用户仅有只读和执行权限,无修改权限。
普通用户在根目录下没有权限创建文件夹。
二、su 和 exit 命令
su 命令就是用于账户切换的系统命令。Switch User。
su [-] [用户名]
-
-符号是可选的,表示是否在切换用户后加载环境变量,建议带上。
-
参数:用户名,表示要切换的用户,用户名也可以省略,省略表示切换到 root。
-
切换用户后,可以通过 exit 命令退回上一个用户,也可以使用快捷键:
ctrl+d
-
使用普通用户,切换到其他用户,需要输入密码。
-
使用 root 用户,切换到其他用户,无需密码。
三、sudo 命令
我们不建议长期使用 root 用户,避免带来系统损害。
我们可以使用 sudo 命令,为普通的命令授权,临时以 root 身份执行。
sudo 其他命令
并不是所有用户都有权利使用sudo,我们需要为普通用户配置sudo认证。
四、为普通用户配置 sudo 认证
切换到 root 用户,执行 visudo 命令,会自动通过 vi 编辑器打开 /etc/sudoers
在文件的最后添加(按 o):
NOPASSWD:ALL
表示使用 sudo 命令,无需输入密码。
(按esc)通过 :wq
保存
切换回普通用户
命令均以 root 运行
取消:回到root用户,visudo,把文件最后一行删掉
(二)用户、用户组管理
Linux 系统中可以:
- 配置多个用户
- 配置多个用户组
- 用户可以加入多个用户组中
Linux 中关于权限的管控级别,有2个级别:
- 针对用户的权限控制
- 针对用户组的权限控制
比如,针对某文件,可以控制用户的权限,也可以控制用户组的权限。
用户组管理
以下命令需要 root 用户执行
- 创建用户组
groupadd 用户组名
- 删除用户组
groupdel 用户组名
用户管理
以下命令需要 root 用户执行
- 创建用户
useradd [-g-d] 用户名
□ 选项:-g 指定用户的组,不指定 -g,会创建同名组并自动加入,指定 -g 需要组已经存在,如已存在同名组,必须使用 -g。
□ 选项:-d 指定用户 HOME 路径,不指定,HOME 目录默认在:/home/用户名
- 删除用户
userdel [-r] 用户名
□ 选项:-r,删除用户的HOME目录,不使用 -r,删除用户时,HOME 目录保留。 - 查看用户所属组
id [用户名]
□ 参数:用户名,被查看的用户,如果不提供,则查看自身。 - 修改用户所属组
usermod -aG 用户名 用户组
将指定用户加入指定用户组。
getent
使用 getent 命令,可以查看当前系统中有哪些用户。
getent passwd
(三)查看权限控制
1:表示文件、文件夹的权限控制信息。
2:表示文件、文件夹所属用户。
3:表示文件、文件夹所属用户组。
rwx
- r 表示读权限
- w 表示写权限
- x 表示执行权限
针对文件、文件夹的不同,rwx 的含义有细微差别。
- r
针对文件,可以查看文件内容;
针对文件夹,可以查看文件夹内容,如 ls 命令。 - w
针对文件,表示可以修改此文件;
针对文件夹,可以在文件夹内:创建、删除、改名等操作。 - x
针对文件,表示可以将文件作为程序执行;
针对文件夹,表示可以更改工作目录到此文件夹,即 cd 进入。
(四)修改权限控制 chmod
我们可以使用 chmod 命令,修改文件、文件夹的权限信息。
注意,只有文件、文件夹的所属用户或 root 用户可以修改。
chmod [-R] 权限 文件或文件夹
选项:-R,对文件夹内的全部内容应用同样的操作。
示例:
chmod u=rwx,g=rx,o=x hello.txt
将文件权限修改为:rwxr-x–x
其中:u 表示 user 所属用户权限,g 表示 group 组权限,o 表示 other 其他用户权限。
chomod -R u=rwx,g=rx,o=x test
将文件夹test 以及文件夹内全部内容权限设置为:rwxr-x–x
权限的数字序号
权限可以用 3 位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其他用户权限。
r 记为 4,w 记为 2,x 记为 1。
- 0: —
- 1:–x
- 2:-w-
- 3:-wx
- 4:r–
- 5:r-x
- 6:rw-
- 7:rwx
(五)修改权限控制 chown
使用 chown 命令,可以修改文件、文件夹的所属用户和用户组。
普通用户无法修改所属为其他用户或组,
所以此命令只适用于 root 用户执行。
chown [-R] [用户][:][用户组] 文件或文件夹
- 选项,-R,同 chmod,对文件夹内全部内容应用相同规则
- 选项,用户,修改所属用户
- 选项,用户组,修改所属用户组
- : 用于分隔用户和用户组