在 Linux 中,root 用户是不在访问权限限制之内的。

文件类型和访问权限

  1. 文件类型
    • d:文件夹
    • -:普通文件
    • l:软链接(类似于快捷方式)
    • b:块设备文件(硬盘、光驱等)
    • p:管道文件
    • c:字符设备文件(例如屏幕等串口设备)
    • s:套接字文件
  2. 文件所有者的权限
  3. 文件所属用户组的权限
  4. 其他用户权限
  5. 连接数
  6. 所属用户
  7. 所属用户组
  8. 大小
  9. 最新修改日期
  10. 文件/文件夹名

文件权限

r 能够查看文件内容
w 能够修改文件内容
x 能够运行程序

注:上图来源Linux.cn

目录权限

r 能够查看目录中的文件/目录
w 能够修改目录中的内容(新增/删除)
x 能够进入目录中

注意一点:只要用户拥有了目录的 w 权限,不管用户是否具有目录的 r 权限都可以删除文件,为了解决这个问题,Linux使用粘滞位,给目录添加粘滞位即可。粘滞位

更改访问权限

有权编辑文件才可以更改文件的权限。

使用等效数字设置权限

  • 读 — 4
  • 写 — 2
  • 执行— 1

注意:数值代替不是一个一个替换的,应该是加起来得到的。例如给所属者读和写,4+2=6,给所属用户组读和写,4+2=6,给其他用户权限为读4,则应该设置的权限等效数字为:664

1
chmod 664 fileName

使用字符设置权限

u 代表文件拥有者(user),g 文件拥有者所属组(group),o 其他用户(other),a 所有(all)。

1
2
3
4
5
6
7
8
9
10
11
# 给文件所属者增加x权限
chmod u+x fileName

# 给文件所属者和所属组同时增加 x 权限
chmod ug+x fileName

# 删除其他用户的 x 权限
chmod o-x fileName

# 给所有人删除 x 权限
chmod a-x fileName

递归更改目录下文件的权限

参数 -R 递归。

1
chmod -R g-w Dir

更多学习资料:
初识 Linux 文件权限