非破坏性地纠正 ZFS-8000-4J?

非破坏性地纠正 ZFS-8000-4J?

我在 Linux Mint 19.x 上运行 raidz2 池。我在池状态中看到以下内容:

david@Media:~$ zpool status 池:数据状态:降级状态:由于标签缺失或无效,无法使用一个或多个设备。有足够的副本可供池在降级状态下继续运行。操作:使用“zpool replace”更换设备。参见:http://zfsonlinux.org/msg/ZFS-8000-4J 扫描:于 2019 年 11 月 26 日星期二 09:53:36 用时 8 小时 15 分钟重新镀银 1.27T,无错误 配置:

NAME                      STATE     READ WRITE CKSUM
data                      DEGRADED     0     0     0
  raidz2-0                DEGRADED     0     0     0
    sdb                   ONLINE       0     0     0
    sdc                   ONLINE       0     0     0
    sdd                   ONLINE       0     0     0
    sde                   ONLINE       0     0     0
    10841317365380570418  UNAVAIL      0     0     0  was /dev/sdf1
    sdh                   ONLINE       0     0     0
    sdi                   ONLINE       0     0     0
    sdj                   ONLINE       0     0     0

如果我查看磁盘,会发现 /dev/sdf 上不再有驱动器,但 /dev/sdg 上有一个驱动器。我认为我不想运行状态中提到的“replace”命令,因为据我了解,这是破坏性的,会将数据重新分配到 sdg 上,而我认为 sdg 是丢失的 sdf。

我怎样才能将 sdg 换成 sdf 或者实现类似的操作而不破坏 sdg 上的池数据?

我查看了关于此消息的信息,但没有找到太多有用或我能理解的信息。我看到了对 mdadm 的引用,但这似乎不是我的问题;

david@Media:~$ cat /proc/mdstat 个性:未使用的设备:

答案1

您应该避免对 ZFS 池设备使用通用的 SCSI /dev/sdX 名称,因为它们在启动时可能会发生变化。我更喜欢使用 /dev/disk/by-id 中的条目

在这种情况下,您可能可以用新的设备位置替换丢失的磁盘:

zpool replace data 10841317365380570418 sdg

相关内容