Hoje em dia meus fontes estão no SourceForge e meus documentos no Google Docs, então não me preocupo muito com backups. Um belo dia ao ligar meu notebook recebi a mensagem de "Disk Error", logo de cara. Não fiquei muito preocupado, mas minha esposa me lembrou que algumas (centenas) das nossas fotos estavam neste disco.
O notebook nem conseguia inicializar, e eu já estava esperando por uma perda total. Mas eu sou um cara (muito) teimoso, então resolvi pesquisar sobre recuperação de discos danificados.
Ao ligar o disco em outro micro, ainda podia navegar na árvore de diretórios, porém os error de I/O gerados travavam o Nautilus e até o Kernel!
Então achei o software
dd_rescue, que tenta criar um arquivo de imagem a partir de um disco. Este software copia setor por setor do disco. Em caso de erro de leitura ele preenche o espaço com zeros e segue em frente. No final você tem uma imagem do seu disco danificado. A vantagem é que a imagem não trava o Nautilus e o Kernel como o disco real faz.
O problema é que o processo é muito lento. Quando o ddrescue lê um setor danificado, leva de muitos segundos até mais de um minuto para passar para o seguinte. Ao rodar o sistema a previsão de tempo para o disco todo seria de semanas.
Encontrei o software
myrescue, uma opção ao ddrescue, porém com um algoritmo mais inteligente que pula áreas danificadas e permite voltar nelas mais tarde.
Graças a este algoritmo mais inteligente, o myrescue levou apenas 10 DIAS para processar todo o disco!!!
Para rodar este software você precisará de um outro disco que tenha espaço suficiente para o arquivo de imagem, que será aproximadamente do tamanho do espaço ocupado no disco danificado.
Observe que o procedimento de montar imagem independe do sistema de arquivos do disco. Ou seja, você poderia utilizar esta técnica para recuperar discos EXT3, EXT4, ReiserFS, NTFS, ou de qualquer outro tipo.