据我了解,在 ext4 文件系统中删除打开的文件时,我们只取消链接它,并且 inode 保持分配状态,直到文件句柄关闭。
但是 inode 什么时候被释放呢?如果系统在关闭文件之前重启系统会发生什么?
Linux 使用引用计数。这就是文件系统中不能有循环引用(目录硬链接)的原因。这会破坏引用计数。
当引用计数为零时,将释放 inode。
如果发生电源故障,您的文件系统已损坏。检查工具e2fsck
可以找到这些不一致之处并将文件移动到lost+found
. 然后你可以再次删除它们,希望不会断电。
通常,写入缓存的电源故障总是会破坏您的文件系统。如果日志没有写入磁盘,即使日志也无济于事。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句