权限类型

在Linux系统中,主要有三种类型的权限:

  • 读取(r):允许查看文件内容或列出目录内容。
  • 写入(w):允许修改文件内容或在目录中创建、删除文件。
  • 执行(x):允许运行可执行文件或进入目录。

权限分配给以下三类用户:

  • 所有者(u):文件或目录的创建者。
  • 组(g):与文件或目录关联的用户组。
  • 其他人(o):除了所有者和组成员之外的所有用户。

表示方法

符号模式(Symbolic Mode)

使用字母和符号来表示权限:

  • u:所有者
  • g:组
  • o:其他人
  • a:所有用户(u,g,o)
  • +:添加权限
  • -:移除权限
  • =:设置权限

例如:

  • u+r:给所有者添加读取权限
  • g-w:移除组的写入权限
  • o=rx:将其他人的权限设置为读取和执行
  • a+w:给所有用户添加写入权限

数字模式(Numeric Mode)

使用数字来表示权限。每个权限类型(r,w,x)对应一个数字:

  • 读取(r):4
  • 写入(w):2
  • 执行(x):1
  • 没有权限:0

将所有者、组和其他人的权限数字相加,得到一个三位数的数字

例如:

  • 7rwx (4 + 2 + 1):读取、写入、执行、
  • 6rw- (4 + 2 + 0):读取、写入
  • 5r-x (4 + 0 + 1):读取、执行
  • 4r-- (4 + 0 + 0):读取
  • 3-wx (0 + 2 + 1):写入、执行
  • 2-w- (0 + 2 + 0):写入
  • 1--x (0 + 0 + 1):执行
  • 0--- (0 + 0 + 0):没有权限

例如,数字755表示:

  • 所有者:rwx (7)
  • 组:r-x (5)
  • 其他人:r-x (5)

查看权限

使用ls -l <文件名>查看文件权限:

第一个字符-表示该文件类型为普通文件,后面的字符是权限说明

以下是一些常见的文件类型:

  • -:普通文件 (Regular file):这是最常见的文件类型,包含了数据(文本、二进制等)。
  • d:目录 (Directory):目录是用来组织和存储其他文件和目录的特殊文件。
  • l:符号链接 (Symbolic link):符号链接(也称为软链接)是指向另一个文件或目录的特殊文件。它类似于 Windows 中的快捷方式。
  • b:块设备文件 (Block device file):块设备文件用于访问块设备,如硬盘驱动器、CD-ROM 驱动器等。它们以固定大小的块进行数据传输。
  • c:字符设备文件 (Character device file):字符设备文件用于访问字符设备,如终端、打印机等。它们以字节流的方式进行数据传输。
  • p:命名管道 (Named pipe):命名管道(也称为 FIFO)是一种特殊的文件,用于进程间通信。数据写入管道的一端,从另一端读取。
  • s:套接字文件 (Socket file):套接字文件用于进程间通信,通常用于网络通信。