什么是软链接?什么是硬链接?
https://blog.csdn.net/mnmiaoyi/article/details/98890446
我们都知道windows
下选中文件右键可以创建该文件的快捷方式。占用的资源比较少。当你删除这个快捷方式的时候,并没有对源文件产生影响。
而linux
下的软连接也是如此,但是用快捷方式描述这种软链接不合适的,因为在linux
下和软连接相对的有硬链接。
什么是硬链接?
在linux
利用ll
命令看到结果。其中文件的权限-rw-------
后面就是一个1,这个一就是硬链接数。
[root@bogon ~]#
ll
总用量 4
-rw-------. 1 root root 1257 8月 2 17:24 anaconda-ks.cfg
[root@bogon ~]#
在linux
里面,一个文件就相当于一个数据块。而这个数据块是否删除是由硬链接数所决定的。就比如上面的1就是anaconda-ks.cfg
这个文件的所有硬链接数。
创建:
软链接:ln -s ./anaconda-ks.cfg shortcut-anaconda-ks.cfg
左边的./anaconda-ks.cfg
是需要链接到的路径,shortcut-anaconda-ks.cfg
软连接的名字(相当于快捷方式)
硬链接:ln ./anaconda-ks.cfg shortcut-anaconda-ks.cfg
[root@bogon ~]#
ln -s ./anaconda-ks.cfg shortcut-anaconda-ks.cfg
[root@bogon ~]#ln ./anaconda-ks.cfg hard-anaconda-ks.cfg
[root@bogon ~]#ll
总用量 8
-rw-------. 2 root root 1257 8月 2 17:24 anaconda-ks.cfg
-rw-------. 2 root root 1257 8月 2 17:24 hard-anaconda-ks.cfg
lrwxrwxrwx. 1 root root 17 8月 8 22:23 shortcut-anaconda-ks.cfg -> ./anaconda-ks.cfg
在这里可以看到硬链接文件和原文件的链接数是一摸一样的,并且大小也是一摸一样。当用rm
命令删除删除这两个硬链接,这是所有指向数据的数据块为0,那么这个数据就找不到了。就像这样,即使还有一个软链接在,用cat
命令读取也是读取不到了。
动手试一下看看这个软连接还有没有用。可以看到我删除了源文件和一个硬链接之后软连接就变颜色了。用cat
命令就无效了。那么这个数据还能不能找到了呢?
这个问题也不是我能够探究的了。
总结:
软连接特点:
①占用资源少
②不会增加链接数目。
③经常使用这种
硬链接特点
①占用资源倍增,相当于复制了一份文件
②用得比较少
更多推荐
所有评论(0)