- Linux系统中,一切皆文件。唯一的标识文件是inode而非文件名,文件名仅是为了方便人们的记忆和利用,系统或程序通过inode寻找正确的文件数据块。
- 数据块:文件存储在硬盘上,硬盘的最小存储单位叫做“扇区”(sector)。每个扇区存储512字节(相当于0.5kb),操作系统读取硬盘的时候,不会一个个扇区地读取,而是一次性连续读取多个扇区,即一次性读取一个“块”(block),这种由多个扇区组成得“块”,是文件存取得最小单位。“块”的大小,最常见的是4kb,即连续8个sector组成一个block,文件数据都储存在“块”中。
- 查看文件inode的方法:
- ls -i 文件名 #查看inode
- stat 文件名 #除inode外,还可看到文件创建,修改时间,权限等信息。
- 软链接(符号链接)
- 软链接相当于windows的快捷方式,一个文件存放的内容是另一文件的路径名的指向。软链接是一个普通文件,软链接有着自己的inode号以及用户数据块。
- 软链接有自己的文件属性及权限等。
- 可对不存在的文件或目录创建软链接。
- 软链接可对文件或目录创建。
- 软链接可跨文件系统。
- 删除软链接并不影响被指向的文件,如果指向的文件被删除,则相关软链接被称为死链接(dangling link),若被指向路径文件被重新创建,死链接可恢复为正常的软链接。
- 硬链接
- 一个inode对应多个文件名,硬链接有着和源文件一样的inode和其他信息,只是更改的文件名而已,硬链接是有着相同inode号仅文件名不同的文件。
- 文件有相同的inode以及数据块。
- 只能对已存在的文件进行创建硬链接。
- 不能跨文件系统。
- 不能对目录创建硬链接,只能对文件创建。
- 删除一个硬链接文件并不影响其他有相同inode号的文件。
- 无论是硬链接还是软链接都不会将原来的文件复制一份,只会占用非常少量的磁盘空间。
- 命令:
- 软链接:
- ln -s [源文件或目录] [目标文件或目录]
- 硬链接:
- ln 源文件 目标文件
- 软链接:
- 创建软链接:
- 创建硬链接: