when data from a corrupt block is read, the drive idles for a few seconds, unmounts, and then remounts
Eu tive o mesmo problema com uma unidade que "desapareceria" e depois reapareceria mais tarde. Na verdade, não estava montando, mas ddrescue
estava parando quando o dispositivo estava desaparecendo. Eu estava usando no Linux, mas a situação é muito parecida.
Eu sugiro que você use um pouco de programação shell simples e o fato de que a unidade realmente aparece novamente depois de um tempo. Em outras palavras, faça:
while [ 1 ]; do
ddrescue -v /dev/disk4 image.img logfile
sleep 3
done
Isso funciona da seguinte maneira:
-
ddrescue
é iniciado - se parar de executar, o shell aguardará 3 segundos e, em seguida, o iniciará novamente
-
ddrescue
é capaz de continuar porque você está fazendo bom uso de seus recursos de registro
Após várias tentativas (acho que o padrão é 3, mas posso estar errado), ddrescue
marcará setores como definitivamente ruins e continuará lendo outras partes da unidade. Depois de algumas horas, você verá que ddrescue
será feito e poderá matar o loop com Ctrl + C .