e2fsck / resize2fs 问题

e2fsck / resize2fs 问题

我有 6 个驱动器(每个 1.5T,所有型号和固件版本都相同),它们属于 RAID5 阵列。RAID5 组成一个 LVM 卷组和一个逻辑组。后者仅包含一个 ext3 分区。我最近运行了:

e2fsck -f /dev/vg03/lv01 && resize2fs -M /dev/vg03/lv01

没有错误地退出。

现在当我尝试时mount /dev/vg03/lv01我得到:

EXT3-fs error (device dm-0): ext3_check_descriptors: Block bitmap for group 30533 not in group (block 1000532368)!
  EXT3-fs: group descriptors corrupted!

我该如何摆脱这种困境?这是我目前能给你的所有信息:

fdisk -l /dev/sd[cdefgh](正确地)表明它们是“ Linux raid autodetect

但 fdisk 现在显示:

fdisk -l /dev/md0

磁盘 /dev/md0:7501.5 GB,7501495664640 字节

...
磁盘标识符:0x00000000
磁盘 /dev/md0 不包含有效的分区表

(而不是 LVM 类型的分区)

fdisk -l /dev/vg03/lv01

磁盘 /dev/vg03/lv01:7501.5 GB,7501491732480 字节
...
磁盘标识符:0x00000000
磁盘 /dev/vg03/lv01 不包含有效的分区表

(而不是 ext3 类型的分区)

我试过了:

e2fsck -fy /dev/vg03/lv01

e2fsck 1.41.12 (2010 年 5 月 17 日)
e2fsck:组描述符看起来不好...尝试备份块...
组 30533 的块位图不在组中。(块 1000532368)
重新定位?是

组 30533 的 Inode 位图不在组中。(块 1000532369)
重新定位?是

第 1 遍:检查 inode、块和大小
将组 30533 的块位图重新定位到 1000524246...
在块组 30533 中为 inode 位图分配 1 个连续块时出错:无法在 ext2 文件系统中分配块
e2fsck:中止

我可以给你提供以下额外信息:

cat /proc/mdstat

个性:[线性] [多路径] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0:活动(自动只读)raid5 sdg1[0] sdh1[5] sdf1[4] sde1[3] sdc1[2] sdd1[1]
7325679360 块级别 5,128k 块,算法 2 [6/6] [UUUUUU]
位图:1/175 页 [4KB],4096KB 块

未使用的设备:

最后,所有 smartctl 测试(简短和扩展)均显示任何磁盘均未出现错误。

我是否应该尝试resize2fs扩展/dev/vg03/lv01并重新创建一个e2fsck?我是否应该将cfdisk /dev/md0/dev/vg03/lv01恢复为它们的真实类型?

提前感谢所有的帮助。

2011-09-20 更新

我发出了以下命令并能够重新安装分区,但通过查看df之前和之后的大小(),似乎有 1Tb 的数据丢失了。通过检查某些文件的 MD5SUMS(来自旧备份)与重新安装分区中的“相同”文件,检测到了一些错误。

重新挂载分区发出的命令是:

dumpe2fs /dev/vg03/lv01

  Block count: 1000491435<br />
  Block size:  4096<br />

tune2fs -O ^has_journal /dev/vg03/lv01

resize2fs -p /dev/vg03/lv01

dumpe2fs /dev/vg03/lv01

  Block count: 1831418880<br />
  Block size:  4096<br />

安装 -o ro,noatime /dev/vg03/lv01 /mnt/raid

  OK... but files have been damaged / gone missing.

答案1

您最初是如何创建 LVM 的?您是否准备了物理卷/dev/md0,或者您是否先fdisk使用其中一个分区作为物理卷。

如果您将整个设备用作 PV,那么fdisk它将无法工作,因为 LVM 信息将被放置在fdisk需要找到分区表的位置。

您可能需要检查的是查看vgdisplay -v /dev/vg03卷组中存在哪些物理卷。

答案2

您有由 6 个 sd* 块设备组成的 raid 5,没有分区。现在,您在 raid md0 上有 lvm。因此,您从 md0 创建物理卷、名为 vg03 的卷组和一个名为 lv01 的逻辑卷。lv01 由 ext3 文件系统组成,您希望对其进行增大/缩小。

通过执行该操作:e2fsck -f /dev/vg03/lv01 && resize2fs -M /dev/vg03/lv01 您尝试缩小文件系统,该文件系统正是 ext3(带日志)。

据我所知,resize2fs 可以调整 ext2 文件系统的大小,但不能调整 ext3 文件系统的大小,所以您必须首先删除日志。

现在,当您通过 tunefs 执行此操作时,您可以恢复工作文件系统,该文件系统后来被 resize2fs 和 fsck 破坏。

在这一点上,我建议您只使用一些特定的恢复软件,如 ext3 取消删除或其他...

相关内容