码迷,mamicode.com
首页 > 其他好文 > 详细

hard link与symbolic link区别

时间:2015-08-12 21:48:56      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:

            Linux下的文件组织方式是每个文件都占用一个inode,inode中存放有文件的权限信息、block信息等,可以理解为索引文件系统,通过inode索引到对应的block,即读取文件。

         hard link

        hard link其实就是多个文件连接到同一个inode,因此,这两个文件的信息几乎是一模一样的,hard link有以下特点:

        1)你将两都中的任何一个删除,文件都不会被删除,你仍然可以通过另一个文件名来读取文件数据;

        2)通过任一文件名来修改该文件数据都是一样的结果;

        3)不同的文件系统文件组织方式可能存在差异,所以hard link只能在单一的文件系统上进行;

        4)不能连接到目录,如果使用hard link来连接目录,连接的数据需要连同被连接的目录下面的所有数据建立连接,复杂度相当大。

        5)‘.‘、‘..‘都是hard link

      symbolic link

      symbolic link和windows下的快捷方式是可以划等号的,symbolic link实质是创建一个独立的文件,它会占用inode和block,只不过这个文件会让数据的读取指向它连接的文件的文件名。

       1)如果原文件被删除,则连接文件会无法打开;

       2)symbolic link可以连接到不同文件系统,也可以连接到目录;

       所以,symbolic link连接方式比hard link使用的要广泛。

      命令

      ln [-sf] 源文件 目标文件

     不加s参数时即为hard link,否则为symbolic link,f参数表示强制,如果目标文件存在,会将目标文件删除后再重新创建。

hard link与symbolic link区别

标签:

原文地址:http://blog.csdn.net/walker19900515/article/details/47449837

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!