精华都在这张图上了。
1.Linux中,所有文件的查找都是通过inode号来进行的。文件名只是个对人类有意义的符号而已,系统完全不以为意。
2.如果是硬链接,则相当于对原本已经存在的一个文件,又起了一个名。再次强调,这个名只是一个符号,并非一个新的文件,它无所谓什么inode号。
3.软连接就不一样了,指向某个文件的软链接,自身也是一个新的文件。访问这个软链接,实质上是先找到它的inode号,然后找到这个软链接文件的内容。一查,发现是指向另一个文件的。于是又顺着去查找访问另一个文件。
下面这个文章写得比较通透,可以一看:
http://www.cnblogs.com/yfanqiu/archive/2012/06/11/2545556.html