8 Maneiras Simples de Deletar Arquivos de Forma Segura no Linux

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
- Ignorar a Lixeira
- Usando shred
- Usando dd em Arquivos Únicos
- Usando wipe
- Usando Secure Delete
- 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.

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.

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.

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.pngudiz ao shred para remover o arquivo antes de sobrescrevê-lo.vexibe informações detalhadas.zpreenche o espaço que foi ocupado pelos dados com zeros para reduzir ainda mais qualquer chance de recuperação.-n 4se 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.

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}'
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
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
Agora você pode deletar seu arquivo usando o comando rm regular:
rm /path/to/your/filePró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
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.pngIsso 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.

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.pngPró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
Depois, você pode deletar qualquer arquivo com:
srm Pictures/deleteme.png
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.pngPró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
-idiz ao Perl para processar o arquivo que você forneceu no comando. - A opção
-pediz 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 o0substituirá cada byte.

Uma vez feito, você pode remover seu arquivo modificado usando rm:
rm /path/to/your/filePró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.

Instale-o em sua distribuição compatível com Ubuntu através de seu centro de software ou usando:
sudo apt install bleachbitClique em “Menu -> Preferências” e habilite a opção “Sobrescrever conteúdos de arquivos para evitar recuperação” para segurança aprimorada.

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 vez feito, você precisa dizer ao seu sistema para gravar seu arquivo de “espaço livre” no disco:
syncPor fim, remova seu arquivo de “espaço livre” usando rm:
rm /home/$USER/wipefree
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.