本文最后更新于118 天前,其中的信息可能已经过时,如有错误请发送邮件到1910452164@qq.com
Linux系统中一切皆文件。通常我们说Linux有 7种 文件类型。
以下是关于这7种文件类型的详细介绍,以及对一个特定的权限字符串的解析。
Linux的7种文件类型
Linux将文件主要分为以下7类,可以通过 ls -l 命令查看文件属性,输出结果的第一个字符就代表了文件类型。
| 类型标识符 | 文件类型名称 | 英文名称 | 描述与用途 |
|---|---|---|---|
| – | 普通文件 | Regular file | 最常见的文件类型,包括文本、代码、图片、压缩包、可执行程序等。 |
| d | 目录文件 | Directory | 即文件夹,用于组织和管理其他文件。在Linux中,目录也是一种文件,内容是该目录下所有文件的列表。 |
| l | 符号链接 | Link (Symbolic) | 即软链接,类似于Windows的“快捷方式”。它指向另一个文件,存储的是源文件的路径。 |
| b | 块设备文件 | Block device | 存储设备接口,如硬盘 (/dev/sda)、光驱等。支持随机访问,系统会为其开辟缓存。 |
| c | 字符设备文件 | Character device | 串行端口设备,如键盘、鼠标、打印机、终端 (/dev/tty)。不支持缓存,数据按字符流顺序读写。 |
| p | 管道文件 | Pipe (FIFO) | 也就是“有名管道”,用于进程间通信(IPC),遵循先进先出原则。 |
| s | 套接字文件 | Socket | 用于网络通信或同一台机器上的进程间通信(如MySQL的 mysql.sock)。 |
权限案例分析:drwxrw-r-
1. 文件类型
2. 权限详情拆解
Linux权限由9个字符分为三组(User, Group, Others),每组3个字符,他们分别对应的权限如下:
| 用户类别 | 权限字符 | 对应权限 | 针对目录的具体含义 |
|---|---|---|---|
| 文件所有者 (User) | rwx | 读、写、执行 | 完全控制: • r: 可以查看目录下的文件列表 (ls)。• w: 可以在该目录下创建、删除、重命名文件。• x: 可以进入该目录 (cd)。 |
| 同组用户 (Group) | rw- | 读、写、无执行 | 有缺陷的权限(通常不合理): • r: 可以查看文件名列表。• w: 理论上拥有修改权限。• - (无 x): 关键点! 因为没有 x 权限,同组用户无法进入 (cd) 该目录。即使有 w 权限,也因为进不去而无法在里面实际创建或删除文件。 |
| 其他用户 (Others) | r-- | 只读、无写、无执行 | 仅能查看列表: • r: 可以查看目录下有哪些文件名。• -: 无法修改目录内容。• - (无 x): 同样无法进入 (cd) 该目录,也不能访问目录中文件的具体内容(只能看到文件名)。 |