8 Maneiras Simples de Deletar Arquivos de Forma Segura no Linux

Uma mulher segurando a cabeça enquanto olha para a tela de um laptop.

Vimos como apagar completamente o conteúdo do seu disco rígido, mas o que acontece se tudo o que você deseja é deletar permanentemente um, dois ou uma dúzia de arquivos? Este guia mostra algumas das soluções mais populares para a exclusão completa de arquivos no Linux.

Índice

    1. Ignorar a Lixeira
    1. Usando shred
    1. Usando dd em Arquivos Únicos
    1. Usando wipe
    1. Usando Secure Delete
    1. A maneira GUI: Usando Bleachbit
  • Perguntas Frequentes

Nota: A maioria dos discos rígidos de estado sólido no mercado hoje suporta TRIM para gerenciar seu espaço livre, um recurso em seu firmware que realoca seu conteúdo. Combinado com os sistemas de arquivos com journaling no Linux, como Ext3/4 e Reiser FS, a exclusão além da recuperação de arquivos individuais não pode ser garantida. A única solução nesses casos é, infelizmente, um apagamento completo de todos os conteúdos em um SSD.

1. Ignorar a Lixeira

Quando você deleta um arquivo, ele é movido para a Lixeira (também conhecida como Lixeira). Se desejar, você pode ignorar a pasta Lixeira. Dessa forma, seus arquivos deletados não permanecerão na lixeira e serão marcados como totalmente removidos. Embora ainda seja recuperável, é um passo à frente de tê-los acessíveis (na Lixeira).

Dica: se você ainda preferir enviar seus arquivos para a Lixeira, você pode configurar o sistema para esvaziar automaticamente sua Lixeira regularmente.

Uma janela do Dolphin mostrando o conteúdo de um diretório home.

Para deletar arquivos em uma distribuição Linux como Kubuntu com KDE, execute seu gerenciador de arquivos padrão, Dolphin. Clique em “Menu -> Configurar -> Configurar Dolphin -> Lixeira” para acessar as preferências relacionadas. Não há uma opção para desativar completamente a Lixeira, mas você pode usar um truque interessante que cobre a maioria das bases: habilitar o Limite de Tamanho e reduzi-lo ao menor valor.

Uma janela mostrando as configurações de cota da Lixeira do Dolphin.

Em nosso disco, isso se traduziu em 10,97 MiB. O Dolphin irá apagar o conteúdo da Lixeira quando exceder esse valor, e isso provavelmente acontecerá a cada duas horas com o uso típico de desktop. Outros gerenciadores de arquivos como Nautilus ou Nemo têm opções para você ignorar completamente a Lixeira.

Uma janela do nemo mostrando as configurações adicionais da Lixeira para o sistema.

Prós

  • Fácil de fazer
  • Oferece um período de carência antes de deletar arquivos permanentemente

Contras

  • Não remove nenhum metadado remanescente no disco
  • Não limpa dados de arquivos

2. Usando shred

Se você está executando alguma variante do Ubuntu, shred provavelmente já faz parte dela. Você pode começar a usá-lo imediatamente para deletar completamente quaisquer arquivos sensíveis no Linux que você deseja enviar ao esquecimento.

Se você quiser deletar permanentemente “image.png”, use:

shred -uvz -n 4 image.png
  • u diz ao shred para remover o arquivo antes de sobrescrevê-lo.
  • v exibe informações detalhadas.
  • z preenche o espaço que foi ocupado pelos dados com zeros para reduzir ainda mais qualquer chance de recuperação.
  • -n 4 se traduz em cinco passagens de exclusão: o shred faz uma passagem por padrão, e com “-n”, você pode especificar quantas passagens adicionais você precisa para segurança extra. O consenso geral é que cinco passagens devem ser mais do que suficientes para a maioria das pessoas.

Uma janela de terminal mostrando um comando de shred de 5 passagens.

Para eliminar múltiplos arquivos ou o conteúdo de uma pasta, use curingas como:

shred -uvz -n 1 Pictures/images_0?.jpg  
shred -uvz -n 4 Pictures/*.*

No primeiro caso, “?” seria um curinga para um único caractere, e o shred deletaria arquivos nomeados “images_01.jpg” e “images_02.jpg”, por exemplo.

No segundo caso, o shred apagaria todos os arquivos no diretório “Pictures”, independentemente de seu nome ou tipo.

Prós

  • Deletará completamente um único arquivo
  • Pode fazer correspondência de glob para cobrir múltiplos arquivos

Contras

  • Algumas das opções são obscuras
  • Pode demorar muito para terminar

Dica: aprenda como os curingas funcionam tentando Expressões Regulares em sua máquina.

3. Usando dd em Arquivos Únicos

O programa Data Definition (dd) é outra utilidade encontrada em quase todas as distribuições Linux hoje. No entanto, ao contrário do shred, uma das maiores vantagens do dd é que ele permite que você ajuste como você deleta seus arquivos no Linux.

Para usar dd, você precisa saber o tamanho exato do seu arquivo em bytes:

ls -l /path/to/your/file | awk '{print $5}'

Uma janela de terminal mostrando o tamanho do arquivo em bytes.

Você pode executar dd sobre seu arquivo existente. Por exemplo, este comando irá preencher seu arquivo com caracteres nulos:

dd status=progress bs=your_file_size count=1 if=/dev/zero of=/path/to/your/file

Uma janela de terminal mostrando o dd em ação.

Além de preencher seu arquivo com caracteres nulos, você também pode forçar o dd a apagar seu arquivo com dados pseudo-aleatórios:

dd status=progress bs=your_file_size count=1 if=/dev/urandom of=/path/to/your/file

Uma janela de terminal mostrando o dd alimentando dados aleatórios.

Agora você pode deletar seu arquivo usando o comando rm regular:

rm /path/to/your/file

Prós

  • Versátil – pode fazer mais do que deletar arquivos
  • Pode ajustar a exclusão de arquivos

Contras

  • A sintaxe é antiquada, mesmo para um programa de linha de comando
  • Requer um bom entendimento de tamanhos de bloco

Bom saber: se você se arrepender de deletar um arquivo específico, aprenda como recuperar arquivos deletados no Linux.

4. Usando wipe

Wipe é outra excelente alternativa. Procure por ele no centro de software da sua distribuição e instale-o a partir de lá ou use:

sudo apt install wipe

Uma janela de terminal mostrando as informações sobre wipe.

Seu uso é quase tão simples quanto o do shred, se não mais. Para deletar arquivos no Linux usando wipe, execute:

wipe Pictures/deleteme.png

Isso pode se tornar irritante, pois, por padrão, o wipe usa muitas passagens demoradas para segurança extra. Além disso, ele solicitará confirmação para a exclusão.

Uma janela de terminal mostrando uma sessão básica do wipe.

Use a opção f para se livrar da confirmação e r para recursar em subdiretórios. c diz ao wipe para chmod se necessário (quando um arquivo ou diretório não tem permissões de gravação definidas), e q permite que você reduza o número de passagens para uma exclusão mais rápida. Ao usar q, note que é minúsculo. Ele pode ser seguido por um “Q” maiúsculo especificando o número de passagens que você exige. Por exemplo, o comando anteriormente simples, com esses ajustes aplicados, mudaria para:

wipe -rfcq -Q5 Pictures/deleteme.png

Prós

  • Fácil de usar, mesmo com pouca experiência em linha de comando
  • Parâmetros padrão sensatos e seguros

Contras

  • Os parâmetros padrão podem ser muito rigorosos para a maioria dos usuários
  • Pode não funcionar bem com journaling ativo

5. Usando Secure Delete

SRM é uma das ferramentas do conjunto Secure Delete que se especializa na remoção segura de dados do seu HDD. É considerado por muitos como a melhor ferramenta para esse trabalho.

Para instalar o conjunto completo Secure Delete no Ubuntu e distribuições compatíveis, use:

sudo apt install secure-delete

Uma janela de terminal mostrando a instalação do secure-delete.

Depois, você pode deletar qualquer arquivo com:

srm Pictures/deleteme.png

Uma janela de terminal mostrando o processo de exclusão segura.

Você provavelmente vai querer usar a opção z que sobrescreve o conteúdo do seu arquivo com zeros para segurança extra e v para obter informações detalhadas sobre o processo. Se lidando com diretórios e subdiretórios, também inclua a opção r para modo recursivo. Se as 38 reescritas forem demais para você, pode diminuir o tempo necessário – assim como a segurança – utilizando a opção l para reduzir o número de passagens para “apenas” duas. Isso transformaria o comando anterior em:

srm -rlvz Pictures/deleteme.png

Prós

  • As opções são simples de entender e intuitivas
  • Deletar um arquivo é altamente seguro e completo

Contras

  • Pode demorar muito para terminar
  • Não funciona bem em sistemas que usam RAID

6. Deletar Arquivos no Linux com Perl

Além de usar ferramentas, você também pode aproveitar linguagens de programação simples, como Perl, para deletar arquivos no Linux. Por exemplo, a seguinte linha de código substituirá o conteúdo do seu arquivo pelo caractere “0:”:

perl -i -pe 's/[^*]/0/g' /path/to/your/file
  • A opção -i diz ao Perl para processar o arquivo que você forneceu no comando.
  • A opção -pe diz ao programa para criar um loop iterativo para o conteúdo do seu arquivo.
  • 's/[^*]/0/g' é um comando de substituição. O operador [^*] corresponde a cada byte dentro do arquivo, e o 0 substituirá cada byte.

Uma janela de terminal mostrando o Perl apagando um arquivo.

Uma vez feito, você pode remover seu arquivo modificado usando rm:

rm /path/to/your/file

Prós

  • Você não precisa aprender uma nova sintaxe se já conhece Perl
  • Usa abstrações familiares como substituição sed

Contras

  • O comando fará apenas uma única passagem em um arquivo
  • Substituir conteúdos por dados arbitrários pode ser inseguro

Bom saber: você pode entender mais sobre substituições e fluxos de arquivos usando sed para tarefas básicas do sistema.

7. A maneira GUI: Usando Bleachbit

Se você tem aversão à linha de comando, Bleachbit é uma das melhores soluções para apagar seus dados de forma segura. (Bleachbit é mais conhecido por sua capacidade de limpar seu sistema Linux.) Por padrão, a ferramenta se especializa em descobrir e descartar “arquivos redundantes” que continuam ocupando espaço muito depois de você precisar deles. Mas também incorpora a habilidade geralmente esquecida de “shred” manualmente qualquer arquivo além da recuperação.

Uma janela Discover para Bleachbit.

Instale-o em sua distribuição compatível com Ubuntu através de seu centro de software ou usando:

sudo apt install bleachbit

Clique em “Menu -> Preferências” e habilite a opção “Sobrescrever conteúdos de arquivos para evitar recuperação” para segurança aprimorada.

Uma janela do Bleachbit mostrando a exclusão segura.

Volte para sua interface principal, clique em “Menu -> Shred Files” e, na solicitação que aparece, escolha os arquivos que você deseja enviar para o nada. Clique em “Deletar” e assegure ao Bleachbit que você tem certeza do que está tentando fazer.

Você deve sempre ter em mente que o uso de sistemas de arquivos com journaling e o fato de não sabermos como o firmware de cada HDD “gerencia” seu conteúdo significa que a melhor solução é apagar completamente o HDD – ou ainda melhor, destruir fisicamente o dispositivo.

Prós

  • Fácil de usar
  • Você pode configurá-lo para ser seguro por padrão

Contras

  • Não pode fazer apagamentos de disco
  • Não apagará espaço livre

8. Apagando Espaço Livre com dd

Embora a exclusão segura torne um arquivo mais difícil de recuperar, ainda é possível reconstruí-lo usando metadados no seu disco. Resolva esse problema apagando todo o espaço livre disponível em sua máquina.

A maneira mais fácil de fazer isso no Linux é usando dd para criar um arquivo que preencherá todo o seu disco rígido:

dd status=progress if=/dev/zero of=/home/$USER/wipefree

Uma janela de terminal mostrando o comando dd para apagar espaço livre.

Uma vez feito, você precisa dizer ao seu sistema para gravar seu arquivo de “espaço livre” no disco:

sync

Por fim, remova seu arquivo de “espaço livre” usando rm:

rm /home/$USER/wipefree

Excluir Arquivos Seguros Linux 18 Deletar Apagar Arquivo Livre

Prós

  • Comando simples que não removerá arquivos
  • Limpa todos os metadados remanescentes

Contras

  • Leva muito tempo para terminar
  • Não deleta arquivos diretamente

Dica: para evitar ver a mensagem “espaço de armazenamento insuficiente”, verifique e gerencie regularmente seu espaço em disco.

Perguntas Frequentes

É possível deletar arquivos remotos de forma segura no Linux?

Embora seja possível deletar arquivos remotos de forma segura, não há garantia de que um sistema Linux remoto não fará backup dos arquivos dentro de seus discos. É melhor assumir que cada disco e sistema remoto não é seguro.

Meus arquivos estão completamente desaparecidos após eu deletá-los de forma segura no Linux?

Ainda é possível que seu sistema mantenha alguns metadados do seu antigo arquivo. Por exemplo, sua partição swap pode conter informações sobre uma exclusão segura em seu sistema.

Mitigue isso reiniciando e criando novos arquivos em seu disco.

Mais passagens são melhores ao deletar arquivos?

Não necessariamente. Na maioria dos casos, cinco passagens devem impedir que qualquer ferramenta de recuperação de dados recrie seu arquivo. É possível recuperar um arquivo além de cinco passagens, mas requer ferramentas e programas altamente especializados para funcionar.

Crédito da imagem: Unsplash. Todas as alterações e capturas de tela por Ramces Red.