精神病人思维广

一只大学狗的程序员之路

Linux基础篇三——链接文件知多少

   As is known to all,在windows环境下我们早已经见过链接文件,机我们平时所使用的快捷方式。

   其实,在linux里我们可以见到以下两种类型的链接文件

   a.硬链接文件

     创建命令:ln [源文件] [目标文件]

     硬链接即实际链接。

     记得我们讲过什么叫做inode,那么我们来根据下图理解一wKiom1csNbSzjIRJAADdxjqgD7g638.png 
   这样做的意义是:安全。如果你不慎删除了其中一个文件名那么你还可以通过其他文件来找到这个源文件

     并且你修改一个文件其他的文件也会跟着被修改

wKioL1csNoyRp-zJAAAZZEdtOLw228.png

     *上图中能看到,这两个文件的信息是一模一样的

     实际上,硬链接是不会增加inode数量的,因为他们其实使用的都是实际文件的那个inode,只是在某个目录下增加了关联数据

     *在hard link制作中还是有可能会改变系统block的,那就是当你添加的这条数据刚好将目录的block填满时,可能会新增一个block来记录文件的关联性导致磁盘空间的变化

    硬链接的限制:

                  1.不能跨文件系统

                  2.不可以连接到目录

   b.符号链接

     创建命令:ln -s

     符号链接即快捷方式,我们创建一个独立的文件,并且使得这个文件的数据读取指向他连接的文件的文件名。

wKiom1csNbWz4bWVAADb5Z7M_cM087.png

     连接文件的重要内容就是它会写上目标文件的文件名

     我们来举个栗子

wKioL1csNo2DwH_3AABDiW0ybNo856.png

    可以看到链接文件会有一个箭头指向源文件。并且他们的大小并不相同.

     symbol link创建的文件是独立的新文件会占用我们的inode和block

     如果目标文件被删除了那么。。你将无法访问到文件内容

     虽然符号链接并没有那么安全但是他的限制很少,所以使用方面很广


本文出自 “Zimomo” 博客,请务必保留此出处http://zimomo.blog.51cto.com/10799874/1770737

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Monamokia/article/details/51537307
想对作者说点什么? 我来说一句

鸟哥的linux基础篇和网络篇

2009年08月01日 8.98MB 下载

没有更多推荐了,返回首页

不良信息举报

Linux基础篇三——链接文件知多少

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭