Linux软链接和硬链接
文件的组织:文件通常是由文件数据元数据组成的,元数据属于文件的属性,例如文件的名字,大小,创建事件,所有者等,真实数据则是文件数据的保存位置,文件名是文件的属性,并不属于文件的数据,系统标识文件是通过
Inode
号码来进行识别的;软链接和硬链接都是文件共享的一种方式,并且可以隐藏文件系统路径,并且保证安全-
硬链接:是具有相同
Inode
号码,但是文件名不同的文件,每一个文件都有自己对应的inode
,当多个目录都指向同一个inode
时这些链接就是硬链接,文件被硬链接的次数如果小于1
在删除,文件就会被删除;- 文件具有相同的
inode
号码以及真实数据存储区域; - 硬链接只能够对于那些已经存在的文件创建
- 硬链接不支持跨于文件系统进行创建;
- 硬链接不能够对于目录进行创建;
- 删除硬链接并不影响具有相同
inode
号码的其他硬链接文件;
- 文件具有相同的
- 对于不存在文件创建硬链接
- 查看
Inode
号码是否相同,对于链接文件仍然是普通文件,前面的标示为-
; - 不能够交叉文件系统创建,这里存在一个挂载的文件系统,和当前系统的文件系统
- 不能够对于目录创建硬链接
- 当文件被链接的次数增加,这个数值就会增加
- 软链接:拥有自己的数据区域和元数据区域,数据区域存储的是链接指向文件的
inode
号码,以及自己的inode
号码;- 软连接本身是一个文件,拥有自己独立的文件属性和权限;
- 可以对不存在文件或者目录创建软链接;
- 软链接可以交叉文件系统进行创建;
- 软链接可以对于文件或者目录进行创建;
- 创建软连接不会导致
i_link
数目增加
- 查看
- 可以对于不存在的文件创建软链接
- 两个文件的权限和
inode
号码是不一样的 - 跨文件系统进行创建
- 软链接不会导致
i_link
数目的增加 - 软链接支持给一个软链接创建软连接
- 关于
find
命令在这里的几个关键用法 - 查找某个文件的软连接
- 找出所有的软链接文件,通过指定文件的类型来制定