概述
了解一下文件的相关知识:
我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata)。用户数据,即文件数据块 (data block),数据块是记录文件真实内容的地方;而元数据则是文件的附加属性,如文件大小、创建时间、所有者等信息。在 Linux 中,元数据中的 inode 号(inode 是文件元数据的一部分但其并不包含文件名,inode 号即索引节点号)才是文件的唯一标识而非文件名。文件名仅是为了方便人们的记忆和使用,系统或程序通过 inode 号寻找正确的文件数据块。
硬链接:
1)概念:有着相同的inode号,而文件名不同的文件(同一个文件有多个别名)
2)创建:硬链接可由命令 link 或 ln 创建。
3)特点:
- 文件有相同的inode号及data bloc
- 只能对已存在的文件创建硬链接
- 不能交叉文件系统进行创建
- 不能对目录进行创建
- 删除一个文件,对其他具有相同inode号的文件并不影响
软链接:
1)概念:若文件数据块中存放的是另一个文件路径名的指向,该文件就是软链接
2)创建:ln -s 源文件 目标文件(最好使用绝对路径)
3)特点:
- 软链接拥有自己的属性及权限
- 可对不存在的文件和目录进行创建
- 可以交叉文件系统进行创建
- 创建软链接并不会增加链接计数i_nlink的值
- 删除软链接,并不影响它所指向的文件,但是所指向的原文件删除,软链接也会被破坏,称为死链接(但是当原文件被重新创建,死链接会恢复成正常的软链接)
最后
以上就是风中绿茶为你收集整理的软链接与硬链接的全部内容,希望文章能够帮你解决软链接与硬链接所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复