Unix/Linux 系统下的文件权限

文件权限

drwxr-xr-x 是一个常见的 Unix/Linux 文件系统中的权限表示法,用于描述文件或目录的访问权限。它由 10 个字符组成,每个字符的位置和含义如下:

  1. 第一个字符:文件类型

    • d 表示目录 (directory)
    • 表示普通文件 (regular file)
    • l 表示符号链接 (symbolic link)
    • 其他字符如 b (块设备), c (字符设备), s (套接字) 等
  2. 接下来的九个字符:权限位,分为三组,每组三个字符,分别表示文件所有者、文件所属组、其他用户的权限。

权限位的详细解释

每组三个字符分别表示读、写、执行权限。这三组权限依次表示:

  1. 文件所有者的权限
  2. 文件所属组的权限
  3. 其他用户的权限

每个权限字符的含义如下:

  • r 表示读 (read)
  • w 表示写 (write)
  • x 表示执行 (execute) 或进入目录

例子解释:drwxr-xr-x

第一个字符 (d):表示这是一个目录。

  1. 文件所有者的权限 (rwx):

    • r:读权限。文件所有者可以读取目录中的文件列表。
    • w:写权限。文件所有者可以在目录中创建、删除文件或子目录。
    • x:执行权限。文件所有者可以进入目录。
  2. 文件所属组的权限 (r-x):

    • r:读权限。组成员可以读取目录中的文件列表。
    • -:没有写权限。组成员不能在目录中创建、删除文件或子目录。
    • x:执行权限。组成员可以进入目录。
  3. 其他用户的权限 (r-x):

    • r:读权限。其他用户可以读取目录中的文件列表。
    • -:没有写权限。其他用户不能在目录中创建、删除文件或子目录。
    • x:执行权限。其他用户可以进入目录。

对应的数字权限

每组三个字符可以转换为一个八进制数字,rwx 表示 7,r-x 表示 5,所以 drwxr-xr-x 可以转换为 0755。

权限字符与数字的对应关系:

  • rwx = 4 (读) + 2 (写) + 1 (执行) = 7
  • r-x = 4 (读) + 0 (无写权限) + 1 (执行) = 5

如何设置权限

使用 chmod 命令来修改文件或目录的权限。比如,将一个目录的权限设置为 0755:

shell 复制代码
chmod 755 mydir

这个命令将设置 mydir 目录的权限,使得所有者具有读、写、执行权限,而组和其他用户具有读和执行权限。

例子

假设你有一个目录 mydir,它的权限是 drwxr-xr-x:

shell 复制代码
$ ls -ld mydir
drwxr-xr-x  2 user  group  4096 Jan  1 12:34 mydir
  • 类型:d 表示 mydir 是一个目录。
  • 所有者权限:rwx 表示用户 user 可以读取、写入和执行 (进入) 该目录。
  • 组权限:r-x 表示组 group 的成员可以读取和执行 (进入) 该目录,但不能写入。
  • 其他用户权限:r-x 表示其他用户可以读取和执行 (进入) 该目录,但不能写入。
相关推荐
AlfredZhao2 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者6 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo6 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10157 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao8 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3109 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql