如何恢复 vgscan 和 lvmdiskscan 未找到的丢失的 LVM 卷组

如何恢复 vgscan 和 lvmdiskscan 未找到的丢失的 LVM 卷组

我有一个帖子:如何复制旧磁盘数据?

答案很好,但对我没有帮助。答案用户建议我在那里开一个新帖子,因为这是一些区别。

我尝试使用扫描系统查找我的旧卷组vgscan,但它找不到我的旧卷组。

我也曾经lvmdiskscan寻找过我的旧物理卷,不幸的是,lvmdiskscan找不到它。以下是输出lvmdiskscan

[root@localhost mapper]# lvmdiskscan
  /dev/ram0             [      16.00 MiB] 
  /dev/loop0            [     930.53 GiB] 
  /dev/root             [      50.00 GiB] 
  /dev/ram1             [      16.00 MiB] 
  /dev/sda1             [     500.00 MiB] 
  /dev/VolGroup/lv_swap [       7.05 GiB] 
  /dev/ram2             [      16.00 MiB] 
  /dev/sda2             [     931.02 GiB] 
  /dev/VolGroup/lv_home [     873.97 GiB] 
  /dev/ram3             [      16.00 MiB] 
  /dev/ram4             [      16.00 MiB] 
  /dev/ram5             [      16.00 MiB] 
  /dev/ram6             [      16.00 MiB] 
  /dev/ram7             [      16.00 MiB] 
  /dev/ram8             [      16.00 MiB] 
  /dev/ram9             [      16.00 MiB] 
  /dev/ram10            [      16.00 MiB] 
  /dev/ram11            [      16.00 MiB] 
  /dev/ram12            [      16.00 MiB] 
  /dev/ram13            [      16.00 MiB] 
  /dev/ram14            [      16.00 MiB] 
  /dev/ram15            [      16.00 MiB] 
  /dev/sdb1             [     500.00 MiB] 
  /dev/sdb2             [     931.02 GiB] LVM physical volume
  3 disks
  20 partitions
  0 LVM physical volume whole disks
  1 LVM physical volume

lvmdiskscan只能找到一个LVM physical volume,这是我新安装的 lvm,位于/dev/sdb2.

这是输出fdisk -l

[root@localhost mapper]# fdisk -l 

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x2cbfcf8a

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              64      121602   976248832   8e  Linux LVM

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0xe8a4e8a4

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sdb2              64      121602   976248832   8e  Linux LVM

Disk /dev/mapper/VolGroup-lv_root: 53.7 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes

/dev/sda2是我的旧lvm安装所在的位置。

答案1

我发现这是一个没有答案的老问题。但对于有类似问题的人来说,这里有一些提示:

  • 分区表指示分区类型这一事实并Linux LVM不能保证该分区实际保存 LVM 数据。该分区可能已被覆盖。

  • 尝试file -s /dev/sda2查看该分区的内容是否实际上看起来像 LVM PV 数据。响应应该与此类似(当然,具有不同的 UUID 和大小值):

    /dev/sda2: LVM2 PV (Linux Logical Volume Manager), UUID: xxxxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxxxx, size: <number>

  • 如果分区包含可识别的 LVM PV,请尝试pvdisplay -m /dev/sda2查看它是否确实包含您要恢复的 LV。输出将有助于规划下一步操作,因此请将其添加到您的问题帖子中。

  • 如果看起来分区已被覆盖(例如由于误瞄准mkfspvcreate -ff),停止执行任何可能在分区上写入的操作。您可以尝试文件恢复工具,例如测试盘,摄影记录或者联系一些文件恢复专业人员:在这种情况下,是否可以恢复任何内容将取决于覆盖操作的彻底程度。如果仅覆盖文件系统元数据,则可能可以从未覆盖的部分抢救一些文件,但这需要专门的应用程序,并且可能需要对 LVM 和文件系统的结构有一些深入的了解。

答案2

别忘了跑lvmdevices --adddev /dev/sda2之前pvscan。 (/dev/sda2 是您的旧分区或外部分区)

并使用pvscan -vvv查看更多详细信息。

相关内容