我可以使用哪些步骤来恢复带有 LVM 和 EXT3 的 RAID 1 阵列?

我可以使用哪些步骤来恢复带有 LVM 和 EXT3 的 RAID 1 阵列?

有人递给我一个驱动器,它曾经是 RAID 1(镜像)阵列的一部分。该驱动器显然有 LVM(1?)和 EXT3(我相信)。我可以采取哪些步骤来重新获得对此驱动器的访问权限?

附加信息:

  • 该驱动器是来自大约 Fedora 6 系统的 RAID 阵列,因此我假设它处于仍在使用 LVM1 和 EXT3 的时代。
  • 我的RAID只有1/2。
  • 驱动器基于 USB。我当前的 Fedodra 14 系统能够很好地识别驱动器 (/dev/sdb1),并且我可以运行以下命令:

    $ mdadm -A --force /dev/md2 /dev/sde1
    $ mdadm --detail /dev/md2
    

    第一个似乎已将阵列设备添加到我的系统中,因为我可以成功运行第二个命令,该命令显示阵列是干净的,但处于降级状态(如预期)。

    $ mdadm --detail /dev/md2
    /dev/md2:
            Version : 0.90
      Creation Time : Mon Jan 15 15:20:44 2007
         Raid Level : raid1
         Array Size : 156288256 (149.05 GiB 160.04 GB)
      Used Dev Size : 156288256 (149.05 GiB 160.04 GB)
       Raid Devices : 2
      Total Devices : 1
    Preferred Minor : 2
        Persistence : Superblock is persistent
    
        Update Time : Fri Sep 27 16:50:13 2013
              State : clean, degraded
     Active Devices : 1
    Working Devices : 1
     Failed Devices : 0
      Spare Devices : 0
    
               UUID : 0266bb35:6fcac8b4:12f56e39:0f78dafb
             Events : 0.19624
    
        Number   Major   Minor   RaidDevice State
           0       8       65        0      active sync   /dev/sde1
           1       0        0        1      removed
    

当我尝试恢复 LVM 部分时,我遇到了困难。

编辑#1:后续问题

  1. 该命令会file -s /dev/{sde1,md2}产生什么结果?

    $ file -s /dev/{sde1,md2}
    /dev/sde1: LVM2 (Linux Logical Volume Manager) , UUID: ZK8IfBzUHPH5befvm5CZ81oIXHm11TG
    /dev/md2:  LVM2 (Linux Logical Volume Manager) , UUID: ZK8IfBzUHPH5befvm5CZ81oIXHm11TG
    
  2. 该命令会vgscan产生什么结果?

    $ vgscan
      Reading all physical volumes.  This may take a while...
      Found volume group "kodak_vg" using metadata type lvm2
    
  3. 是否有物理 LVM 卷/dev/md2

    是的,RAID 阵列 /dev/md2 上有一个物理 LVM 卷。

  4. 产生什么pvs结果?

    $ pvs
       PV         VG         Fmt  Attr PSize   PFree
       /dev/md2   kodak_vg   lvm2 a--  149.00G    0 
    
  5. 是否存在加密分区或 DOS 分区表?

    不,绝对也没有。这是一个基本的软件 RAID (md raid1) -> LVM -> EXT3。

编辑#2

此时,RAID 似乎完好无损,但不存在 LVM 设备映射器,逻辑卷 (LV) 似乎也处于非活动状态。

$ lvscan
  inactive          '/dev/kodak_vg/lvm0' [149.00 GB] inherit

所以我运行这个命令来激活它:

$ vgchange -ay
  1 logical volume(s) in volume group "kodak_vg" now active

重新运行lvscan显示 LV 现在处于活动状态:

$ lvscan
  ACTIVE            '/dev/kodak_vg/lvm0' [149.00 GB] inherit

安装

所以此时我认为安装 LVM 映射器就可以了/dev/kodak_vg/lvm0

$ mount -t ext3 /dev/kodak_vg/lvm0 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/kodak_vg/lvm0,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

这是以下的输出dmesg | tail

$ demsg | tail
Buffer I/O error on device md2, logical block 48
usb 1-4: reset high speed USB device using ehci_hcd and address 5
usb 1-4: reset high speed USB device using ehci_hcd and address 5
usb 1-4: reset high speed USB device using ehci_hcd and address 5
usb 1-4: reset high speed USB device using ehci_hcd and address 5
usb 1-4: reset high speed USB device using ehci_hcd and address 5
sd 22:0:0:0: scsi: Device offlined - not ready after error recovery
sd 22:0:0:0: SCSI error: return code = 0x07050000
end_request: I/O error, dev sde, sector 387
EXT3-fs: unable to read superblock

这是否意味着驱动器介质可能出现故障或已经发生故障?

编辑#3:后续问题

之前的安装尝试使设备处于无法访问的状态。我最初重新启动 USB 设备,然后重新检测为/dev/sdf1.然后我重启了系统,但现在设备显示dmesg/dev/sdj1.不知道如何将其移回原处,这真的很重要吗?

重复上述步骤,暂时替换/dev/sdj1/dev/sde1继续。

此时,设备被报告lvscan为“活动”,但我尚未尝试挂载 LVM 映射器。

  1. 该命令会smartctl -x /dev/sdj产生什么结果?

    该命令似乎无法正常工作:

    $ smartctl -x /dev/sdj
    smartctl 5.42 2011-10-20 r3458 [i686-linux-2.6.18-238.19.1.el5.centos.plus] (local build)
    Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
    
    /dev/sdj: Unknown USB bridge [0x0bc2:0x0503 (0x300)]
    Smartctl: please specify device type with the -d option.
    
    Use smartctl -h to get a usage summary
    

    然而,该命令确实产生了一些附加信息:

    $ smartctl -x /dev/sdj1
    smartctl 5.42 2011-10-20 r3458 [i686-linux-2.6.18-238.19.1.el5.centos.plus] (local build)
    Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net
    
    Vendor:               Seagate
    Product:              External Drive
    User Capacity:        160,041,885,696 bytes [160 GB]
    Logical block size:   512 bytes
    Serial number:         
    Device type:          disk
    Local Time is:        Sat Sep 28 07:58:50 2013 EDT
    Device does not support SMART
    
    Error Counter logging not supported
    Device does not support Self Test logging
    Device does not support Background scan results logging
    scsiPrintSasPhy Log Sense Failed [unsupported scsi opcode]
    
  2. 该命令会file -s /dev/kodak_vg/lvm0产生什么结果?

    $ file -s /dev/kodak_vg/lvm0
    /dev/kodak_vg/lvm0: symbolic link to `/dev/mapper/kodak_vg-lvm0'
    

    file -s尝试针对映射器设备运行命令:

    $ file -s /dev/mapper/kodak_vg-lvm0 
    /dev/mapper/kodak_vg-lvm0: ERROR: cannot read `/dev/mapper/kodak_vg-lvm0' (Input/output error)
    
  3. 接下来是什么?

    我将采纳 @Gilles 的建议并将dd_rescue驱动器转移到另一个设备上,看看我们是否无法将设备问题与 RAID/LVM 问题区分开来。

    在继续之前还有其他建议吗?

参考

相关内容