我在 Armbian (Buster) 系统上有一个包含 5 个磁盘的 RAIDZ-1 池。
由于涉及错误串行连接的奇怪故障,在全新安装中导入池之前,armbian-config
其中一个磁盘 ( ) 被重新分区。sda
导入池后,ZFS 正确地注意到出现了问题:
$ sudo zpool status
pool: pool01
state: ONLINE
status: One or more devices has experienced an unrecoverable error. An
attempt was made to correct the error. Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
using 'zpool clear' or replace the device with 'zpool replace'.
...
config:
NAME STATE READ WRITE CKSUM
pool01 ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
sda ONLINE 0 0 1
sdb ONLINE 0 0 0
sdc ONLINE 0 0 0
sdd ONLINE 0 0 0
sde ONLINE 0 0 0
errors: No known data errors
但是,我对 ZFS 有点陌生,不确定解决这种特殊情况的最佳方法。
我的第一个想法(来自action
消息)是“替换”设备,以便 ZFS 简单地重新分区磁盘并从头开始重新同步数据。但是,我似乎无法用设备本身替换设备:
$ sudo zpool replace pool01 sda
/dev/sda is in use and contains a unknown filesystem.
zpool scrub
这里a就够了吗?
提前致谢!
答案1
zpool scrub pool01
应该足以检查校验和并将它们恢复到池中的正确块中