Inode是UNIX中一种数据结构,包含了与文件系统中各个文件相关的一些重要信息,在文件系统创建时,同时会创建大量的inode。它用作数据索引的标识符,系统找到文件对应的inode,通过inode 号获取inode信息,再找到文件数据锁在的block读取。
硬链接,文件名和inode号对应,也可能多个文件名指向同一个inode号。硬链接实现不同的文件名访问同一个文件,对文件内容的修改会影响到所有的文件名,但删除一个文件名不影响其他文件名的访问。
软链接,也可以通过不同文件名访问同一块数据,但是文件名的inode是不一样的。A是B的软链接,A的内容存放的是B的路径名。
最后在回顾下硬软链接的不同:
本质不同:硬链接是指向同一个文件,软链接指向的不是同一个文件。
删除时:硬链接不受影响,软链接失效
创建链接时:创建硬链接链接数加1,创建软链接连接数不变
是否可以跨分区:硬链接不可以跨分区,软链接可以跨分区
目录是否可以创建链接:硬链接不可以对目录创建,软链接可以对目录创建
硬链接的inode号相同,软链接inode号不同