ubuntu 14.04.4上ext4文件系统损坏


18

我有一台台式计算机,其Ubuntu 64位版本为Ubuntu 14.04.4 LTS,仅连接了HDD USB 3.0 4TB Intenso 1分区ext4数据驱动器(无OS或Apps)。突然断电后,我无法安装驱动器(检查了其他主机Linux机器,但没有结果)。

错误信息:

sudo mount /dev/sdd1 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/sdd1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

尝试使用fsck,e2fsck没有结果。错误消息显示“获取更新版本的e2fsck”。

尝试了所有可用的超级块备份,但没有结果。

在脱机和未挂载的卷上尝试了脱机文件/驱动器Linux检查程序,但没有结果。

最后,我收到以下错误消息,但我无法在线寻求任何帮助:

"has unsupported feature(s): metadata_csum".
e2fsck 1.42.9 (4-Feb-2014)
/dev/sdd1 has unsupported feature(s): metadata_csum
e2fsck: Get a newer version of e2fsck!

谁能帮我取回我的数据?


你检查系统日志了吗?如错误所示,它有时具有一些良好的信息。您可以检查文件系统吗?
Rinzwind '16

谢谢您的答复。syslogs条目仅显示上面的错误消息。此外,每次我尝试检查已卸载卷上的文件系统时,都会出现相同的错误消息。尝试了终端命令和基于Linux的脱机GUI的工具,均返回了错误消息“ ... try dmesg ...左右”。
ubuntuuser

“ / dev / sdd1具有不受支持的功能:metadata_csum”似乎是关于此问题的最佳信息。您确定它是ext4吗?而不是3?这可能会有所帮助:serverfault.com/a/82837/229730
Rinzwind

谢谢。我同意您的看法,主要问题是“ metadata_csum”,我不知道如何解决它。100%确定ext4。我用ext4和gparted-information亲自格式化,显示ext4(1个分区)的使用率为15%,未分区的空间为10MB。
ubuntuuser

运行sudo mkfs.ext4 -S / dev / sdd1和sudo fsck -yf / dev / sdd1。操作成功完成。现在我可以挂载驱动器,但是挂载点上没有显示任何内容!有帮助吗?
ubuntuuser

Answers:


23

我遇到了同样的问题,花了一些时间来修复它,而没有格式化:)

只需遵循以下提示:

e2fsck:获取更新版本的e2fsck!

您需要下载e2fsck的最新版本,进行编译,然后使用此版本。

以下是一些步骤(使用1.43.1或更高版本):

wget http://downloads.sourceforge.net/project/e2fsprogs/e2fsprogs/v1.43.1/e2fsprogs-1.43.1.tar.gz
tar xzf e2fsprogs-1.43.1.tar.gz
cd e2fsprogs-1.43.1
./configure # <== if this step fail, check the config.log file, it could just be that you are missing the "libc6-dev" package on your system
make
cd e2fsck/
./e2fsck

瞧!


1
现在可以安装足够新的e2fsprogs,而无需从源代码进行编译。看我的答案。
David Foerster,2017年

我将确认我只是这样做,并且可以解决问题。只需按照您的命令。
Jo-Erlend Schinstad'9

这实际上是在Ubuntu 14.04上工作的(@DavidFoerster的回答我没有成功)
Wizard79

@ Wizard79:我的答案在哪一点失败?包下载了吗?由于Zesty现在已停产,并且已从大多数包装镜中删除,因此我现在更新了指向Artful的链接。
David Foerster,

1
如果有人想使用此e2fsck版本作为默认fsck,则当然需要在备份后覆盖/ sbin / e2fsck。
Rochdi Boudjehem

13

metadata_csum代表“ Metadata Checksums ”,自Linux 3.6起可用于Ext4文件系统,但直到v1.43才受文件系统工具支持:

对校验和的支持位于e2fsprogs WIP树中,这意味着它可能会出现在e2fsprogs 1.43中。

由于Ubuntu Bionic具有e2fsprogs v1.44.1,因此您不再需要从源代码构建它。相反,如果您具有Ubuntu TrustyXenial,则可e2fsprogs以为您的体系结构下载Deb软件包,并使用以下命令安装它们:

arch=$(dpkg --print-architecture)
sudo dpkg -i {e2fslibs,lib{ext2fs2,ss2,com{,-}err2}}_*_$arch.deb
sudo dpkg -i e2fsprogs_*_$arch.deb
sudo dpkg --configure --pending

不幸的是,这些软件包不能通过一次DPKG调用来安装,因为一个依赖于另一个,并且必须在安装之前进行配置。


对于非x86 *架构的注释:无论出于何种原因,以上链接后面的软件包存储库都仅包含i386和amd64架构的二进制软件包。如果您需要它们用于其他体系结构,则可以从Launchpad下载它们。


目前尚不清楚如何从该站点下载。
Max

谢谢,问题是没有armhf拱门的包装。显示了所有拱门,但其中没有文件。
Max


i.imgur.com/4B8YiDe.png例如,我看到的是amd64图像的镜像,但armhf却没有。可能没有镜像,并且只能通过程序包管理器使用该程序包吗?
最高

谢谢,您可以将此链接添加到答案中,以供下一个deb / iot专家使用。
Max

-3

您可以编译源代码并安装最新版本的e2fsck。

包含e2fsck源代码的克隆存储库。

git clone https://github.com/tytso/e2fsprogs.git

确保安装了必要的工具来编译源代码。

sudo apt install build-essential 

创建构建目录。

cd e2fsprogs && mkdir build && cd build

编译源代码并安装最新的e2fsck。

../configure && make && cd e2fsck && sudo make install

3
这是一种过时的文件系统管理实用程序,而不是损坏的文件系统。无需求助于数据恢复工具。-1
大卫·佛斯特
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.