软链接:又称符号链接,这个文件包含了另一个文件的路径名。这个链接文件就是一个快捷方式。当删除源文件的时候,该链接文件失效,打不开源文件。
硬链接:通过节点索引进行链接。这个链接文件就是源文件的一个副本。当删除源文件的时候,仍然可以在该链接文件查看源文件。但是,他不能跨文件系统建立链接,而且不能将,目录设置为链接的源文件(而着这就是软连接的优势)。
shell下建立链接
ln -s 源文件 目标链接 这是建立软连接
ls -d 源文件 目标链接 这是建立硬连接
例:给1.c建立一个软链接 a
给2.c建立一个硬链接 b
ln -s 1.c a
ln -s 2.c b
在文件夹中是这样的存在方式:
尝试打开a 和 b 文件查看内容 cat a cat b
发现中文件空白 b中存放着和 2.c一样的代码
下面我们尝试删除 a和b链接文件的源文件 1.c 和 2.c
rm 1.c
rm 2.c
发现a 文件失效,而b文件任然保存着和2.c一样的代码。
综上所述,我们可以根据字面意思进行区别,所谓硬链接,就是链接的很结实,你把他链接的对象删了都没事。软连接就链接的比较软。。