袁伟民(Antitest)的专栏

UNIX-BSD,WEB,软件工程与管理,行业应用软件

Unix 中的ln详解

关于硬连接和软链接的问题?


硬链接与符号链接的区别在于硬链接与原来的文件有相同的i-node即它们是无差别的指向一个存储数据的空间的索引.
硬链接产生的文件与之前的文件名具有相同的意义,而且,由于都是无差别的指向同一个存储空间,所以对硬链接产生的文件进行的操作,实际上都是对于那一个存储空间进行的操作。
而且,当一个存储空间,具有几个硬链接时,删除其中的一个,并不会对存储空间进行操作,所以其它的硬链接不会受到影响。
此种方式,类似于C语言里的指针,当一个存储空间里面有几个指针指向它时,删除其中的一个指针并不会带来存储空间被回收的操作。

而符号链接可以理解为指向原来的文件的索引的索引.它与原来的文件是两个不同的文件.所以这样的话假如存在三个文件的话,a是原文件,b是a的硬链接,而c是a 的符号链接.刚不管是那个文件或者目录的内容改变都会使得其它的文件的内容改变.对于原文件的删除,则c将变的不可用,而对b却没有任何的影响.b,c的删除不会对任何文件有影响.
注:

   1. 对于ln命令默认是建立硬链接的.
   2. -s不是soft(软)的意思,而是symbolic(符号)的意思,因此应该是符号链接。 

阅读更多
文章标签: unix 存储 语言 c
上一篇grep 运用大全
下一篇Apache与Tomcat整合
想对作者说点什么? 我来说一句

Unix/Linux sed命令手册

2007年08月13日 160KB 下载

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

关闭
关闭