Ricerca nel sito web

Come eliminare file ENORMI (100-200 GB) in Linux


Nell'ambito delle operazioni del terminale Linux, è a nostra disposizione una serie di comandi Linux allo scopo di eliminare o rimuovere file in modo efficace.

Quando si tratta di eliminare i file, di solito ci affidiamo al comando “rm”, che cancella rapidamente i file dal sistema. Per una maggiore sicurezza e garanzia, entra in gioco il comando "shred", che garantisce l'eliminazione completa e sicura di un file, senza lasciare traccia.

Inoltre, il comando "wipe" offre un ulteriore livello di protezione, cancellando in modo sicuro i file oltre ogni possibilità di recupero. In scenari più complessi o per esigenze avanzate di eliminazione dei file, possiamo rivolgerci agli strumenti di eliminazione sicura progettati per soddisfare i più elevati standard di eliminazione sicura dei file.

Con queste potenti opzioni a nostra disposizione, possiamo rimuovere in modo sicuro ed efficace i file dall'ambiente terminale Linux.

Possiamo utilizzare una qualsiasi delle utilità di cui sopra per gestire file relativamente piccoli. Cosa succede se vogliamo eliminare/rimuovere un file/directory enorme, ad esempio 100-200 GB?

Potrebbe non essere così semplice come sembra, in termini di tempo necessario per rimuovere il file (pianificazione I/O) e di quantità di RAM consumata durante l'esecuzione dell'operazione.

In questo tutorial spiegheremo come eliminare in modo efficiente e affidabile file/directory di grandi dimensioni in Linux.

L'obiettivo principale qui è utilizzare una tecnica che non rallenti il sistema durante la rimozione di un file di grandi dimensioni, con conseguente I/O ragionevole. Possiamo raggiungere questo obiettivo utilizzando il comando ionic.

Eliminazione di file ENORMI (200 GB) in Linux utilizzando il comando ionice

ionice è un programma utile che imposta o ottiene la classe di pianificazione I/O e la priorità per un altro programma. Se non viene fornito alcun argomento o viene fornito solo -p, ionice interrogherà la classe di pianificazione I/O corrente e la priorità per quel processo.

Se diamo un nome al comando come rm comando, verrà eseguito questo comando con gli argomenti specificati. Per specificare gli ID dei processi in esecuzione per i quali ottenere o impostare i parametri di pianificazione, eseguire quanto segue:

ionice -p PID

Per specificare il nome o il numero della classe di pianificazione da utilizzare (0 per nessuno, 1 per in tempo reale, 2 per massimo sforzo, 3 per inattivo) il comando seguente.

Ciò significa che rm apparterrà alla classe I/O idle e utilizzerà l'I/O solo quando qualsiasi altro processo non ne avrà bisogno:

---- Deleting Huge Files in Linux -----
ionice -c 3 rm /var/logs/syslog
ionice -c 3 rm -rf /var/log/apache

Se non ci sarà molto tempo di inattività nel sistema, allora potremmo voler utilizzare la classe di pianificazione best-effort e impostare una priorità bassa come questa:

ionice -c 2 -n 6 rm /var/logs/syslog
ionice -c 2 -n 6 rm -rf /var/log/apache

Nota: per eliminare file di grandi dimensioni utilizzando un metodo sicuro, possiamo utilizzare shred, wipe e vari strumenti nel toolkit di eliminazione sicura menzionato in precedenza, invece del comando rm.

Per maggiori informazioni, consultare la pagina man di ionice:

man ionice 

Per ora è tutto! Quali altri metodi avete in mente per lo scopo di cui sopra? Utilizza la sezione commenti qui sotto per condividere con noi.