4.硬链接和软链接

来源:互联网 发布:ios良心网游 知乎 编辑:程序博客网 时间:2024/06/11 13:26

       有时候我们需要两个不同的路径来访问同一个文件。

        

         方式一:硬链接,两个路径指向同一个iNode。iNode中有一个属性就做链接次数,指的是硬链接的次数,也就是有多少个文件指向该iNode。当删除一个文件时,iNode的链接次数减一,当链接次数减为零时,就会把block的标志位置为0,这时,该文件才会被真正删除。硬链接不能跨分区,硬链接不能指向目录,指向目录的硬链接会导致目录自引用(循环引用)。

         方式二:软链接(符号链接),每一个文件都有两类数据,元数据和数据,但是符号链接没有数据,只有元数据(iNode)。符号链接的元数据里面指向了一个路径。Abc.log自己有一个iNode条目,该条目非常古怪,因为iNode中放了一串字符串,就是messages文件的路径的字符串。所以软链接的大小就是最终路径的字符串的字符个数(在ACS码中,一个字符占一个字节)。当我们把源文件删了,那么软链接就不能用了,这种叫损坏的链接。因为软链接引用的仅仅是路径,不用管路径在哪,所以软链接可以跨分区。软链接是一个独立的文件(有自己的iNode),所以是不可能自我引用的,故软链接可以指向目录。

 

         为了加快查询速度,Linux实现了缓冲(buffercache)。

         Free–m#          查询当前系统内存使用情况,-m指定以MB大小显示。


         Mem:物理内存;swap:交换内存。

         Mem的total表示一共有502M,used:已用空间,free:空闲空间,buffer:缓冲,cached:缓冲的是数据。用户的访问路径,经常被访问的目录以及路径映射表都在buffers中存放着。

 

         如何创建链接文件:

         Ln     [option]    SRC  DST

                   -s:simbolic,创建为符号链接。如果不指定-s,则创建的是硬链接。

         查看文件的iNode号:

         Ls-i

0 0