ZFS:尝试从Zpool删除顶级驱动器


9

我有一个称为存储的zpool,其中包含五个设备的raidz1阵列。

今天,我去买了另一台3TB设备,并将其放入机箱中。但是,我没有创建一个新池并将该设备添加到其中,而是犯了一个错误,并将其添加到我现有的存储池中。

现在,我有一个要删除的顶级设备称为sdg(这是新驱动器)。每次尝试删除它时,我都会得到:

cannot remove sdg: only inactive hot spares, cache, top-level, or log devices can be removed.

那么如何立即删除该设备?如果此设备出现故障,则整个池将不可用。我以为我应该去买另一个驱动器,至少它会被镜像,但是我简直不敢相信没有正确的方法可以做到这一点。

这是我的状态转储:

pool: storage
state: ONLINE
scan: scrub canceled on Wed Jul 23 17:26:08 2014

config:

 NAME                                 STATE     READ WRITE CKSUM
 storage                              ONLINE       0     0     0
   raidz1-0                           ONLINE       0     0     0
     ata-ST3000DM001-1CH166_Z1F1PYM6  ONLINE       0     0     0
     ata-ST3000DM001-1CH166_W1F24CSC  ONLINE       0     0     0
     ata-ST3000DM001-1CH166_W1F2372R  ONLINE       0     0     0
     ata-ST3000DM001-1CH166_W1F24BTK  ONLINE       0     0     0
     ata-ST3000DM001-1CH166_Z1F2KKLW  ONLINE       0     0     0
   sdg                                ONLINE       0     0     0

errors: No known data errors

1
我的理解是,这sdg现在已成为条带化存储池的一部分。由于池是条带化的而不是镜像的,因此无法sdg从池中删除。取回它的唯一方法是将数据从storage池中复制到另一台设备,销毁该池,然后在不使用sdg的情况下重新创建它。然后为sdg创建一个新池,以执行您想使用它的任何操作。
沃里克

我在zfs文档中阅读的所有内容都表明,条带无法像这样增长。实际上,人们想出了一些相当有趣的事情,以便您可以增加相同的数组。
慢性的

如果无法删除它,是否可以再添加几个驱动器,并从sdg和两个新驱动器中划出另一个条带?
慢性的

将驱动器添加到池后,就无法将其删除。
提问和学习

我不确定,但是我认为您不能再添加几个驱动器,并且可以从sdg和两个新驱动器中创建另一个条带。我认为,将SDG添加到池中时,必须将其指定为带有两个额外磁盘的带区卷。没有zfs convert功能。
沃里克

Answers:


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.