韩顺平Linux 四十四--

四十四、rwx权限

权限的基本介绍

  • 输入指令 ls -l 显示的内容如下
    • -rwxrw-r-- 1 root 1213 Feb 2 09:39 abc
    • 0-9位说明
      • 第0位确定文件类型(d , - , l , c , b)

        • l 是链接,相当于 windows 的快捷方式
          • 代表是文件是普通文件
        • d 是目录,相当于windows 的文件夹
        • c 是字符文件,鼠标,键盘
        • b 是块设备,比如硬盘
          • cd /dev/ 目录下查看
      • 第 1-3 位确定所有者(该文件的所有者) 拥有该文件的权限 --User

      • 第 4-6 位确定所属组(同用户组的)拥有该文件的权限 --Group

      • 第 7-9 位确定其他用户拥有该文件的权限 --Other

rwx 作用到文件

  1. r 代表可读(read):可以读取,查看
  2. w 代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提是对该文件所在的目录有写权限,才能删除该文件
  3. x 代表可执行(execute): 可以被执行

rwx 作用到目录

  1. r 代表可读(read):可以读取,ls 查看目录内容
  2. w 代表可写(write): 可以修改,对目录内创建+删除+重命名目录
  3. x 代表可执行(execute): 可以进入该目录

四十五、权限说明案例

  • 在终端 ls -l 中显示的内容如下:
    • -rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
      • 10个字符确定不同用户能对文件干什么
      • 第一个字符代表文件类型:-l d c b
      • 其余字符每3个一组(rwx) 读(r)写(w) 执行(x)
      • 第一组 rwx : 文件拥有者的权限是读、写和执行
      • 第二组 rw-: 与文件拥有者同一组的用户的权限是读、写但不能执行
      • 第三组 r-:不与文件拥有者同组的其他用户的权限是读不能写和执行
    • 可用数字表示为 r=4 w=2 x=1 因此 rwx=4+2+1=7
    • 其他说明
      • 1 文件:硬连接数或 目录:子目录数
      • root 用户
      • root 组
      • 1213 文件大小(字节),如果是文件夹,显示 4096字节
      • Feb 2 09:39 最后修改日期
      • abc 文件名

四十六、修改权限

  • 基本说明
    • 通过 chmod 指令,可以修改文件或者目录的权限
  • 第一种方式: + 、 - 、 = 变更权限
    • u :所有者 g:所有组 o:其他人 a:所有人(u、g、o 的总和)
    • chmod u =rwx, g=rx, o=x 文件/目录
    • chmod o+w 文件/目录名
    • chmod a=x 文件/目录名
  • 案例演示
    • 给abc 文件的所有者读写执行的权限,给所在组读执行权限,给其他组读执行权限
      • chmod u=rwx,g=rx,o=rx abc
    • 给abc文件的所有者除去执行的权限,增加组写的权限
      • chmod u-x,g+w abc
    • 给abc文件的所有用户添加读的权限
      • chmod a+r abc
    • 第二种方式:通过数字变更权限
      • r=4 2=2 x=1 rwx=4+2+1=7
      • chmod u=rwx,g=rx,o=x 文件目录名
      • 相当于 chmod 751 文件目录名
      • 案例演示
        • 要求:将 /home/abc.txt 文件的权限修改成 rwxr-xr-x,使用给数字的方式实现
          • rwxr-xr-x中 rwx等于7,r-x等于5,r-x等于5
            • chmod 755 /home/abc.txt

四十七、修改文件所有者和所在组

修改文件所有者-chown

  • 基本介绍
    • chown newowner 文件/目录 改变所有者
    • chown newowner:newgroup 文件/目录 改变所有者所在组
    • -R 如果是目录 则使其下所有子文件或目录递归生效
  • 案例演示
    • 请将 /home/abc.txt 文件的所有者修改成 tom
      • chown tom /home/abc.txt
    • 请将 /home/test 目录下所有的文件和目录的所有者都修改成 tom
      • chown -R tom /home/test

修改文件/目录所在组-chagrp

  • 基本介绍
    • chgrp newgroup 文件/目录 改变所在组
  • 案例演示
    • 请将 /home/abc.txt 文件的所在组修改成 shaolin
      • groupadd shaolin
      • chgrp shaolin /home/abc.txt
    • 请将 /home/test 目录下的所有文件和目录都修改成 shaolin
      • chgrp -R shaolin /home/test

四十八、权限管理应用实例1

最佳实践-警察和土匪游戏

police,bandit

jack,jerry:警察

xh,xq:土匪

  1. 创建组
  2. 创建用户
  3. jack 创建一个文件,自己可以读写,本组人可以读,其他组没任何权限
  4. jack 修改该文件,让其他组人可以读,本组人可以读写
  5. xh 投靠警察,看看是否可以读写
相关推荐
A小辣椒9 小时前
TShark:Wireshark CLI 功能
linux
A小辣椒13 小时前
TShark:基础知识
linux
AlfredZhao15 小时前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao1 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334662 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪2 天前
linux 拷贝文件或目录到指定的位置
linux
大树882 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠2 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质2 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush42 天前
嵌入式linux学习记录十四、术语
linux·嵌入式