ext4文件系统上的inode的垃圾收集

时间:2019-09-18 07:08:18

标签: linux embedded inode ext4

据我了解,在ext4文件系统中删除打开的文件时,我们仅取消链接它,并且inode一直处于分配状态,直到关闭文件句柄为止。

但是何时真正释放inode?如果在关闭文件之前重新打开电源,系统会怎样?

1 个答案:

答案 0 :(得分:1)

Linux使用引用计数。这就是为什么文件系统中不能包含循环引用(目录硬链接)的原因。这样会破坏引用计数。

当引用计数为零时,将释放索引节点。

万一发生电源故障,您的文件系统已损坏。检查工具e2fsck可以发现这些不一致之处,并将文件移至lost+found。然后,您可以希望再次删除它们而不会发生电源故障。

通常,写缓存导致的电源故障始终会破坏文件系统。如果日记未写入磁盘,则即使日记也无济于事。