当fsck没有帮助时,从损坏的文件系统中恢复

我的文件系统出了问题,Ubuntu将它设置为只读,现在在Ubuntu Live Disc下,fsck无法修复它。

我正在运行13.04并且它无法启动 – 在启动时,它只显示grub救援提示。

这是一个简单的设置,只是/ dev / sda1上的一个硬盘驱动器,但它甚至不会安装。

安装程序可以看到分区,它是ext4,它是启动分区。

然而,似乎我无法通过使用Ubuntu实时磁盘进行Ubuntu安装来拯救文件系统,因为它没有表明它是否要覆盖整个批次,所以我不想冒险。

我有一个使用backuppc的备份,但愚蠢的是我丢失了我的救援盘。 我宁愿避免完全安装,然后恢复,我没有执行经验。

问题的关键在于fsck说它修复了所有内容但实际上并没有,所以下次运行它时,我会得到完全相同的错误消息和修复。

这是输出:

ubuntu@ubuntu:~$ sudo fsck.ext4 -vy /dev/sda1 e2fsck 1.42.8 (20-Jun-2013) ext2fs_check_desc: Corrupt group descriptor: bad block for block bitmap fsck.ext4: Group descriptors look bad... trying backup blocks... Block bitmap for group 0 is not in group. (block 2553887680) Relocate? yes Inode table for group 0 is not in group. (block 2440124416) WARNING: SEVERE DATA LOSS POSSIBLE. Relocate? yes One or more block group descriptor checksums are invalid. Fix? yes Group descriptor 0 checksum is 0x761e, should be 0xcf25. FIXED. Block bitmap for group 4352 is not in group. (block 2553887680) Relocate? yes Inode table for group 4352 is not in group. (block 3731970048) WARNING: SEVERE DATA LOSS POSSIBLE. Relocate? yes Group descriptor 4352 checksum is 0x5eda, should be 0x3da3. FIXED. Inode bitmap for group 4353 is not in group. (block 2785042439) Relocate? yes Group descriptor 4353 checksum is 0xd8b1, should be 0xedfb. FIXED. Inode bitmap for group 4354 is not in group. (block 838860807) Relocate? yes Group descriptor 4354 checksum is 0x1718, should be 0x0438. FIXED. Inode bitmap for group 4355 is not in group. (block 771751943) Relocate? yes Group descriptor 4355 checksum is 0x0bc8, should be 0x4170. FIXED. fsck.ext4: e2fsck_read_bitmaps: illegal bitmap block(s) for /dev/sda1 /dev/sda1: ***** FILE SYSTEM WAS MODIFIED ***** /dev/sda1: ********** WARNING: Filesystem still has errors ********** ubuntu@ubuntu:~$ 

这与之前的10次完全相同,我确信接下来的十次我会尝试它 – 完全相同的校验和和块ID。 很高兴收到任何帮助!

谢谢。

编辑:基本上我猜的问题是:这个文件系统现在可以原位修复还是来自fsck的信息意味着我的磁盘已经死了? 如果它没有死,我能做什么超出我对fsck所做的事情?

编辑:使用tune2fs识别超级块并运行e2fsck -b 01234 / dev / sda1作为fsck的替代…没有效果。

编辑:尝试testdisk告诉我分区是坏的。 …好的testdisk似乎没有提供太多。

终于找到了这个文件系统类型ext4遭到攻击的链接但是在给出了我已经尝试过的所有提示后,它最终说这样做:

 sudo mkfs.ext4 -S /dev/sda1 

这将使用正确的数据替换所有超级块,假设块大小被正确猜测(对于大多数系统,默认值是正确的。)如果您需要使用它,请首先阅读-S上的手册页 。 别怪我!

但只有你感到幸运。

它修复了分区,所以我可以再次阅读它。 但是,我必须运行fsck来修复仍然存在的错误,并且将/ etc和其他很多东西的内容转储到/丢失+发现所以我将不得不重新安装和恢复从备份到再次进行。

第一:如果你在这个磁盘上有重要的数据,这将是一个很好的时间(实际上是一个糟糕的时间)来进行备份。 请参阅数据恢复:对损坏的设备,文件系统或驱动器进行映像 。 也许你的硬盘正在死亡。

第二:看看这个: 如何在崩溃后修复我的数据驱动器的安装?

第三:使用sudo badblocks -vsn /dev/sda检查您的Harddrive并最终检查sudo badblocks -vsn /dev/sdasudo badblocks -vsn /dev/sda (这可能需要一些时间,如果您有ssd,请不要这样做)