更换 ZFS 磁盘时出错

更换 ZFS 磁盘时出错

我正在尝试替换 TrueNAS ZFS 池中的磁盘,但收到错误cannot replace 5885333735856859460 with ada6: already in replacing/spare config; wait for completion or use 'zpool detach'

zpool status节目

    NAME                                            STATE     READ WRITE CKSUM
    Data                                            DEGRADED     0     0     0
      raidz1-0                                      ONLINE       0     0     0
        gptid/d135c3aa-526b-11e5-9e77-fcaa14286713  ONLINE       0     0     0  block size: 512B configured, 4096B native
        gptid/03f4d51c-3c63-11e5-8cea-fcaa14286713  ONLINE       0     0     0  block size: 512B configured, 4096B native
        gptid/085d91b7-9521-11e5-b5cf-fcaa14286713  ONLINE       0     0     0  block size: 512B configured, 4096B native
      raidz1-1                                      DEGRADED     0     0     0
        gptid/c6e9543f-f78d-11e2-abaa-003048d79b60  ONLINE       0     0     0
        5885333735856859460                         FAULTED      0     0     0  was /dev/gptid/c77a9a39-f78d-11e2-abaa-003048d79b60
        gptid/da5ff311-eef1-11ea-a29e-fcaa14286713  ONLINE       0     0     0  block size: 512B configured, 4096B native

errors: No known data errors

我之前曾尝试通过 Web 界面进行替换,但在机器锁定一天左右后,通过关闭机器电源中止了替换,物理上移除了新磁盘并将其替换为原始磁盘,然后将其重新同步到无错误状态。现在我再次用新磁盘物理替换了旧磁盘,无论我尝试通过 Web 界面还是使用命令行替换磁盘,都会出现上述错误。我该如何解决?

答案1

我设法使用命令解决了这个问题

zpool replace -f -o ashift=9  Data 5885333735856859460 gptid/65a0a675-c080-11eb-b350-fcaa14286713

而不是

zpool replace Data 5885333735856859460 gptid/65a0a675-c080-11eb-b350-fcaa14286713

(其中65a0a675-c080-11eb-b350-fcaa14286713是驱动器上数据分区的原始 ID)。

最重要的线索是输出中的消息,zpool status表明设备配置了非本机块大小(我不记得在任何地方配置了块大小)。该ashift参数在将设备添加到池中时会更改设备的块大小。池现在正在愉快地重新同步。

相关内容