
为解决文件的共享使用,Linux 系统引入了两种链接:硬链接 (hard link) 与软链接(又称符号链接,即 soft link 或 symbolic link)。
在 Linux 中,元数据中的 inode 号(inode 号即索引节点号)才是文件的唯一标识而非文件名,文件内容要通过inode 号来寻找,就像交通指示牌一样,指示着数据找寻的方向。
软链接可以理解成快捷方式,和原文件的inode号不一样。它和windows下的快捷方式的作用是一样的,软链接数据块中记录的亦是相对路径指向。
硬链接和原文件对应一个inode,就是对应一个文件,可以理解成一个文件有几个别名.
下面这张图表明了他们之间的区别了。
这二张图详细的给出这二个文件的异同处。
1,软链接可以理解成快捷方式,也清楚知道原文件在哪儿。它和windows下的快捷方式的作用是一样的,和windows一样,删除源文件,快捷方式也用不了。
2,硬链接可以说做了一个备份,但并没有增加空间,因为文件就一个,这种可以防止源文件删除后不能使用的问题,但也有局限性,不能对目录和跨文件系统使用。
相信通过上面的说明,你已经明白了二者之间的区别和用途了。
软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接。当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在其它的 目录下用ln命令链接(link)就可以,不必重复的占用磁盘空间。
软连接也叫符号连接(Symbolic Link),有点类似于Windows的快捷方式。它实际上是一个特殊的文件,在符号连接中文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
具体用法是:ln -s 源文件 目标文件。
当前路径创建sp-transparent-order 引向/app/sp-transparent-order/sp-transparent-order.jar
硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)