(转)老男孩教育每日一题-2017年3月30日-请说明软链接与硬链接区别
【软硬链接总结】描述linux下软链接和硬链接的区别(面试题)。(记时2分钟)
原文:http://blog.51cto.com/lidao/1911616
解答:
在linux系统中,链接分两种 :一种被称为硬链接(Hard Link),另一种被称为符号链接或软链接(Symbolic Link)。
1)默认不带参数情况下,ln命令创建的是硬链接。
2)硬链接文件与源文件的inode节点号相同,而软链接文件的inode节点号与源文件不同。3)ln命令不能对目录创建硬链接,但可以创建软链接,对目录的软链接会经常被用到。
4)删除软链接文件,对源文件及硬链接文件无任何影响;
5)删除文件的硬链接文件,对源文件及软链接文件无任何影响;
6)删除链接文件的原文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状);
7)同时删除原文件及其硬链接文件,整个文件才会被真正的删除。
8)软连接可以跨文件系统,硬链接不可以跨文件系统。
上述必胜思路二:画图(如下)
-
如何创建:
-
默认不带参数情况下,ln命令创建的是硬链接,带-s参数的ln命令创建的是软链接。
-
-
含义:
-
硬链接文件与源文件的inode节点号相同,而软链接文件相当于windows下面的快捷方式(inode节点号与源文件不同)
-
-
特点:
-
不能对目录创建硬链接,但可以创建软链接,对目录的软链接会经常被用到
-
软链接可以跨文件系统,硬链接不可以跨文件系统。
-
-
怎么没的(源文件,软链接,硬链接与删除)
-
删除软链接文件,对源文件及硬链接文件无任何影响;
-
删除文件的硬链接文件,对源文件及软链接文件无任何影响;
-
删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状);
-
同时删除源文件及其硬链接文件,整个文件才会被"真正"的删除。
-
目前网友答案1:I'm here
硬链接和源文件具有相同的inode,软链接和源文件具有不同的inode
文件的链接数显示的是硬链接的个数,和软链接个数无关
文件:
1、文件既可以创建软链接,也可以创建硬链接
目录:
1、目录只可以创建软链接,不可以创建硬链接
2、对于一个空目录,它有两个硬链接数,一个是它本身,一个是目录
下的 "."文件,它每创建一个次一级目录,它的硬链接数目都会加
1,因为每个次一次目录下面都有一个“..”文件,但如果在该目录
下创建文件硬链接数目就不会变化。
删除:
1、软硬链接删除后,源文件并不会有影响
2、源文件删除后,硬链接文件依然有效,软链接文件失效。原因是软链接
文件相当于一个快捷方式,而硬链接文件和源文件都相当于通向目的地
的入口,堵(删)了一个入口,另一个还是能走通
实际应用:
1、软链接文件可以作为快捷方式,简化繁琐的文件层次
2、硬链接文件可以用于重要文件,防止文件被误删等情况发生
网友回答:
誓言撒落在回憶里〤(xxxxxxx) 9:23:14
软链接:源文件删除后,无法访问,与Windows下的快捷方式类似。它不存储文件的iNode号,存储的是路径。
硬链接:源文件删除后,可以继续访问文件,它与源文件共享同一个iNode号。