Ubuntu 12.04 无法挂载 /home 分区,我运行:
fsck /dev/sda5
处于状态
Pass 1D: Reconciling multiply-claimed blocks
(There are 41608 inodes containing multiply-claimed blocks.)
然后有一个问题:
Clone multiply-claimed blocks<y>?
我该怎么办?继续按是的,可能需要数周时间才能遍历所有 41608 个 inode。/home 分区中有一些我想保存的数据。我还有其他选项可以恢复此分区吗?
谢谢
[编辑]
开始确认(通过单击“y”),在其中一些上我得到了以下内容:
clone_file_block: internal error: can't find dup_blk for 121143344
[更新-01] 在 David 的回答和启动 Ubuntu 14.10-beta Utopic 的实时系统映像后...并运行
e2fsck -p /dev/sda5
我得到以下内容:
/dev/sda5 contains a file system with errors, check forced.
/dev/sda5: Root inode is not a directory. /dev/sda5: UNEXPECTED INCONSISTENCY;
run fsck MANUALLY. (i.e. without -a or -p options)
答案1
忠告:在对文件系统进行任何更改或修复之前,最好先备份整个文件系统。如果你没有足够的空间e2image(8)
作为紧急预防措施。
修复损坏的超级块 [编辑]
根据您的评论,您的文件系统超级块已损坏。有一个serverfault 上的答案处理这个问题。
由于在没有可用的超级块的情况下不可能找到正确的块大小,因此我根据 400 GB 的卷大小猜测块大小为 4 KiB,这导致超级块备份位置为 32768。因此
e2fsck -b 32768 -p /dev/sda5
然后根据输出从那里获取。
对抗重复的用户交互请求
我从e2fsck(8)
手动的:
-p Automatically repair ("preen") the file system. This option will cause e2fsck to automatically fix any filesystem problems that can be safely fixed without human intervention. If e2fsck discovers a problem which may require the system administrator to take additional corrective action, e2fsck will print a description of the problem and then exit with the value 4 logically or'ed into the exit code. (See the EXIT CODE section.) This option is normally used by the system's boot scripts. It may not be specified at the same time as the -n or -y options. -y Assume an answer of `yes' to all questions; allows e2fsck to be used non-interactively. This option may not be specified at the same time as the -n or -p options.
如果出现其他严重错误, -option-p
是更安全的途径,但如果这不起作用,请尝试-y
。
clone_file_block
错误
这似乎是一个已知错误e2fsprogs
。您可以使用预发行的 Utopic 系列软件包的较新版本来试试运气通过 Launchpad或者使用实时系统映像。