Recuperar ficheiros com Ubuntu

44 Comentários

Já vos aconteceu, de certeza, eliminar acidentalmente ou perder ficheiros (um “crash” enquanto trabalhavam) que matariam para reaver!

Felizmente existem soluções para que tal não seja necessário 🙂


A solução que vos apresento hoje para Linux é muito eficaz e poderosa, sendo que consegue “desenterrar” quase tudo o que é possível, em vários sistemas de ficheiros (NTFS, FAT, ext2, ext3, e partições “cruas”), e chama-se “Scalpel” (Bisturi, em Português).

As explicações que vão seguir neste tutorial são feitas com Ubuntu, mas a forma de funcionamento noutras distribuições será semelhante.

Vamos então passar à acção:

Primeiro, vamos instalar o scalpel, para tal podemos ir ao Gestor de Pacotes Synaptic e procurar por “scalpel”, seleccionar e instalar (clicar em “Aplicar”), ou também podem simplesmente na consola escrever:

$ sudo apt-get install scalpel

Sendo uma ferramenta muito poderosa, não é de todo de intuitiva utilização, pelo que tem de ser usada a consola e antes de a utilizarmos temos de definir os tipos de ficheiro que procuramos.

Vamos então editar o ficheiro de configuração, para tal, abrimos a consola e escrevemos:

$ sudo gedit /etc/scalpel/scalpel.conf

Podem ver que no ficheiro é explicado o funcionamento por RegEx (Expressões Regulares), Wildcard, etc.

Imaginemos que eu quero procurar um ficheiro HTML que apaguei sem querer, na linha 162 tenho esse exemplo de ficheiro (assim como muitos outros existem, basta procurarem, ou até podem adicionar, para isso precisam de ler o ficheiro para entender o funcionamento), como tal, basta-me des-comentar essa linha (removendo o # que está no início da mesma).

Depois de salvar o ficheiro, voltam à consola.

Agora, quero procurar os ficheiros HTML que eliminei no meu disco e colocá-los numa pasta de nome “html_recovered”, como tal, sabendo que estaria na partição /dev/sda5 (para verem a vossa, usem o comando $ mount ), escrevo o seguinte comando:

$ sudo scalpel /dev/sda5 -o html_recovered

Após uma horita +/- (dependendo do tamanho da partição, a minha era de sensivelmente 60GB), resultados!

Agora na pasta html_recovered consigo encontrar um ficheiro com um relatório (audit.txt) e pastas consoante os tipos de ficheiro com os vários ficheiros recuperados.

Antes de poderem visualizar a pasta e os conteúdos, terão de obter permissões, para tal, escrevam na consola (substituindo USER pelo vosso username):

$ sudo chown -R USER.USER html_recovered

Poderá demorar um pouco, se tiverem “desenterrado” muitos ficheiros.

Espero que tenha sido útil. Alguma dúvida, comentem.

Podem sugerir artigos e/ou tutoriais sempre que quiserem, ou até escrever e enviar para o Peopleware para serem publicados.

Fonte: Howtoforge

Comentários

44

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  1. Avatar de Nuno Amaral
    Nuno Amaral

    Mais uma boa solução para linux.

    http://www.cidadeviseu.com

  2. Avatar de Bruno Bernardino

    Obviamente podem recuperar ficheiros do Windows usando isto também, caso tenham o Ubuntu instalado 🙂 Para tal, basta escolher a partição apropriada aquando do comando:

    $ sudo scalpel /dev/sda5 -o html_recovered

  3. Avatar de Paulo39
    Paulo39

    Excelente artigo!

  4. Avatar de lfspaulo

    Eu gostava mesmo de saber é o que foi usado como extra para deixar o desktop tal como está nas imagens… Isso sim, dava muito jeito 😉

  5. Avatar de sight
    sight

    muitissimo util!!

  6. Avatar de UKN
    UKN

    Mas …

    O Ubuntu também crasha !? Lá se vai a teoria da estabilidade total.

    (Estava a ser sarcático. Que crashava já eu sabia que testei já essa potencialidade do Ubuntu. Só que os anti-windows passam a vida a espetar palitos à pala disto, e aqui está o troco.)

    De qualquer modo muito bom turorial (e não estou com entrelinhas agora).

  7. Avatar de Paulo39
    Paulo39

    @UKN

    Eu usei windows XP durante alguns anos, mas agora mudei para Ubuntu, há uns 6 meses. A minha (não muita) experiência diz que o sistema não crasha (a mim nunca me crashou), no entanto certas aplicações crasham de facto. No meu caso, desde que uso o Ubuntu já me vi crasharem o leitor de músicas Amarok, devido a um problema de placas de som, e uma outra aplicação pouco conhecida. Em relação ao Amarok, foi um problema de configuração, portanto, o problema não está no software. Em relação à segunda aplicação de que falei, acho que essa sim, devia ter um bug qualquer.
    No entanto, em comparação com o windows, considero o ubuntu bem mais estável. No windows, volta e meia, tinha um erro qualquer no explorer.exe e ele reiniciava. Ou por exemplo, o firefox, que usava no windows e continuo a usar no Ubuntu, ia de vez em quando a baixo no windows e nunca me “caíu” desde que uso Ubuntu.
    Mas, como é óbvio, nenhum sistema é perfeito, e muitas vezes somos nós os principais causadores dos nossos problemas (por desconhecimento ou por insensatez).
    E só para esclarecer a minha posição, eu não sou nada um daqueles “anti-windows” que mencionaste, só acho que uma das principais vantagens do linux ao windows é precisamente a sua estabilidade. Mas tem desvantagens! Considero o windows o sistema preferível para quem se limita a navegar na net e a ir ao messenger, por exemplo.

  8. Avatar de nome
    nome

    lindo como o linux ta sempre a salvar o cu aos windows

  9. Avatar de monu
    monu

    – Mais um excelente tutorial, parabéns !
    – Sou usuário do Linux MINT desde a versão 3 ( está na 6 ) .
    – E foi consultando o Pplware quel conheci esta distro .
    – Tenho sempre a agradecer os excelentes posts e tutoriais aqui disponibilizados, por incansáveis colaboradores.
    – Abraços a todos e longa vida ao Pplware.
    monu

  10. Avatar de Nandozs
    Nandozs

    Boas pessoal. Peço ajuda.
    Estou mesmo com este problema..ja tentei praí uns 3 programas de recuperação e é mato…
    Num disco externo que tenho,(estava dividido com 2 partiçoes C: D: ) cometi um erro de criar um raid (este disco mais outro) e na partição D: tinha montes de informação..
    Como vou eu agora recuperar isto? acham que com esta solução eu consigo?

  11. Avatar de Carlos Sousa
    Carlos Sousa

    Exelente! Adorei o Post, os meus parabens pelo o post ao pplware que desde o inicio que sempre acompanhei este pequeno grande enorme blog. Um grande abraço.

  12. Avatar de José Fonseca
    José Fonseca

    Muito interessante e muito útil! Imaginem que se pode arrancar com o livecd do ubuntu e tentar recuperar os ficheiros para uma pasta remota ou para uma pen usb. Genial!
    Pode-se usar uma pasta remota para guardar os resultados, não pode?

  13. Avatar de Fama Show

    Excelente artigo, parabéns

  14. Avatar de Bruno Bernardino

    @Nandozs

    No teu caso, ao fazer raid penso que re-escreveste em todo o disco, sendo que nesse caso é impossível recuperar informação que lá tinhas antes, mas posso estar errado.

    Penso que consegues perceber pelo que está no tutorial, basta reconheceres as partições do disco no $ mount depois de o montares. Se tiveres algum problema usa o Fórum para colocares a tua dúvida.

    @José Fonseca

    Com o LiveCD não será possível pois é necessário instalar o scalpel, mas a pasta remota, pode sempre.

  15. Avatar de Nandozs
    Nandozs

    @Bruno Bernardino

    Com dois dos programas eu vejo as minhas coisas tal e qual como estavam(nomes, tamanhos de letra ordem etc) á excepção de algumas que nunca apareceram, tentei recuperar, e até deu pra o fazer, o problema é quenem fotos nem musicas nem programas funcionam.mas esta la tudo. A partição ta lá, mas a localização dos ficheiros, essa foi mudada.

  16. Avatar de escrifonife1
    escrifonife1

    To com uma partição, /dev/sdb2, montada em , /media/Dados…
    Tinhas muitos arquivos la… Agora quando entro na partição Dados,
    ela aparece, vazia , sem nenhuma pasta.
    So que se eu digita ,no nautilus , o nome da partição e o nome de alguma pasta que eu sei que tinha la ,ai entra nesta pasta.
    ex: /Dados/Minhas Musicas
    Se entrar somente da pasta “Dados”, ela aparece vazia.
    Mais a pasta “Minhas Musicas”, ta la , invisiveu. Ja apertei ctrl + H , e não acontece nada. As pastas estão invisiveis.
    Sera que consigo recuperar, a visão das pastas com esse programa?
    To usando Ubuntu 8.10
    falow

  17. Avatar de Bruno Bernardino

    @Nandozs

    Não compreendo o problema 😐 Este tutorial não ajudou?

    @escrifonife1

    É possível que recupere ficheiros apagados, mas nenhum software garante que se encontre o que pretendes.

  18. Avatar de luis
    luis

    @bruno bernardino
    mas da para instalares programas a correr em livecd 😉

  19. Avatar de hydrogenated
    hydrogenated

    Lol mas quem é que acha que o linux n crasha? crash e não é pouco eu tenho uma máquina com o debian e meu deus eu práticamente não a uso mas sempre que uso de tempos a tempos la vem um panic…

  20. Avatar de Sergio
    Sergio

    Relacionado com o tema em causa. Alguem conheço alguma ferramenta/software que possibilite excluir os sectores danificados de um disco e so usar os sectores que estejam bons de saude? Preferia abdicar de espaço e ter um disco funcional.
    Obrigado 😉

  21. Avatar de Rick
    Rick

    Parece mt interessante, mas preciso de recuperar ficheior com extensão .cnf, como posso fazer?
    Obrigado

  22. Avatar de Dario Soares
    Dario Soares

    Alo gente,
    eu segui o passo a passo, mas nao consegui chegar lá,
    instalei e corri o programa, mas parece-me que tenho um problema de permissoes na pasta criada para colocar os ficheiros. Abaixo o erro.

    root@ad30001:/home/cmuianga# scalpel /dev/sda8 -o cesar_recovered
    Scalpel version 1.60
    Written by Golden G. Richard III, based on Foremost 0.69.

    Opening target “/dev/sda8”

    Image file pass 1/2.
    /dev/sda8: 100.0% |*************************************| 29.3 GB 00:00 ETAAllocating work queues…
    Work queues allocation complete. Building carve lists…
    Carve lists built. Workload:
    gif with header “\x47\x49\x46\x38\x37\x61” and footer “\x00\x3b” –> 588 files
    gif with header “\x47\x49\x46\x38\x39\x61” and footer “\x00\x3b” –> 11463 files
    jpg with header “\xff\xd8\xff\xe0\x00\x10” and footer “\xff\xd9” –> 15386 files
    png with header “\x50\x4e\x47\x3f” and footer “\xff\xfc\xfd\xfe” –> 6761 files
    bmp with header “\x42\x4d\x3f\x3f\x00\x00\x00” and footer “” –> 4595 files
    tif with header “\x49\x49\x2a\x00” and footer “” –> 3126 files
    tif with header “\x4d\x4d\x00\x2a” and footer “” –> 562 files
    doc with header “\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1\x00\x00” and footer “\xd0\xcf\x11\xe0\xa1\xb1\x1a\xe1\x00\x00” –> 3520 files
    doc with header “\xd0\xcf\x11\xe0\xa1\xb1” and footer “” –> 3583 files
    pdf with header “\x25\x50\x44\x46” and footer “\x25\x45\x4f\x46\x0d” –> 150 files
    pdf with header “\x25\x50\x44\x46” and footer “\x25\x45\x4f\x46\x0a” –> 61 files
    Carving files from image.
    Image file pass 2/2.
    /dev/sda8: 6.4% |** | 1.9 GB 12:19:09 ETAError writing to file: /home/cmuianga/cesar_recovered/tif-5-0/00038873.tif — Operation not permitted
    Scalpel was unable to write output files and will abort.
    This error generally indicates that disk space is exhausted.

    1. Avatar de Bruno Bernardino

      Boas,

      Como explica no final do erro, o teu disco (partição home) está cheio.

      Deverás tentar aumentar a partição home ou então fazer o output para outra partição com mais espaço livre…

      1. Avatar de Timothy
        Timothy

        Como fazer o output para outra partiçao? He intentão “sudo scalpel /dev/sda2 -o /dev/sda5/output” mais não funciona (“An error occured while trying to open /dev/sda5 – Not a directory”). Es possível fazer o output para outra partiçao?

        1. Avatar de Bruno Bernardino

          É possível. No entanto, tens de montar a partição primeiro e depois fazer o output para onde a tens montada.

          1. Avatar de Timothy
            Timothy

            Ya tenho outra partiçao. Es a sda5. Mais não funciona “sudo scalpel /dev/sda2 -o /dev/sda5/output”.

            (Perdona o meu português!)

          2. Avatar de Bruno Bernardino

            Exacto, mas a sda5 não é um directório, não está montada. O que estava a dizer é que tens de montar a partição primeiro, ex:

            $ sudo mkdir /mnt/scalpelbackup
            $ sudo mount /dev/sda5 /mnt/scalpelbackup

            e só depois fazer:

            $ sudo mkir /mnt/scalpelbackup/output
            $ sudo scalpel /dev/sda2 -o /mnt/scalpelbackup/output

  23. Avatar de Raimundo
    Raimundo

    tem com orecuperar arquivos do excel ou uma pasta inteira? Pois no scalpel.conf não só tem doc!

    1. Avatar de Bruno Bernardino

      Basta adicionar o .xls ou .xlsx no conf

  24. Avatar de Danueli
    Danueli

    É possivel utilizar em Ubuntu Server? (sem ambiente grafico obvio)

  25. Avatar de Bruno Bernardino

    @Danueli

    Sim, a única diferença é que tens de usar um editor como o vim ou o nano em vez do gedit, na linha:

    sudo gedit /etc/scalpel/scalpel.conf

    1. Avatar de Danueli
      Danueli

      Ok! Obrigado 🙂

      já agora nao percebi aquilo muito bem. ele é possivel recuperar a pasta X ? é que eu queria recuperar toda essa pasta inclusive a mesma (foi apagada a pasta “www” sem querer) :S

      1. Avatar de Bruno Bernardino

        Não, recuperas todos os ficheiros de uma partição do disco. Envias é os resultados para uma pasta, e depois procuras lá.

        Se queres recuperar mais do que ficheiros html (imagens, xml, php, etc.), tens de alterar o ficheiro de configuração para se adaptar às tuas necessidades.

  26. Avatar de Rodrigo
    Rodrigo

    Boas, sem querer apaguei uma pasta que tinha uns vídeos, queria saber se posso recuperar a pasta inteira, ou se vou ter de descomentar todas as linhas desse programa? é que provavelmente a pasta tinhas outros ficheiros alem de vídeos, então descomento tudo?

    1. Avatar de Bruno Bernardino

      Sim, tanto quanto sei (já não uso o programa há algum tempo, este artigo foi escrito em 2009), terás de explicitar as extensões que procuras.

  27. Avatar de JP
    JP

    Mas como é que eu posso ter acesso ao software?

    1. Avatar de Bruno Bernardino

      Está explicado em cima como o instalar, é essa a tua dúvida?

  28. Avatar de Fernando
    Fernando

    O artigo é muito interessante e a aplicação é exactamente aquilo de que necessito para recuperar dois ficheiros de texto que apaguei inadvertidamente. Porém, quando tento gravar os ficheiros recuperados (de extensão .doc pois, embora tenha sido elaborados no Ubuntu, são para discutir com colegas que não são capazes de se autodeterminar do Windows) com

    sudo scalpel /dev/sdb7 -o doc_recovered

    recebo a seguinte mensagem de erro:

    ERROR: You have attempted to use a non-empty output directory. In order to maintain forensic soundness, this is not allowed.
    Aborting.

    Que terei eu feito mal?

    1. Avatar de Bruno Bernardino

      Se leres o erro com atenção, notas que terás de escolher um directório que esteja vazio.

      1. Avatar de Fernando
        Fernando

        Muito obrigado, pela ajuda, pois já consegui fazer a recuperação e recuperar os ficheiros, mas, agora, não consigo lê-los.
        Isto é, acedo à pasta, vejo os ícones de cada um dos ficheiros, mas não consigo lê-los com o OpenOffice nem com o Gedit, que me diz que é incapaz de detectar a codificação dos caracteres.
        Como faço para poder ver o conteúdo de cada ficheiro?