1.故障发生背景
Ext4文件系统没有umount下来,之后做了fsck操作检查一致性,结果导致Ext4文件mount不上,并且导致目录变成了文件。
报错提示信息:mount: wrong fs type, bad option, bad superblock
2.故障原理分析
某故障时,日志和数据不一致造成的正常文件系统数据被覆盖的现象。这种故障在Ext3、Ext4文件系统常有发生,好在.journal日志文件留有缓冲,恢复时可以从.journal日志文件里找到相应信息,并粘贴回相应位置,达到重建原文件的目的。
3.案例重要信息
Linux系统的硬盘的第一个扇区是MBR扇区,从MBR分区表能看出来,本案例一共有两个分区。第一个分区是交换分区,共7.8G,第二个分区是Ext4文件系统,共292G。总的大小为300G。
Ext3、Ext4文件系统有日志功能,本案例可以从.journal日志文件中找到丢失数据。
1. 块大小为4KB,即8个扇区。
2. 超级块(Superblock)起始位置在1024字节处,即2号扇区,大小为2个扇区。
3. 块组描述表从第一个块开始,即从4096字节处开始。
4.案例重要概念
超级块(Superblock):用于存储文件系统的配置参数(如块大小、总块数、i-节点数)和动态信息(当前空闲块数和i-节点数)。Ext4文件系统的超级块(Superblock)开始于1024字节处,即2号扇区。
块组:Ext4文件系统的全部空间被划分为若干个块组,每个块组内的结构都是大致相同的。
块