fsck 在幕后到底做了什么(对于 UFS)?

fsck 在幕后到底做了什么(对于 UFS)?

如果计算机崩溃,那么文件系统就会处于不一致的状态。到底是什么fsck(8)恢复到可用文件系统需要做什么?是否有备份表?是否交叉检查元数据?

根据手册页,它可以修复:

 Unreferenced inodes
 Link counts in inodes too large
 Missing blocks in the free map
 Blocks in the free map also in files
 Counts in the super-block wrong

但这怎么可能发生呢?

答案1

Unix 存储文件元数据在称为目录的数据文件中,它包含文件名、所有者、创建日期等。

Unix 文件系统使用一种称为索引节点.请注意,创建新文件实际上会将 inode 的状态从空闲更改为已分配,将元数据写入目录文件,并将数据写入新文件。

当文件系统损坏时,fsck 检查包括读取所有 inode 并尝试解决尽可能多的损坏问题。

相关内容