我的一个 zpool 经历了两次连续的驱动器故障。当我重新同步第一个驱动器时,第二个驱动器发生故障,我在快照中收到两个错误。重新同步完成后,我使用“zpool replace”重新同步第二个故障驱动器。
池已安装,除两个文件外,所有数据均安全且可用:
pool: gggpool
state: DEGRADED
status: One or more devices has experienced an error resulting in data corruption.
Applications may be affected.
scan: resilvered 2,35T in 19h29m with 5 errors on Sat Sep 21 03:08:24 2013
config:
NAME STATE READ WRITE CKSUM
gggpool DEGRADED 0 0 5
raidz1-0 DEGRADED 0 0 10
scsi-SATA_ST3000DM001-9YN_Z1F0NJKS ONLINE 0 0 0
scsi-SATA_ST3000DM001-9YN_Z1F0RPKE ONLINE 0 0 0
scsi-SATA_ST3000DM001-9YN_Z1F0RPZG ONLINE 0 0 0
scsi-SATA_ST3000DM001-9YN_Z1F0RQJ2 ONLINE 0 0 0
scsi-SATA_ST3000DM001-9YN_Z1F0RQSV ONLINE 0 0 0
scsi-SATA_ST3000DM001-9YN_Z1F0T6VN ONLINE 0 0 0
spare-6 DEGRADED 0 0 0
scsi-SATA_WDC_WD30EZRX-00_WD-WMC1T4095404 UNAVAIL 0 0 0
scsi-SATA_ST3000DM001-9YN_Z1F118BA ONLINE 0 0 0
replacing-7 UNAVAIL 0 0 0
scsi-SATA_ST3000DM001-1CH_Z1F2Z9VC UNAVAIL 0 0 0
scsi-SATA_ST3000DM001-1CH_Z1F2Z8SM ONLINE 0 0 0
spares
scsi-SATA_ST3000DM001-9YN_Z1F118BA INUSE currently in use
其余的错误可能指向错误文件的位置 - 我销毁了相关快照,但这些错误指示仍然存在:
errors: Permanent errors have been detected in the following files:
<0x218>:<0x7308>
<0x3a0>:<0x295a6b>
我并不担心这些错误。我试图分离两个发生故障的驱动器(它们都已被替换),但 zpool 没有这样做:
root@ggg:~# zpool detach gggpool scsi-SATA_ST3000DM001-1CH_Z1F2Z9VC
cannot detach scsi-SATA_ST3000DM001-1CH_Z1F2Z9VC: no valid replicas
root@ggg:~# zpool detach gggpool scsi-SATA_WDC_WD30EZRX-00_WD-WMC1T4095404
cannot detach scsi-SATA_WDC_WD30EZRX-00_WD-WMC1T4095404: no valid replicas
这两个驱动器已从阵列中物理移除 - 送去保修更换 - 但它们仍存在于 zpool 配置中。我该如何摆脱它们?
从池中读取数据时,我可以看到“replacing-7”vdev 处于非活动状态:
capacity operations bandwidth
pool alloc free read write read write
----------------------------------------------- ----- ----- ----- ----- ----- -----
gggpool 19,8T 1,96T 323 0 36,8M 0
raidz1 19,8T 1,96T 323 0 36,8M 0
scsi-SATA_ST3000DM001-9YN_Z1F0NJKS - - 177 0 5,42M 0
scsi-SATA_ST3000DM001-9YN_Z1F0RPKE - - 184 0 5,26M 0
scsi-SATA_ST3000DM001-9YN_Z1F0RPZG - - 183 0 5,55M 0
scsi-SATA_ST3000DM001-9YN_Z1F0RQJ2 - - 183 0 5,25M 0
scsi-SATA_ST3000DM001-9YN_Z1F0RQSV - - 180 0 5,39M 0
scsi-SATA_ST3000DM001-9YN_Z1F0T6VN - - 181 0 5,21M 0
spare - - 298 0 5,47M 0
scsi-SATA_WDC_WD30EZRX-00_WD-WMC1T4095404 - - 0 0 0 0
scsi-SATA_ST3000DM001-9YN_Z1F118BA - - 230 0 5,49M 0
replacing - - 0 0 0 0
scsi-SATA_ST3000DM001-1CH_Z1F2Z9VC - - 0 0 0 0
scsi-SATA_ST3000DM001-1CH_Z1F2Z8SM - - 0 0 0 0
----------------------------------------------- ----- ----- ----- ----- ----- -----
这令人担忧,因为如果这个 VDEV 不工作,池就没有冗余 - 然而我无法移除或分离它的两个驱动器中的任何一个。我正在制作一个完整备份 - 只剩一天了。但是,销毁这个池并重建它会带来很多麻烦,因为许多文件系统以及共享的 smb 和 afs 必须重新设置。
有什么想法我可以强制这个失败的 replacement-7 vdev 再次工作吗?
答案1
解决了
脚步:
- 销毁所有包含错误的快照
然后发出这个:
zpool online gggpool [drive in 'spare' or 'rebuilding' that says online but is not really online]
- 这将在所有需要重新镀银的 vdev 上启动重新镀银过程。
等待重新同步完成;然后 Vdevs 将全部显示“在线”而不是“降级”。
最后,分离难以移除的磁盘:
zpool detach gggpool [unavailable drive]
所有泳池都很健康。