![访问 LVM 快照的逻辑块 0 时发生 XFS I/O 错误:驱动器或快照是否损坏?](https://linux22.com/image/538848/%E8%AE%BF%E9%97%AE%20LVM%20%E5%BF%AB%E7%85%A7%E7%9A%84%E9%80%BB%E8%BE%91%E5%9D%97%200%20%E6%97%B6%E5%8F%91%E7%94%9F%20XFS%20I%2FO%20%E9%94%99%E8%AF%AF%EF%BC%9A%E9%A9%B1%E5%8A%A8%E5%99%A8%E6%88%96%E5%BF%AB%E7%85%A7%E6%98%AF%E5%90%A6%E6%8D%9F%E5%9D%8F%EF%BC%9F.png)
我在一台装有 8x296GB Cheetah 15k.6 SAS 磁盘的机器上运行 OpenSuSE 11.3 作为 Xen 主机,其中 4 个是镜像磁盘,另外 4 个是条带磁盘。我使用 LVM 来管理磁盘,它们使用 OCFS2 格式化。我将 Xen domU 配置为卷组“vg”上的逻辑卷,并使用 XFS 作为 domU 文件系统。配置 domU 后,我创建了一个 LVM 快照并将其存储在卷组“vg”下。在创建快照时,我确保将其挂载,以确保它正常工作。
在 Xen 主机上,还有一个用于 /home 分区的逻辑卷,其中挂载了几个 domU。长话短说,我以为我在 domU 中,但实际上是在 dom0 中,然后发出“rm -rf /home/”来清除主目录。(这个 domU 没有挂载 LV /home。)虽然没有丢失任何有价值的东西,但我确实注意到 rm 命令返回时出现了 I/O 错误。
昨天,我去挂载 LVM 快照,得到了
stage:/ # mount -t xfs /dev/vg/xen-util-configured /mnt/template
mount: /dev/mapper/vg-xen--util--configured: can't read superblock
所以我尝试 xfs_check 它并得到
xfs_check: /dev/vg/xen-util-configured is invalid (cannot read first 512 bytes)
xfs_repair 类似
Phase 1 - find and verify superblock...
superblock read failed, offset 0, size 524288, ag 0, rval -1
fatal error -- Input/output error
我甚至无法 dd 第一个块,因为它报告
stage:/ # dd if=/dev/vg/xen-util-configured of=foo bs=512 count=1
dd: reading `/dev/vg/xen-util-configured': Input/output error
0+0 records in
0+0 records out
0 bytes (0 B) copied, 0.00100721 s, 0.0 kB/s
dmesg 报告
[ 1875.331675] Buffer I/O error on device dm-12, logical block 0
[ 1875.331687] Buffer I/O error on device dm-12, logical block 1
[ 1875.331696] Buffer I/O error on device dm-12, logical block 2
[ 1875.331704] Buffer I/O error on device dm-12, logical block 3
dm-12 是到 /dev/vg/xen-util-configured(我尝试挂载的 LVM 快照)的符号链接。
我在这里试图确定的是磁盘是否真的在某处有坏扇区,或者快照的 XFS fs 是否已损坏(如果是,如何恢复)。我不喜欢我甚至无法对快照的 dd 块 0 进行操作。RAID 控制器在启动期间不会报告任何降级的驱动器。我暂不使用 Seagate SeaTools,因为手册指出这些测试“可能或完全破坏 SCSI 或 SAS 驱动器上的数据”。
编辑:vgdisplay显示以下内容:
vgdisplay
--- Volume group ---
VG Name vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 39
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 12
Open LV 0
Max PV 0
Cur PV 1
Act PV 1
VG Size 1.07 TiB
PE Size 4.00 MiB
Total PE 281322
Alloc PE / Size 131616 / 514.12 GiB
Free PE / Size 149706 / 584.79 GiB
VG UUID eqvoEL-4qhV-AREf-7p3D-xr08-6VHh-iz13w7
所以看起来我有超过 1/2TB 的可用空间。
抱歉,帖子太长了……
答案1
vgdisplay 的输出是什么? 您可能已经用完了空间,并且 LV 快照现在是垃圾。
同样,在 xfs 文件系统上运行快照之前,您必须运行 xfs_freeze 以获取一致的文件系统。然而,这听起来像是 LVM 问题。