Outra ferramenta "sem preço" para recuperação de partições é o Testdisk. Embora a função seja a mesma, ele utiliza um algoritmo bastante diferente para detectar partições, o que faz com que ele funcione em algumas situações em que o Gpart não detecta as partições corretamente e vice-versa. Por isso vale a pena ter ambos na caixa de ferramentas. Lembre-se que ambos são capazes de recuperar partições apenas enquanto as informações não são subscritas. Se você acabou de apagar a sua partição de trabalho, é bem provável que consiga recuperá-la, mas se o HD já tiver sido reparticionado e formatado depois do acidente, as coisas ficam muito mais complicadas. Sempre que um acidente acontecer, pare tudo e volte a usar o HD só depois de recuperar os dados.

O Testdisk permite recuperar desde partições isoladas (incluindo as extendidas), até toda a tabela de partição, caso o HD tenha sido zerado. Ele suporta todos os principais sistemas de arquivos, incluindo FAT16, FAT32, NTFS, EXT2, EXT3, ReiserFS, XFS, LVM e Linux Raid.

A página oficial é a Para fazer o Download é necessário se Registrar GRÁTIS! Clique aqui onde, além da versão Linux, você encontra versões para Windows, DOS e até para o Solaris.

Embora não seja exatamente um utilitário famoso, o Testdisk é incluído em muitas distribuições. Nos derivados do Debian, você pode instalá-lo via apt-get:

# apt-get install testdisk

Para instalar a versão em código fonte, além dos compiladores básicos (veja mais detalhes no capítulo 3), é necessário ter instalado o pacote "ncurses-dev" ou "libncurses-dev". A instalação propriamente dita é feita usando a receita tradicional: descompactar o arquivo, acessar a pasta criada e rodar os comandos "./configure", "make" e "make install".

Vamos a um exemplo prático de como recuperar duas partições deletadas "acidentalmente". Onde o cfdisk está mostrando "Free Space" existem na verdade as partições "/dev/hda2" e "/dev/hda3", que removi previamente:

[IMG]http://www.*************.com.br/forum/images/statusicon/wol_error.gif[/IMG]Esta imagem foi redimensionada. Clique na barra para ver esta imagem maior. O tamanho da imagem original é 604x331.
Comece chamando o Testdisk como root:

# testdisk

Na tele inicial, selecione o HD que será analisado, acesse a opção "Analyse" e em seguida "Proceed", para iniciar a varredura do disco.

O Testdisk verifica a tabela de partições atual e em seguida pesquisa em todos os setores onde podem existir informações sobre outras partições que não constem na tabela principal.

Veja que, apenas com o teste rápido, ele já conseguiu localizar as duas partições que haviam sido deletadas:

[IMG]http://www.*************.com.br/forum/images/statusicon/wol_error.gif[/IMG]Esta imagem foi redimensionada. Clique na barra para ver esta imagem maior. O tamanho da imagem original é 604x357.
Pressionando a tecla "P" você pode ver os dados dentro da partição, para ter certeza que os arquivos estão lá (a versão disponível no apt-get não consegue mostrar arquivos dentro de partições ReiserFS, mas a recuperação funciona normalmente).

Nos raros casos onde ele localize a partição, mas identifique incorretamente o sistema de arquivos, use a opção "T" para indicar o correto.

Depois de checar se o particionamento detectado está correto, pressione "Enter" mais uma vez e você chega à tela final, onde você pode salvar as alterações, usando a opção "Write". Reinicie o micro e monte a partição para checar os dados.

Caso a lista não exiba a partição que você está procurando, use a opção "Search" no lugar do Write. Isto ativa o teste mais longo, onde ele vasculha todos os setores do HD em busca de partições deletadas. Este segundo teste demora alguns minutos e, num HD com bastante uso, pode retornar uma longa lista de partições que foram criadas e deletadas durante a vida útil do HD. Neste caso, preste atenção para recuperar a partição correta.

[IMG]http://www.*************.com.br/forum/images/statusicon/wol_error.gif[/IMG]Esta imagem foi redimensionada. Clique na barra para ver esta imagem maior. O tamanho da imagem original é 604x357.
Todas as partições listadas aqui parecem com o atributo "D", que significa que a partição foi deletada. Para recuperar uma partição, selecione-a usando as setas para cima/baixo e use a seta para a direita para mudar o atributo para "*" (se ele for uma partição primária e bootável, como o drive C: no Windows), "P" se ela for uma partição primária ou "L" se ela for uma partição lógica. Lembre-se de que. no Linux, as partições de 1 a 4 são primárias e de 5 em diante são extendidas.

É possível também adicionar uma partição manualmente, caso você saiba os setores de início e final, mas isso raramente é necessário.

[IMG]http://www.*************.com.br/forum/images/statusicon/wol_error.gif[/IMG]Esta imagem foi redimensionada. Clique na barra para ver esta imagem maior. O tamanho da imagem original é 604x357.

Pressione "Enter" mais uma vez e ele mostra uma tela de confirmação, com a tabela de particionamento alterada que será salva no disco. Use o "Write" para salvar ou volte à tela inicial para começa

Fonte: GDH