Ir ao conteúdo
  • Cadastre-se

Dicas para tentar recuperar arquivos perdidos - Poste aqui uma solução(funcional)


Otto

Posts recomendados

  • Membro VIP

Existem algumas formas para recuperar arquivos apagados ou discos que a MBR. Aos que sabem, postem suas maneiras de como recuperar dados perdidos.

Minha dica:

http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html

Consegui recuperar os dados do meu colega usando esse tutorial ( faz tempo ). O maluco apagou acidentalmente dando um rm /$VAR . Como podem perceber, no Shell Script, se a $VAR tá vazia, pouco importa para o Bash....:naonao:

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...
  • Membro VIP

Recuperando a Tabela de Partição

A primeira trilha do HD é constituída da MBR + a tabela de partição. São 512 Bytes, cujo os primeiros 446 bytes é a MBR e os outros 66 bytes é a famosa tabela de partição.

A tabela de partição possui toda a informação dos dados do disco como onde está cada partição no HD. Sem ela, o disco será reconhecido como vazio. Por isso, é sempre importante realizar um backup desses primeiros bytes do HD. E no mundo linux, isso é muito fácil.

Backup da Trilha MBR

# dd if=/dev/hda of=backup.mbr bs=512 count=1

Onde:

if - fluxo de entrada (origem);

of - fluxo de saída (destino), no caso seria criado um arquivo chamado "backup.mbr" no seu diretório atual, caso se deseje podemos alterar o nome do arquivo e o local onde ele será armazenado, eu recomendo o disquete, pois ele pode ser lido mais facilmente em qualquer sistema;

bs=512 - é o tamanho do bloco a ser copiado, no caso 512 bytes;

count=1 - é a quantidade de blocos que serão copiados, no caso, será copiado um bloco de 512 bytes.

Perceba que ele fará um backup do atual estados das partições do seu HD e do boot. Logo, se fizeres alguma inserção de uma nova partição será necessário atualizar o backup.mbr.

Logo:

# dd if=/dev/hda of=mbr.backup bs=446 count=1

Isso fará a cópia do boot.

Agora, caso queira copia só a tabela de partição:

#dd if=/dev/hda of=tabela.mbr bs=66 skip=446 count=1

Com isso, para restaurar:

#dd if=backup.mbr of=/dev/hda

Usando o Gpart

O gpart é uma das ferramentas do Linux para recuperação de tabelas de particionamento perdida ou danificada.

Efetue o download do programa e siga os passos:

# chmod +x gpart.linux

( Permissão de execução )

# ./gpart.linux /dev/hda

( o HDA é só um exemplo do disco a ser analisado )

O teste demora um pouco, pois ele precisará ler o HD inteiro para determinar onde começa e termina cada partição. No final, ele exibe um relatório com o que encontrou:

Primary partition(1)

type: 007(0x07)(OS/2 HPFS, NTFS, QNX or Advanced UNIX)

size: 3145mb #s(6442000) s(63-6442062)

chs: (0/1/1)-(1023/15/63)d (0/1/1)-(6390/14/61)r

Primary partition(2)

type: 131(0x83)(Linux ext2 filesystem)

size: 478mb #s(979964) s(16739730-17719693)

chs: (1023/15/63)-(1023/15/63)d (16606/14/1)-(17579/0/62)r

Primary partition(3)

type: 130(0x82)(Linux swap or Solaris/x86)

size: 478mb #s(979896) s(17719758-18699653)

chs: (1023/15/63)-(1023/15/63)d (17579/2/1)-(18551/3/57)r

Se as informações estiverem corretas, você pode salvar a tabela no HD usando o parâmetro "-W":

# gpart -W /dev/hda /dev/hda

É necessário indicar duas vezes o HDA, pois o primeiro é a análise e segundo parâmetro é onde será salvo. Ou seja, caso tenhas um HD Espelho ( ou seja, nos casos de RAID ), você pode recuperá-lo baseando em seu espelho.

O Gpart possui um problema com partições estendidas, nem sempre consegue recuperá-las. No máximo consegue efetuar a identificação ( como no exemplo acima ).

Testdisk

Usando um algoritmo diferente para detectar as partições perdidas, em alguns casos, ele consegue recuperar partições que o gparted não consegue. Nunca o utilizei, mas pesquisando pela internet há vários exemplos de sucesso com ele.

Este programa não é famoso, mas é pacote básico em algumas distros, como os derivados do Debian ( pode-se instalá-lo via apt-get ). Além disso, também possui uma versão windows ( :eek: ) , DOS e solaris.

Caso não use Debian, entre no site oficial:http://www.cgsecurity.org/wiki/TestDisk

Esse programa necessita de um pacote chamado "ncurses-dev" ou "libncurses-dev" para compilá-lo ( no caso de você ter baixado o código fonte ). Para instalá-lo, é necessário executar um "./configure" , um "make" e "make install". Procedimentos normais para quem compila programas em sua distro...

Executándo o programa:

# testdisk

Ao abrir o programa, selecione os disco problemático e inicie o "Analyse" e em seguida em "Proceed", assim, ele irá iniciar a varredura.

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.

Você pode acompanhar o processo pressionando a letra 'P'.

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.

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.

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çar novamente em caso de erros.

Tenha em mente que o tamanha da partição é reportado de acordo com o número de setores de 512 bytes. Uma partição de 5 GB tem pouco mais de 10 milhões de setores.

O ideal é que você faça todo o processo usando um live-CD. O Kurumin vem com o Testdisk pré-instalado a partir da versão 6.0 e ele pode ser encontrado também nas versões recentes do Knoppix, PLD e Ultimate Boot CD.

Depois de recuperar qualquer partição, é importante checá-la usando o utilitário apropriado, para que qualquer problema dentro da estrutura do sistema de arquivos seja corrigido.

Em breve mais....

Fonte: GuiadoHardware.net

Link para o comentário
Compartilhar em outros sites

  • 7 meses depois...

Eis também a página de recuperação de dados da comunidade do Ubuntu (em inglês):

https://help.ubuntu.com/community/DataRecovery

Inclusive trata do programa GNU ddrescue (gddrescue) (manual) que procura recuperar dados de um sistema de arquivos corrompido (necessário uma unidade de armazenamento pelo menos do mesmo tamanho da partição a ser recuperada para que os arquivos possam ser copiados).

Link para o comentário
Compartilhar em outros sites

  • mês depois...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...