ZPOOL 替换导出池中的故障磁盘

Uel*_*ert 5 zfs diskmanagement data-recovery zfsonlinux

昨天,我将一个新磁盘放入我的服务器。可悲的是,在出现故障之前我没有检查磁盘。

我使用命令将它添加到我的池中 zpool add nas /dev/disk/by-id/scsi-SATA_ST31500341AS_9VS27Z4M-part1

不久之后,服务器的 CPU 负载几乎达到无穷大,我什至无法重新登录。

所以我执行了硬重启(Alt + SysRq + b),但服务器无法启动。(在 GRUB 出现后,大约 5 分钟内没有发生任何事情。然后,我将其关闭并取出新磁盘。我启动并工作。

但是现在,我遇到了问题,我无法访问所谓的“nas”池,因为最后一个(新)磁盘显示为状态“UNAVAIL”,并且因为它不是镜像池,所以整个池都在状态 UNAVAIL。

如果我再次放入磁盘并执行操作,zpool online nas /dev/disk/by-id/scsi-SATA_ST31500341AS_9VS27Z4M-part1则它不起作用并告诉我“找不到磁盘”。

因此,我尝试了从 oracle-docs 中读取的一些可能性,并使用zpool export nas. 现在,我什至无法导入池。

zpool import nas -f
cannot import 'nas': one or more devices is currently unavailable
Run Code Online (Sandbox Code Playgroud)

如果我查看zpool import,它会告诉我:

pool: nas
     id: 3366469163144781663
  state: UNAVAIL
 status: One or more devices are missing from the system.
 action: The pool cannot be imported. Attach the missing
        devices and try again.
   see: http://zfsonlinux.org/msg/ZFS-8000-6X
 config:

        nas                                               UNAVAIL  missing device
          dm-name-linuxServer-nas                         ONLINE
          ata-WDC_WD20EARX-00PASB0_WD-WCAZAC521840-part1  ONLINE
          ata-WDC_WD20EFRX-68AX9N0_WD-WMC300228535-part1  ONLINE

        Additional devices are known to be part of this pool, though their
        exact configuration cannot be determined.
Run Code Online (Sandbox Code Playgroud)

需要明确的是:池是完全不相关的,数据不是。如果我能够以某种方式访问​​数据,我可以将其导出到外部硬盘驱动器。

是的,我没有备份(我很惭愧!)但我通常没有另一个 6TB 用于备份。

有没有可能访问这些数据?也许伪造磁盘以便 zpool 认为它可用或类似的东西?

任何帮助将不胜感激。

eww*_*ite 5

我不想这么说,但你知道你基本上是在向你的池中添加未受攻击的磁盘吗?
您提供的命令基本上是“将另一个磁盘添加到池nas并将其与现有磁盘条带化”。

那是你的意思吗?

此时池已完成,尤其是在有任何内容写入坏磁盘时。如果这是一对镜像,池将处于状态:FAULTED,您将能够恢复。照原样,您可能已经丢失了数据。