ext4 的 fsck 适用于 64 位系统吗?

ext4 的 fsck 适用于 64 位系统吗?

首先,我要感谢James T他们ct64116我的第一个问题;我意外地用 Windows 7 安装程序覆盖了 ext4 分区并丢失了大约 300Gb 的文件。

我听从了他们的建议,使用 testdisk 分析了丢失的文件系统。一切似乎都正常,我很想恢复它,但我遇到了一个障碍。

我在 64 位处理器上运行 Ubuntu 10.04。为了修复文件系统,我需要找到备份超级块(我已经找到了),然后使用它们将磁盘恢复到可用状态。但是它不起作用,我想我知道原因了。

我在用着本教程启动并运行分区。但是,当我运行 fsck.ext4 时,我得到的输出与他不同。首先,版本号不同:他的版本号是 1.41.4,我的版本号是 1.41.11。

其次,尽管我正在运行 fsck.ext4,但我收到的错误消息告诉我,我正在检查的文件系统不正确扩展2文件系统。

所以我认为这里的问题在于我拥有的 fsck 版本还不能理解 ext4,而它不能理解 ext4 的原因(尽管我的编译日期晚于他的)是因为我运行的是 64 位系统,而较新的 fsck 尚未移植到 64 位。这听起来对吗?

无论如何,如果没有适用于 64 位系统的较新的 fsck,我想我现在唯一的希望就是拿起一个外部 3.5 英寸外壳,拔出驱动器,将其连接到我的 i386 笔记本电脑,然后尝试从该机器(使用版本 1.41.9)修复文件系统。

这听起来是个好主意吗?有谁知道是否有更简单的方法可以解决这个问题(例如,是否有较新的 fsck 的 64 位版本可用 - 我似乎无法通过 Google 找到太多信息 - 它对我来说有点难以理解)?

万分感谢。

SS

编辑:根据 nik 的建议,以下是所讨论系统的 fdisk 输出。当前处于危险中的磁盘是列表中的最后一个磁盘,位于 /dev/sdc1。[nik
编辑:我已从其他磁盘中删除数据以减少混乱 — 如果需要,请查看上一个编辑]

磁盘 /dev/sdc:1500.3 GB,1500301910016 字节
255 个磁头、63 个扇区/磁道、182401 个磁柱
单位 = 16065 * 512 = 8225280 字节的柱面
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标识符:0x05ced8ed

   设备启动开始结束块ID系统
/dev/sdc1 1 182402 1465136128 7 HPFS/NTFS

更新:我对超级块不太走运;不过我摆弄了 testdisk,发现 testdisk 会将文件夹结构复制到我的主目录中!太棒了

不过,我的主目录位于 SSD 上,而且任何时候都只有大约 30 GB 的可用空间,因此我必须错开副本并定期转储到更大的磁盘上 - 幸好我有一个额外的磁盘 HDD 可用。我将逐个文件夹地浏览,直到将所有数据复制到另一个磁盘。这需要时间,但比浏览和重命名每个文件(这是我使用 photorec 要做的)所需的时间要少得多。

非常感谢你的帮助,特别是你,nik。

答案1

你的文件系统可能出了问题
Lucid amd64 文件列表,我不认为这是一个架构兼容性的问题。

也许您应该打印“ ”的输出sudo fdisk -l以供参考,并指出有问题的分区。


更新关于您的“ amd64”兼容性评论/查询。

Ubuntu 为长模式实现被称为“ amd64”,以区别于i38632 位 x86 的“ ”构建。因此,amd64 实际上是 64 位构建x86-64架构。

简而言之,无论 ' amd' 名称是什么,它都可以在您的 x86-64 ' i7' 处理器上运行 :-)


回到你最初关于 ext4 恢复的问题
您的磁盘已声明为 NTFS,可能会造成无法恢复的损失——但是,不要失去希望并丢弃磁盘数据;拥有不同知识的人可能会帮助您。遗憾的是,我不知道其他方法了。

fsck.ext4”可能无法检测到任何可用的文件系统元数据。此时,了解以下内容很有用:ext4' 基本上是 ' 的变体ext2。因此,您可能丢失了重要的文件系统元数据,这使得 fsck 甚至难以将其识别为基本“ ext2”。

希望这些信息能帮助您更好地理解您的困境。
同时,让我们等待更多答案的出现。
如果我有任何新想法,我会更新。

相关内容