前几天深夜,Ubuntu 突然崩溃了(没有发生任何异常 - 只是使用 Firefox 和 Audacity)。我没有看到错误消息,也没有多想 - 只是重新启动 - 尝试从 GRUB 启动 Linux 驱动器(我的另一台硬盘上也有 Windows) - 它无法加载。恢复选项也是如此。
从 Ubuntu 12.04 系统盘启动,并使用“尝试 Ubuntu”选项。甚至无法挂载 Ubuntu 所在的驱动器,尽管它在 fdisk -l 中显示。
我sudo fsck -t ext4 -f /dev/sdb1
从终端运行并收到此消息:
JBD: Failed to read block at offset 8480
fsck.ext4: Input/output error while recovering ext3 journal of /dev/sdb1
/dev/sdb1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sdb1: ********** WARNING: Filesystem still has errors **********
这至少允许我安装驱动器,但不能访问太多内容或从中启动 - 总是出现错误,说无法读取文件 - 当我尝试启动时必须先加载内核。
然后我运行了sudo fsck -t ext4 -y /dev/sdb1
——它在一夜之间修复了大量错误,就像第一遍中出现的一样——
Inodes that were part of a corrupted orphan linked list found. Fix? yes
Inode 56885569 was part of the orphaned inode list. FIXED. There was around 100 of those fixed.
继续通过二并修复了更多错误......
Entry 'ksocket-ehah' in /tmp (9961473) has an incorrect filetype (was 2, should be 6). Fix? yes
ehah
顺便说一下,这是我在系统上的用户名。
许多错误甚至没有显示条目名称或目录位置 - 只是说???中的条目‘...’并说它在目录 Inode 中缺少‘...’。
第二遍完成后,它给出了一个错误,提示“调整 inode 大小无效”,然后重新运行第一遍。不确定这之后发生了什么(我只是让它运行 - 整个过程大约花了 18 个小时) - 但最终结果是 -
/dev/sdb1: ***** FILE SYSTEM WAS MODIFIED ***** /dev/sdb1: 262033/121610240 files (0.6% non-contiguous), 45779164/486412288 blocks.
仍然无法启动 - 并且当我使用 Ubuntu Live CD 时也无法再安装。
没有备份。有什么办法可以让它重新工作,或者至少保存尽可能多的数据吗?
当我使用 fsck 命令时,驱动器始终被卸载。
当我尝试从终端安装驱动器时,我得到:
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
fdisk -l
显示以下内容(sda1 是一个单独的驱动器,上面装有 Windows,运行良好。)
Device Boot Start End Blocks Id System
/dev/sda1 * 63 2930255999 1465127968+ 7 HPFS/NTFS/exFAT
Disk /dev/sdb: 2000.4 GB, 2000397852160 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907027055 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00003767
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 3891300351 1945649152 83 Linux
/dev/sdb2 3891302398 3907024895 7861249 5 Extended
Partition 2 does not start on physical sector boundary.
/dev/sdb5 3891302400 3907024895 7861248 82 Linux swap / Solaris
答案1
您的文件系统已损坏,我认为您无法恢复数据(您应该备份)。您可以尝试一些“已删除文件恢复”程序,不知道这是否有用。对我来说,这似乎是重新安装,但我可能错了。