为什么硬链接只有在同一个文件系统中才能创建?

首先,你要明白,文件存储在一个具有文件系统的磁盘存储区中,那么,这个存储区中,有一定的管理机制,其中,innod,是一个标识文件的东西,每一个innod 有一个整数代表它,它包含文件的很多信息。

硬连接是不会建立inode的,他只是在文件原来的inode link count域再增加1而已,也因此硬链接是不可以跨越文件系统的。相反都是软连接会重新建立一个inode,当然inode的结构跟其他的不一样,他只是 一个指明源文件的字符串信息。一旦删除源文件,那么软连接将变得毫无意义。而硬链接删除的时候,系统调用会检查inode link count的数值,如果他大于等于1,那么inode不会被回收。因此文件的内容不会被删除。

猜你喜欢

转载自blog.csdn.net/Norlan_L/article/details/83903973
今日推荐