8 Modi Semplici per Cancellare Sicuramente File in Linux

Una donna che si tiene la testa mentre fissa lo schermo di un laptop.

Abbiamo visto come cancellare completamente i contenuti del tuo disco rigido, ma cosa succede se tutto ciò che vuoi è eliminare permanentemente uno, due o una dozzina di file? Questa guida ti mostra alcune delle soluzioni più popolari per la cancellazione completa dei file in Linux.

Indice dei Contenuti

    1. Ignora il Cestino
    1. Usare shred
    1. Usare dd in File Singoli
    1. Usare wipe
    1. Usare Secure Delete
    1. Il modo GUI: Usare Bleachbit
  • Domande Frequenti

Nota: La maggior parte delle unità a stato solido sul mercato oggi supportano TRIM per gestire il loro spazio libero, una funzione nel loro firmware che rialloca i loro contenuti. Combinato con i file system di journaling in Linux, come Ext3/4 e Reiser FS, la cancellazione oltre il recupero di file singoli non può essere garantita. L’unica soluzione in quei casi è, sfortunatamente, un completo azzeramento di tutti i contenuti in un SSD.

1. Ignora il Cestino

Quando elimini un file, esso viene spostato nel Cestino (noto anche come Recycle Bin). Se lo desideri, puoi ignorare la cartella Cestino. In questo modo, i tuoi file eliminati non rimarranno nel cestino e saranno contrassegnati come completamente scomparsi. Anche se è ancora recuperabile, è un passo avanti rispetto ad averli accessibili (nel Cestino).

Suggerimento: se preferisci ancora inviare i tuoi file al Cestino, puoi comunque far sì che il sistema svuoti automaticamente il tuo Cestino su base regolare.

Una finestra Dolphin che mostra i contenuti di una directory home.

Per eliminare file in una distribuzione Linux come Kubuntu con KDE, esegui il suo gestore file predefinito, Dolphin. Clicca su “Menu -> Configura -> Configura Dolphin -> Cestino” per raggiungere le preferenze correlate. Non c’è un’opzione per disabilitare completamente il Cestino, ma puoi usare un trucco carino che copre la maggior parte dei casi: abilita il Limite di Dimensione e riducilo al valore più piccolo.

Una finestra che mostra le impostazioni della quota del Cestino di Dolphin.

Sul nostro disco, questo si traduce in 10.97 MiB. Dolphin cancellerà i contenuti del Cestino quando supera quel valore, e ciò probabilmente accadrà ogni due ore con un uso desktop tipico. Altri gestori di file come Nautilus o Nemo hanno opzioni per bypassare completamente il Cestino.

Una finestra nemo che mostra le impostazioni aggiuntive del Cestino per il sistema.

Pro

  • Facile da fare
  • Ti dà un periodo di grazia prima di eliminare permanentemente i file

Contro

  • Non rimuove alcun metadato residuo nel disco
  • Non pulisce i dati dai file

2. Usare shred

Se stai eseguendo qualche variante di Ubuntu, shred è probabilmente già parte di essa. Puoi iniziare a usarlo immediatamente per eliminare completamente qualsiasi file sensibile in Linux che desideri inviare all’oblio.

Se desideri eliminare permanentemente “image.png,” usa:

shred -uvz -n 4 image.png
  • u dice a shred di rimuovere il file prima di sovrascriverlo.
  • v visualizza informazioni dettagliate.
  • z riempie lo spazio occupato dai dati con zeri per ridurre ulteriormente qualsiasi possibilità di recupero.
  • -n 4 si traduce in cinque passaggi di cancellazione: shred fa un passaggio per impostazione predefinita, e con “-n,” puoi specificare quanti passaggi aggiuntivi desideri per una maggiore sicurezza. Il consenso generale è che cinque passaggi dovrebbero essere più che sufficienti per la maggior parte delle persone.

Una finestra del terminale che mostra un comando shred a 5 passaggi.

Per eliminare più file o il contenuto di una cartella, usa caratteri jolly come:

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

Nel primo caso, “?” sarebbe un carattere jolly per un singolo carattere, e shred eliminerebbe file chiamati “images_01.jpg” e “images_02.jpg,” per esempio.

Nel secondo caso, shred cancellerebbe tutti i file nella directory “Pictures,” indipendentemente dal loro nome o tipo.

Pro

  • Cancellera’ a fondo un singolo file
  • Può fare corrispondenza glob per coprire più file

Contro

  • Alcuni dei flag delle opzioni sono oscuri
  • Richiederà molto tempo per finire

Suggerimento: impara come funzionano i caratteri jolly provando le Espressioni Regolari sulla tua macchina.

3. Usare dd in File Singoli

Il programma Data Definition (dd) è un’altra utility presente in quasi tutte le distribuzioni Linux oggi. Tuttavia, a differenza di shred, uno dei maggiori vantaggi di dd è che ti consente di affinare come cancelli i tuoi file in Linux.

Per usare dd, devi conoscere la dimensione esatta del tuo file in byte:

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

Una finestra del terminale che mostra la dimensione del file in byte.

Puoi eseguire dd sul tuo file esistente. Ad esempio, questo comando riempirà il tuo file con caratteri nulli:

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

Una finestra del terminale che mostra dd in azione.

Oltre a riempire il tuo file con caratteri nulli, puoi anche costringere dd a cancellare il tuo file con dati pseudo-casuali:

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

Una finestra del terminale che mostra dd che fornisce dati casuali.

Ora puoi eliminare il tuo file usando il comando rm regolare:

rm /path/to/your/file

Pro

  • Versatile – può fare più di eliminare file
  • Può affinare la cancellazione dei file

Contro

  • La sintassi è antiquata, anche per un programma da riga di comando
  • Richiede una buona comprensione delle dimensioni dei blocchi

Buono a sapersi: se ti penti di aver eliminato un file particolare, impara come recuperare file eliminati in Linux.

4. Usare wipe

Wipe è un’altra eccellente alternativa. Cercalo nel centro software della tua distribuzione e installalo da lì o usa:

sudo apt install wipe

Una finestra del terminale che mostra le informazioni su wipe.

Il suo utilizzo è quasi semplice come quello di shred, se non di più. Per eliminare file in Linux usando wipe, esegui:

wipe Pictures/deleteme.png

Questo può diventare fastidioso, poiché, per impostazione predefinita, wipe utilizza troppi passaggi che richiedono tempo per una maggiore sicurezza. Inoltre, richiederà conferma per l’eliminazione.

Una finestra del terminale che mostra una sessione wipe di base.

Usa il flag f per eliminare la conferma e r per ricorsivamente entrare nelle sottodirectory. c dice a wipe di chmod se necessario (quando un file o una directory non ha permessi di scrittura impostati), e q ti consente di ridurre il numero di passaggi per una cancellazione più rapida. Quando usi q, nota che è minuscolo. Può essere seguito da una “Q” maiuscola specificando il numero di passaggi che richiedi. Ad esempio, il comando precedentemente semplice, con quelle modifiche applicate, cambierebbe in:

wipe -rfcq -Q 5 Pictures/deleteme.png

Pro

  • Facile da usare, anche con poca esperienza nella riga di comando
  • Parametri predefiniti sensati e sicuri

Contro

  • I parametri predefiniti potrebbero essere troppo rigidi per la maggior parte degli utenti
  • Potrebbe non funzionare bene con il journaling attivo

5. Usare Secure Delete

SRM è uno degli strumenti nella suite Secure Delete che si specializza nella rimozione sicura dei dati dal tuo HDD. È considerato da molti come il miglior strumento per questo lavoro.

Per installare l’intera suite Secure Delete su Ubuntu e distribuzioni compatibili, usa:

sudo apt install secure-delete

Una finestra del terminale che mostra l'installazione di secure-delete.

Dopo, puoi eliminare qualsiasi file con:

srm Pictures/deleteme.png

Una finestra del terminale che mostra il processo di eliminazione sicura.

Probabilmente vorrai usare il flag z che sovrascrive i contenuti del tuo file con zeri per una maggiore sicurezza e v per ottenere informazioni dettagliate sul processo. Se hai a che fare con directory e sottodirectory, includi anche il flag r per la modalità ricorsiva. Se i 38 riscritture sono troppe per te, puoi ridurre il tempo richiesto – così come la sicurezza – utilizzando il flag l per ridurre il numero di passaggi a “solo” due. Questo trasformerebbe il comando precedente in:

srm -rlvz Pictures/deleteme.png

Pro

  • Le opzioni sono semplici da capire e intuitive
  • Eliminare un file è altamente sicuro e approfondito

Contro

  • Richiederà molto tempo per finire
  • Non funziona bene su sistemi che utilizzano RAID

6. Eliminare File in Linux con Perl

Oltre a utilizzare strumenti, puoi anche approfittare di semplici linguaggi di programmazione, come Perl, per eliminare file in Linux. Ad esempio, la seguente riga di codice sostituirà i contenuti del tuo file con il carattere “0:”

perl -i -pe 's/[^*]/0/g' /path/to/your/file
  • Il flag -i dice a Perl di elaborare il file che hai fornito nel comando.
  • Il flag -pe dice al programma di creare un ciclo iterativo per i contenuti del tuo file.
  • 's/[^*]/0/g' è un comando di sostituzione. L’operatore [^*] corrisponde a ogni byte all’interno del file, e lo 0 sostituirà ogni byte.

Una finestra del terminale che mostra Perl che cancella un file.

Una volta fatto, puoi rimuovere il tuo file modificato usando rm:

rm /path/to/your/file

Pro

  • Non devi imparare una nuova sintassi se conosci Perl
  • Usa astrazioni familiari come la sostituzione sed

Contro

  • Il comando eseguirà solo un singolo passaggio su un file
  • Sostituire i contenuti con dati arbitrari può essere insicuro

Buono a sapersi: puoi capire di più sulle sostituzioni e sui flussi di file usando sed per compiti di sistema di base.

7. Il modo GUI: Usare Bleachbit

Se hai un’avversione per la riga di comando, Bleachbit è una delle migliori soluzioni per cancellare in modo sicuro i tuoi dati. (Bleachbit è più conosciuto per la sua capacità di ripulire il tuo sistema Linux.) Per impostazione predefinita, lo strumento si specializza nella scoperta e nello smaltimento di “file ridondanti” che continuano a occupare spazio molto tempo dopo che ne hai avuto bisogno. Ma incorpora anche la capacità solitamente dimenticata di “shred” manualmente qualsiasi file oltre il recupero.

Una finestra Discover per Bleachbit.

Installalo sulla tua distribuzione compatibile con Ubuntu attraverso il suo centro software o utilizzando:

sudo apt install bleachbit

Clicca su “Menu -> Preferenze” e abilita l’opzione “Sovrascrivi i contenuti dei file per prevenire il recupero” per una maggiore sicurezza.

Una finestra di Bleachbit che mostra l'eliminazione sicura.

Torna alla sua interfaccia principale, clicca su “Menu -> Shred Files,” e dalla richiesta che appare, scegli i file che desideri ridurre in nulla. Clicca su “Elimina” e rassicura Bleachbit che sei sicuro di ciò che stai cercando di fare.

Dovresti sempre tenere a mente che l’uso di file system di journaling e il fatto che non sappiamo come il firmware di ogni HDD “gestisce” i suoi contenuti significa che la migliore soluzione è azzerare l’intero HDD – o ancora meglio, distruggere fisicamente il dispositivo.

Pro

  • Facile da usare
  • Puoi impostarlo per essere sicuro per impostazione predefinita

Contro

  • Non può eseguire cancellazioni di disco
  • Non cancellerà lo spazio libero

8. Cancellare Spazio Libero con dd

Mentre la cancellazione sicura renderà un file più difficile da recuperare, è ancora possibile ricostruirlo utilizzando i metadati sul tuo disco. Risolvi questo problema cancellando tutto lo spazio libero disponibile nella tua macchina.

Il modo più semplice per farlo in Linux è utilizzare dd per creare un file che riempirà l’intero disco rigido:

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

Una finestra del terminale che mostra il comando dd per cancellare lo spazio libero.

Una volta fatto, devi dire al tuo sistema di impegnare il tuo file “spazio libero” su disco:

sync

Infine, rimuovi il tuo file “spazio libero” usando rm:

rm /home/$USER/wipefree

Cancellare File Sicuri Linux 18 Elimina File Spazio Libero

Pro

  • Comando semplice che non rimuoverà file
  • Pulisce tutti i metadati residui

Contro

  • Richiede molto tempo per finire
  • Non elimina file direttamente

Suggerimento: per evitare di vedere il messaggio “spazio di archiviazione insufficiente”, controlla e gestisci regolarmente il tuo spazio su disco.

Domande Frequenti

È possibile eliminare in modo sicuro file remoti in Linux?

Sebbene sia possibile eliminare in modo sicuro file remoti, non c’è garanzia che un sistema Linux remoto non esegua il backup dei file all’interno dei loro dischi. È meglio assumere che ogni disco e sistema remoto non sia sicuro.

I miei file sono completamente scomparsi dopo averli eliminati in modo sicuro in Linux?

È ancora possibile che il tuo sistema trattenga alcuni metadati dal tuo vecchio file. Ad esempio, la tua partizione di swap può contenere informazioni su una cancellazione sicura nel tuo sistema.

Mitiga questo riavviando e creando nuovi file sul tuo disco.

Più passaggi sono migliori quando si eliminano file?

Non necessariamente. Nella maggior parte dei casi, cinque passaggi dovrebbero impedire a qualsiasi strumento di recupero dati di ricreare il tuo file. È possibile recuperare un file oltre cinque passaggi, ma richiede strumenti e programmi altamente specializzati per funzionare.

Crediti immagine: Unsplash. Tutte le modifiche e gli screenshot di Ramces Red.