1.硬链接实际上是为文件建一个别名,链接文件和原文件实际上是同一个文件。
可以通过ls -i来查看一下,这两个文件的inode号是同一个,说明它们是同一个文件;
而软链接建立的是一个指向,即链接文件内的内容是指向原文件的指针,它们是两个文件。
通过ls -al 查看到硬链接和源文件的文件类型一样为“-”而软链接为“l”
ls -ai 会显示文件的硬链接数量,如果有硬链接则>1
也可以用 stat XX 来查看文件的inode信息来区分两个文件是复制的还是硬链接的。
其实硬链接和软链接和源文件三者任意一个改变三者都会同步改变,这是他们与复制之间的区别。
2.硬链接只能用于文件,不能用于目录;软链接可以为目录建链接。
3.硬链接不能跨文件系统操作。
既然软链接和硬链接和源文件的内容是同步的,那软链接和硬链接的应用场景有什么不同呢?
下面这句话吊了,一语道破了。
A硬链B 删除B后A依然存在,且可用。
A软链B 删除B后A存在,但不可用了(相当于Windows下快捷方式指向的目标不存在了)。