Linux权限(一)

基本指令

sudo

1. sudo是对指令的短暂提权的

在这里插入图片描述

在这里插入图片描述

2. 比如安装软件,安装到系统中,需要管理员root权限,这些命令其实只安装了一份,普通用户和超级用户可以同时使用

sudo apt install -y zip usr/bin 

3. 为什么提权的时候不输入root的密码,而是输入用户自己的密码?人人都是root吗?
whoami -> 普通用户 -> sudo ls -> 报错
人人都是root自己即是管理员又是用户,是可被信任的

在这里插入图片描述

4. sudoers配置文件中,把用户添加到100行左右,就可以运行 sudo ls了,否则使用不了sudo ls,通过vim进入配置文件

在这里插入图片描述

权限

1. 权限是什么?
权限的本质是能或者不能做什么事情
2. 为什么又权限?
1、为了控制用户的行为,防止错误的发生
2、理解
权限首先限制的是角色(人)
权限要求目标必须具备对应的属性
权限 = 角色 + 目标权限属性
Linux下一切皆文件,文件具有读,写,执行

    1. 角色
      1.拥有者
      2.所属组
      3.other
      在这里插入图片描述
    1. root如果不是拥有者和所属组,那么它就是other,other是不需要记录的
    1. root,zpw都是用户,拥有者,所属组,other都时用户扮演的角色
    1. 什么是所属组?为什么要有所属组?
      1.所属组是可以添加用户进来,不允许other权限的访问,更精细化的权限管理,首先要有更精细化的身份角色
      在这里插入图片描述
  • 权限位

在这里插入图片描述

  • my.txt这个文件,whb充当拥有者,具有读,写权限,没有执行权限,whb充当所属组,具有读,写权限,没有执行权先,other具有读权限,没有写和执行权限

在这里插入图片描述

chmod

权限 = 角色 + 目标属性

修改目标属性

1. chmod可以修改文件的权限

// u是拥有者
chmod u-r my.txt
// 去掉r权限
chmod u+r my.txt
// 加上r权限
chmod u-rw my.txt
// g是所属组
chmod g+r my.txt
// o是other
chmod o+r my.txt
// 同时更改拥有者,所属组,other的权限
chmod u-rw,g+r,o+w my.txt
// 可以同时加上所有权限
chmod u+rwx,g+rwx,o+rwx my.txt
// 给所有人加上r权限,a是all
chmod a+r my.txt

在这里插入图片描述

  • 重点部分
  1. 能更改任何人的文件权限吗?
    用户只能更改自己文件权限,如果想更改别人的文件权限,就需要进行提权
    sudo chmod u-rw root.txt 这样可以强行更改用户的权限
    在这里插入图片描述
  2. 没有权限会怎么办?
    系统会拒绝让我们访问
    在这里插入图片描述
  3. 把my.txt的拥有者修改成root
    在这里插入图片描述
  4. 确认权限信息的时候,系统会先确认用户是谁?拥有者,所属组,other?
    在centos下,用户的角色只确认一次,不会进行二次确认,顺序是拥有者,所属组,other,确认完之后看对应的角色是否有属性,就可以确认是否能够读,写,执行了
  5. 将文件my.txt的所属组修改为root
    在这里插入图片描述
  6. 将用户的拥有者,所属组修改回来
    在这里插入图片描述
  7. root用户的权限不受权限的约束,root是只能匹配other角色,但是它不受权限的约束,所以可以文件操作
    在这里插入图片描述
  8. 如何理解可执行?
    可执行权限 != 文件可执行
    机会 + 能力

    因为这个只是给文件权限了,如果文件没有能力执行文件,那么也是不可执行的

修改角色

1. chown/chgrp:修改文件的拥有者和所属组

  • sudo chown root cmd
  • sudo chgrp root cmd

在这里插入图片描述

  • sudo chown whb:whb cmd,将拥有者和所属组都修改了

在这里插入图片描述

修改权限属性

1. rwx可以看成二进制的111,三位2进制可以表示一个8进制,所以rwx是7

chmod 777 cmd
// 把拥有者,所属组,other都带上权限了

目录权限

  • rwx分别对目录意味着什么?

  • 如果对目录没有r权限,就无法查看目录里面的文件
    在这里插入图片描述

  • 如果对目录没有w权限,无法在指定目录内部新建文件
    在这里插入图片描述

  • 如果想进入一个目录,需要什么权限?
    需要的是执行(x)权限
    在这里插入图片描述

  • 总结:默认情况下,新建一个目录,rwx权限都必须要有

  • 理解Linux中多用户之间是怎么相互隔离的?
    在家目录下新建一个用户,对拥有者具有读,写,执行权限,对所属组,other都是没有权限的,因此限制了其他用户进入自己的家目录下

在这里插入图片描述

  • /etc/sudoers 是 Linux 系统中用于配置 sudo 权限的配置文件。它定义了哪些用户或用户组可以使用 sudo 命令,以及可以执行哪些命令

在这里插入图片描述

缺省权限

为什么默认的权限是我们看到的样子?

1. 对普通文件来讲,起始权限为666,默认不带可执行
2. 对于目录来讲,起始权限是777,默认携带x

在这里插入图片描述

3. 第一个0是用户的,我们不用考虑,

在这里插入图片描述

  • 为什么起始权限是775和664,因为各个系统的权限掩码有所不同
    在这里插入图片描述
  • 权限掩码
  • 002 -> 000 000 010 -> 最终权限 = 起始权限&(~umask)
  • 权限掩码的目的是什么?
    1、希望凡事在umask中出现的权限,都不在最终权限中出现
    在这里插入图片描述
  • 修改umask

在这里插入图片描述

  • 两个不同的用户想要共同查看或者修改同一个配置文件
  • w权限,具有修改,删除,新建的功能
    一个文件能否被删除,与文件本身无关,与文件所处目录的w权限有关
    在这里插入图片描述
    在 ls -ld lesson 命令中,-d 选项的作用是 列出目录本身的信息,而不是目录中的内容。

黏滞位

1. bin,usr/bin放的都是系统的指令
2. boot 放的是与启动相关的配置文件,操作系统
3. dev 操作系统启动时的设备,键盘,显示器,网卡
4. etc 系统启动时的配置文件
5. home 里面放的是张三,李四这样的账号
6. lib 放的是动静态库
7. lib64 放的是64位的库
8. media 是我们的媒体设备,比如插U盘
9. proc 是进程相关的信息
10. var 是系统中的日志信息
11. root 是我们的root账号
12. tmp 是我们系统存在的临时文件

在这里插入图片描述

2. 如果两个用户之间要进行文件协作呢?
不能放在任何一个私人账号下

在这里插入图片描述

3. 在/ 根目录下新建一个目录,这个目录是共享目录,如果任何一个人都能在共享目录下新建,但是不想让非拥有者删除该怎么办?

可以在共享目录下增加一个t黏滞位
chmod o+t /tmp_back
这样可以实现用户自己创建的文件只能自己删除,别人不能删除

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值