ZFSで初HDD交換

ファイルサーバーをopenmediavaultでzfsプラグインを入れて運用しているんだが、HDD初交換したのでメモ書き

 

$ sudo zpool status backups -v
pool: backups
state: DEGRADED
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Sun Jul 5 23:51:09 2020
53.8G scanned out of 3.73T at 68.7M/s, 15h35m to go
11.7G resilvered, 1.41% done
config:

NAME STATE READ WRITE CKSUM
backups DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
usb-WDC_WD20_EARS-00MVWB0_0000000000003B5A-0:3 ONLINE 0 0 0
usb-WDC_WD20_EARS-00MVWB0_0000000000003B5A-0:2 ONLINE 0 0 0
usb-WDC_WD20_EARS-00MVWB0_0000000000003B5A-0:1 ONLINE 0 0 0
usb-WDC_WD20_EZRX-00DC0B0_0000000000003B5A-0:0 OFFLINE 0 0 0

一応まだ壊れてはいなかったのだが、smartで異常値が出ており、警告が出ている状態だった。2TBのスペアがあったのでそれに入れ替える。(一旦停止して表示を撮ったのでresilvered中のログも出ている)

 

上のstatus表示は

$ sudo zpool offline usb-WDC_WD20_EZRX-00DC0B0_0000000000003B5A-0:0

で問題のHDDを取り外して新しいHDDを差し込んだ。

 

$ sudo zpool replace backups usb-WDC_WD20_EZRX-00DC0B0_0000000000003B5A-0:0 usb-WDC_WD20_EARX-00PASB0_0000000000003B5A-0:0
 
置き換える前のデバイスIDと置き換える先のデバイスIDを指定してreplaceする
 
$ sudo zpool status backups -v
pool: backups
state: DEGRADED
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Mon Jul 6 00:05:09 2020
20.5G scanned out of 3.73T at 63.9M/s, 16h55m to go
5.11G resilvered, 0.54% done
config:

NAME STATE READ WRITE CKSUM
backups DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
usb-WDC_WD20_EARS-00MVWB0_0000000000003B5A-0:3 ONLINE 0 0 0
usb-WDC_WD20_EARS-00MVWB0_0000000000003B5A-0:2 ONLINE 0 0 0
usb-WDC_WD20_EARS-00MVWB0_0000000000003B5A-0:1 ONLINE 0 0 0
replacing-3 DEGRADED 0 0 0
usb-WDC_WD20_EZRX-00DC0B0_0000000000003B5A-0:0 OFFLINE 0 0 0
usb-WDC_WD20_EARX-00PASB0_0000000000003B5A-0:0 ONLINE 0 0 0 (resilvering)

errors: No known data errors
 
resilveringされているので明日中には完了するだろうか。
 
 
ちなみに最初は /dev/sdk を指定したんだが、by-idで揃えておいたほうがよいなと思い、一度中断して再度実施した(もちろん最初からやり直しになった)
中断は下記のコマンドでできた
$ sudo zpool detach backups sdk