• (三)Linux 用户和权限


    一、认知 root 用户

    1. root 用户(超级管理员

    无论是 Windows、MacOS、Linux 均采用多用户的管理模式进行权限管理

    (1)在 Linux 系统中,拥有最大权限的账户名为:root(超级管理员)

    (2)而在前期,我们一直使用的账户是普通的用户:itheima

    root 用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的

    普通用户的权限,一般在其HOME目录内是不受限的
    一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限

    2. su 命令

    su 命令就是用于账户切换的系统命令,其来源英文单词:Switch User

    语法:su  【-】【用户名】

    (1)符号是可选的,表示是否在切换用户后加载环境变量(后续讲解),建议带上

    (2)参数:用户名,表示要切换的用户,用户名也可以省略,省略表示切换到 root

    (3)切换用户后,可以通过 exit 命令退回上一个用户,也可以使用快捷键:ctrl+d

    (4)

    使用普通用户,切换到其它用户需要输入密码,如切换到 root 用户。

    使用root用户切换到其它用户,无需密码,可以直接切换

    3. sudo命令

    不建议长期使用root用户,避免带来系统损坏。

    可以使用 sudo 命令,为普通的命令授权,临时以 root 身份执行。

    语法:sudo  其它命令

    (1)在其它命令之前,带上sudo,即可为这一条命令临时赋予root授权

    (2)需要为普通用户配置sudo认证

    4. 为普通用户配置 sudo 认证

    (1)切换到 root 用户,执行 visudo 命令,会自动通过 vi 编辑器打开:/etc/sudoers

    (2)在文件的最后添加:

            其中最后的 NOPASSWD:ALL 表示使用 sudo 命令,无需输入密码

    (3)最后通过wq保存

    (4)切换回普通用户

    (5)执行的命令,均以root运行

    二、用户、用户组管理

    Linux 系统中可以:
    配置多个用户
    配置多个用户组
    用户可以加入多个用户组中

     

    Linux中关于权限的管控级别有2个级别,分别是
    (1)针对用户的权限控制
    (2)针对用户组的权限控制
    比如,针对某文件,可以控制用户的权限,也可以控制用户组的权限。

    1. 用户组管理

    以下命令需 root 用户执行
    (1)创建用户组
            groupadd 用户组名
    (2)删除用户组
            groupdel  用户组名

    2. 用户管理

    以下命令需 root 用户执行

    (1)创建用户

            useradd 【-g -d】用户名

    1️⃣选项【-g】指定用户的组,不指定,会创建同名组并自动加入,指定需要组已经存在,如已存在同名组,必须使用【-g】

    2️⃣选项【-d】指定用户 HOME 路径,不指定,HOME目录默认在:/home/用户名
    (2)删除用户

            userdel【-r】用户名

    1️⃣选项【-r】删除用户的 HOME 目录,不使用删除用户时,HOME目录保留

    (3)查看用户所属组

            id【用户名】

    1️⃣参数:用户名,被查看的用户,如果不提供则查看自身

    (4)修改用户所属组

            usemod -aG        用户组 用户名,将指定用户加入指定用户组

    3. getent

    使用 getent 命令,可以查看当前系统中有哪些用户
    语法:getent passwd

    共有7份信息,分别是
    用户名:密码(X):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash) 

    使用 getent 命令,可以查看当前系统中有哪些用户组
    语法:getent group

    包含3份信息,

    组名称:组认证(显示为×):组ID

    三、查看权限控制

    1. 认知权限信息

    通过【ls -l】可以以列表形式查看内容,并显示权限细节

    (1)序号1,表示文件、文件夹的权限控制信息


    (2)序号2,表示文件、文件夹所属用户

    (3)序号3,表示文件、文件夹所属用户组 

    2. 权限细节解读

    让我们来解析一下序号1,权限细节
    权限细节总共分为10个槽位

    举例:drwxr-xr-x,表示:
    1️⃣这是一个文件夹,首字母d表示
    2️⃣所属用户(右上角图序号2)的权限是:有r有w有×,rwx
    3️⃣所属用户组(右上角图序号3)的权限是:有r无w有×,r-×(-表示无此权限)
    4️⃣其它用户的权限是:有r无W有×,r-x 

    3. rwx

    (1)【r】表示读权限

    1️⃣针对文件可以查看文件内容

    2️⃣针对文件夹,可以查看文件夹内容,如【ls】命令

    (2)【w】表示写权限

    1️⃣针对文件表示可以修改此文件

    2️⃣针对文件夹,可以在文件夹内:创建、删除、改名等操作

    (2)【x】表示执行权限

    1️⃣针对文件表示可以将文件作为程序执行

    2️⃣针对文件夹,表示可以更改工作目录到此文件夹,即cd进入

    四、修改权限控制-chmod

    1. chmod 命令

    我们可以使用chmod命令,修改文件、文件夹的权限信息。


    注意,只有文件、文件夹的所属用户或root用户可以修改。


    语法:chmod  【-R】  权限  文件或文件夹
    选项【-R】:对文件夹内的全部内容应用同样的操作

     

    2. 权限的数字序号

    权限可以用3位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其它用户权限。
    数字的细节如下:r记为4,w记为2,×记为1,可以有:

     

    五、修改权限控制-chown

    使用 chown 命令,可以修改文件、文件夹的所属用户和用户组

    普通用户无法修改所属为其它用户或组,所以此命令只适用于root用户执行

    语法:

    chown  【-R】 【用户】【:】【用户组】 文件或文件夹

    (1)选项【-R】:同chmod,对文件夹内全部内容应用相同规则

    (2)选项,用户,修改所属用户
    (3)选项,用户组,修改所属用户组
    (4)【:】:用于分隔用户和用户组

  • 相关阅读:
    Bootstrap Blazor Table 组件(二)手动刷新组件数据
    spring boot 集成 swagger3
    卷积神经网络Inception Net
    不要慌,选择排序也是一样简单的
    2022年最新吉林水利水电施工安全员模拟试题题库及答案
    4.k8s:cronJob计划任务,初始化容器,污点、容忍,亲和力,身份认证和权限
    vivado产生报告阅读分析11-时序报告7
    春雷视频添加投屏功能解惑
    今天去北京拜访了三国志游戏代理商,说说看法
    专利申请的流程及好处
  • 原文地址:https://blog.csdn.net/yirenyuan/article/details/127855683