Mais uma baseado em fato real.
Como tenho um HD de 320Gb com partições para "swap", "ext3-sistema", "ext4-sistema" e "ext3-backup", não estava com problema nenhum até o momento.
Quando então plugado outro HD de teste IDE, fui eu rigorosamente organizar este HD para os devidos fins. Quando até então dei um comando para apagar o diretório da partição que não era de valia para mim, sendo que quando os dois HDs plugados os devices dos HDs mudaram, onde o de 320Gb-SATA ficou como "sdb" e o de 40Gb-IDE ficou como "sda" e como realmente o comando "rm -rf" é DESASTROSO, apagando recursivamente sem perguntar se realmente você quer apagar, quando acabei de pressionar a tecla <ENTER> percebi que era a partição de "backup". Put* merd* o que eu fiz (isto em questão de milésimo de segundo), sem reação só fui fazer ao que veio na mente, desligar o sistema pelo menu, isto demorando alguns segundos até o sistema ser desligado.
Descrição das opções de utilização do comando "rm":
-f, --force ignorar ficheiros inexistentes, nunca perguntar
-i perguntar antes de cada remoção
-I perguntar uma vez antes de remover mais de 3 ficheiros
ou ao remover recursivamente. Menos intrusivo que -i,
protegendo ainda contra a maioria dos erros
--interactive[=QUANDO] perguntar de acordo com QUANDO: never, once (-I)
ou always (-i). Sem QUANDO, perguntar sempre
--one-file-system ao remover uma hierarquia recursivamente, saltar
pastas de um sistema de ficheiros diferente do
do argumento especificado na linha de comandos
--no-preserve-root não tratar "/" de forma especial
--preserve-root não remover "/" (predefinido)
-r, -R, --recursive remover pastas e seus conteúdos recursivamente
-v, --verbose explicar o que está a ser feito
--help exibir esta ajuda e sair
--version mostrar a informação de versão e sair
Por omissão, rm não remove pastas. Use a opção --recursive (-r ou -R) para remover cada pasta listada também, bem como os seus conteúdos.
Para remover um ficheiro cujo nome começa por "-", por exemplo "-foo", utilize um destes comandos:
rm -- -foo
rm ./-foo
Note que se usar rm para remover um ficheiro, normalmente é possível recuperar os conteúdos desse ficheiro. Se quiser maior garantia que os conteúdos sejam realmente irrecuperáveis, considere a utilização de shred.
Uma observação que faço é que tenha cuidado e muita atenção no que está fazendo, pois no meu caso foi um descuido de não ter verificado antes como ficaram os devices dos HDs com o comando "fdisk -l". Para maior informação do comando "fdisk", consulte a documentação do comando com "man fdisk".
Depois de desligado o PC fui eu iniciar novamente para ver o que aconteceu. Poderia ter perdido (apagado) qualquer diretório da partição de "backup", menos o que realmente foi apagado, que foi o diretório "06-Usuários", com toda a documentação como currículos, contra-cheque, planilhas de obra, planilhas financeiras etc.
E agora, quem poderá me ajudar? (Uma referência ao Chapolin colorado, rsrsrs...).
Então fui eu a procura de como poderia restaurar o que tinha sido perdido. Descobri algumas opções de restaurar arquivos apagados do HD. São eles:
TestDisk
Um poderoso software gratuito de recuperação de dados! Foi inicialmente criado para recuperar partições perdidas e/ou tornar discos não inicializáveis em inicializáveis quando estes sintomas são causados por software com falhas, determinados tipos de vírus ou erro humano (tais como acidentalmente deletar a tabela de partições).
http://www.cgsecurity.org/wiki/TestDisk_PT
Foremost
Trata-se de uma ferramenta em modo texto, desenvolvida inicialmente pelas Forças Armadas dos Estados Unidos, que trabalha com recuperação de arquivos a partir de imagens de discos (criadas pelo dd).
http://foremost.sourceforge.net/
Ext3grep
Ferramenta para ajudar a recuperar arquivos excluídos em ext3. Ext3grep é uma ferramenta simples na intenção de auxiliar aqueles que acidentalmente excluiu um arquivo em um sistema de arquivos ext3.
http://code.google.com/p/ext3grep/
Fonte:
Socorro! Diretório deletado... [RESOLVIDO]
Com o "testdisk" e o "foremost" é possível restaurar todos os arquivos, o único problema é que não terão os mesmos nomes, e sim por exemplo: file001.avi, file002.mpeg, file003.odt, file004.mp3 e assim por diante. Como seria muito trabalhoso renomear todos os arquivos depois da restauração, decidi usar o "ext3grep".