Uma substituição de disco no ZFS deu errado, e agora o disco substituto, mesmo que não esteja mais presente fisicamente, está "preso" no pool, bloqueando tentativas de substituição adicionais. Como removê-lo?
Em um pool raidz3 com 11 discos no OmniOS r151010, um dos discos ficou ruim. Peguei o disco do problema offline, substituí-lo por um novo disco e obtive o novo disco reconfigurado. Ele começou a resilver e, em seguida, o disco de substituição teve erros. Dmesg mostrou "SYNCHRONIZE CACHE comando falhou". Eu me perguntei se poderia ser um cabo solto, então desligue a máquina, recoloque o disco e os cabos e reinicie-o. Começou a resilvering, e depois de um tempo teve o mesmo problema. Neste ponto, o status do zpool para o disco do problema mostra
replacing-0 UNAVAIL 0 0 0 insufficient replicas
c4t5000C5004DC8693Fd0 OFFLINE 0 0 0
c4t50014EE658315C1Dd0 FAULTED 0 0 0 too many errors
Eu decidi tentar outro disco e ver se isso fazia alguma diferença. Eu suspeitava que não, mas era fácil de tentar. Eu hot-swapped o disco e, em seguida, cfgadm -al mostrou
c8 scsi-sas connected configured unknown
c8::w50014ee6ad8f0df2,0 disk-path connected configured unknown
c8::w50014ee658315c1d,0 disk-path connected unconfigured unknown
O novo disco está lá, mas o antigo não foi embora. Eu reiniciei a máquina para limpar o estado antigo, depois o cfgadm -al mostrou apenas
c8 scsi-sas connected configured unknown
c8::w50014ee6ad8f0df2,0 disk-path connected configured unknown
No entanto, o zpool status ainda mostrava o disco antigo. Tentei limpar a falha e agora o disco original e o primeiro substituto estão off-line
replacing-0 UNAVAIL 0 0 0 insufficient replicas
c4t5000C5004DC8693Fd0 OFFLINE 0 0 0
c4t50014EE658315C1Dd0 OFFLINE 0 0 0
Neste ponto, o que devo fazer para obter o novo disco de substituição? Fazendo zpool substituir no disco original ou o primeiro substituto apenas produz o erro (ligeiramente reduzido aqui) "não pode abrir 'c4t500 ....' nenhum tal dispositivo em / dev / dsk."
Fazer uma remoção de zpool em c4t50014EE658315C1Dd0 produz a mensagem de erro "não é possível remover c4t50014EE658315C1Dd0: somente peças de reposição inativas, cache, nível superior ou dispositivos de log podem ser removidos"