# 权限的基本介绍

ls -l 中显示的内容如下

-rwxrw-r-- 1root root 1213 Feb 2 09:39 abc

  • r: 可读
  • w: 可写
  • x: 可执行

image-20240208120820450

0-9 位说明

  1. 第 0 位确定文件类型 (d,-,l,c,b)

    l: 是链接,相当于 windows 的快捷方式

    d: 是目录,相当于 windows 的文件夹

    c: 是 <font color=blue> 字符设备 </font > 文件,鼠标,键盘

    b: 是块设备,比如硬盘

    -: 普通文件

  2. 第 1-3 位确定所有者 (该文件的所有者) 拥有该文件的权限 ---User

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

  4. 第 7-9 位确定其它用户拥有该文件的权限 ---Other

# rwx 权限详解

image_2023-01-04-21-08-34

rwx 作用文件

  1. [r] 代表可读 (read): 可读取,查看
  2. [w] 代表可写 (write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件
  3. [x] 代表可执行 (execute): 可以被执行
  • rwx 作用到目录
  1. [r] 代表可读 (read): 可读取,ls 查看目录内容
  2. [w] 代表可写 (write): 可以修改,对目录内容创建 + 删除 + 重命名目录
  3. [x] 代表可执行 (execute): 可以进入该目录

可用数字表示为:r=4, w=2, x=1 因此 rwx=4+2+1=7

其它说明:

  • 1 文件:硬连接数或 目录:子目录数

  • root 用户

  • root 组

  • 1213 文件大小 (字节), 如果是文件夹,显示 4096 字节

  • Feb 2 09:39 最后修改日期

  • abc 文件名

# 修改权限

image_2023-01-04-21-53-08

第一种方式: + - = 变更权限

u: 所有者 g: 所有组 o: 其它人 a: 所有人 (u, g, o 的总和)

  1. chmod u=rwx, g=rx, o=x 文件 / 目录名

  2. chmod o+w 文件 / 目录名

  3. chmod a-x 文件 / 目录名

r=4, w=2, x=1 rwx=4+2+1=7

chmod 7 (所有者) 5 (所有组) 1 (其它人) 文件目录

细节

  • 如果目录权限为:drwx--x--x 而这个目录里面的文件权限为:-rw--rx-r-, 那么文件可执行 cd 而不能执行 ls 那可以对文件进行修改码?

演示:

登录 milan 用户进入到 /opt 目录下查看 test 的权限状态

image_2023-01-05-12-05-09

可以看到所有者,所有组都是 dkx 的而其它组没有任何权限, milan 用户是 dkx 一组的所以可执行 x

image_2023-01-05-12-06-18

进去之后除了可 x 不能 rw, 但是里面还有一个文件夹下面是文件夹的权限:-rw--rw-r-

image-20240208120844328

可以看到所有组可读写其它组可读,那么问题来了目录为所有组可 x, 可以对文件进行编辑吗?

image_2023-01-05-12-11-39

可以进去并且可修改,得出结论 目录的权限不会影响到文件的权限,但是目录不可 x 那么也不能操作到文件