软链接与硬链接有什么区别
什么是硬链接?
硬链接(hard link):A是B的硬链接(A和B都是文件名),则A的名目项中的inode节点号与B的名目项中的inode节点号雷同,即一个inode节点对应两个不一样的文件名,两个文件名指向统一个文件,A和B对文件系统来说是完全对等的。
(引荐教程:linux教程)
假如删除了其中一个,对别的一个没有影响。每增添一个文件名,inode节点上的链接数增添一,每删除一个对应的文件名,inode节点上的链接数减一,直到为0,inode节点和对应的数据块被回收。
注:文件和文件名是不一样的东西,rm A删除的只是A这个文件名,而A对应的数据块(文件)只要在inode节点链接数减少为0的时候才会被系统回收。
什么是软连接?
软连接是linux中一个常用命令,它的功效是为某一个文件在别的一个位置创立一个同步的链接。
(视频教程引荐:linux视频教程)
详细用途是:ln -s 源文件 目标文件。
当 我们需要在不一样的名目,用到雷同的文件时,我们不需要在每一个需要的名目下都放一个必需雷同的文件,我们只要在其它的 名目下用ln命令链接(link)就可以,不必反复的占用磁盘空间。
不同:
1、挂载点
只能在同种储备媒体上的文件之间创立硬链接(Hard Link),不克不及在不一样挂载点下的文件间创立硬链接,关于后一种状况,可以使用软链接;(区分不一样挂载点与统一挂载点不一样名目)
2、名目
软连接就相当于 win 中的快速方式即假如软链接一个名目只是一个名目的快速方式到指定位置,操纵系统寻这个快速方式会直接寻到真实名目下的文件。但是硬链接的话,相当于镜像的方式,创立一个名目的硬链接之后,操纵系统需要把这个名目下所有的文件都要做一次硬链接(复制一份过去),这样操纵系统在拜访这个链接的时候要不竭去遍历,大大增添复杂度,并且很容易进入死轮回。
硬链接不克不及对名目创立受限于文件系统的设计。Linux 文件系统中的名目均潜藏了两个非凡的名目,当前名目和父名目。其实是两个硬链接,若系统运转对名目创立硬链接,则会发生名目环。
以上就是软链接与硬链接有什么不同的具体内容,更多请关注百分百源码网其它相关文章!