如何恢复已删除的设备映射器?

如何恢复已删除的设备映射器?

不小心,设备映射器已从 中删除Integrated storage

kpartx -s -d -p X /dev/mapper/5lvdja6xen3oks

有没有办法恢复这些数据?

答案1

该命令不会删除设备映射器(内核子系统)。只有映射为访问设备内的分区而创建的分区将被删除。

这些映射不是持久的,kpartx每次启动系统时都会根据存储设备上的分区表创建。因此RAID组上的分区表是否未损坏-d,您可以通过将(删除)选项替换为-a(添加)来重新创建映射:

kpartx -s -a -p X /dev/mapper/5lvdja6xen3oks

或者您可以重新启动系统,它可能会再次正常启动。

(从设备名称来看,我猜该设备正在使用 DM-RAID,它通常在 RAID 集中有一个分区表 - 更常见的 MD 软件 RAID 通常以相反的方式工作,在分区磁盘中具有单独的分区用作 RAID 元素,然后每个 MD RAID 集将仅包含一个文件系统。)

然而,如果kpartx无法重新创建丢失的分区映射,则表明设备上的分区表已被覆盖,或者/dev/mapper/5lvdja6xen3oks由于某种原因无法访问“全磁盘”RAID 集设备。要验证 RAID 集的状态,您可能应该使用dmraid -r和/或dmraid -s命令。如果您需要更多帮助,请编辑您的原始问题并将这些命令的输出添加到原始问题帖子中。

如果只是覆盖了分区表,testdisk或者可以使用类似的工具(例如testdisk /dev/mapper/5lvdja6xen3oks)读取整个磁盘设备,找到每个分区的端点并重建分区表,然后kpartx再使用该工具使分区可访问。

相关内容