Shred (Unix)
# Shred (Unix)

shred è un comando Unix che permette di cancellare i file sovrascrivendo ripetutamente i blocchi del disco su cui era stato salvato, in modo da rendere più difficile il ripristino dei dati cancellati anche con indagini hardware approfondite.

Argomenti

Se file è -, distrugge lo standard output.

Esempio:

Elimina i file solo se è specificato—remove (-u). È consigliabile non farlo perché è normale operare su file di dispositivi come /dev/hda, che normalmente non devono essere rimossi.

Quando si opera su file regolari, la maggior parte delle persone usano l'opzione—remove.

ATTENZIONE:

Si ricordi che shred si basa su un'importante supposizione, cioè che il file system sovrascriva i dati dove stanno. Questo è il metodo tradizionale, ma molti file system moderni non soddisfano questa assunzione. Questi sono esempi di file system su cui shred non ha effetto o non è garantito che sia efficace:

* file system con logging o journaling come quelli forniti con AIX e Solaris (e JFS, ReiserFS, XFS, ext3, ecc.)
* file system che scrivono dati ridondanti e continuano a scrivere anche se alcune scritture falliscono, come i file system basati su RAID
* file system che fanno snapshot, come quello dei server NFS di Network Appliance
* file system che conservano la cache in posizioni temporanee, come i client NFS versione 3
* file system compressi

Nel caso di file system Ext3, il precedente disclaimer si applica (e shred ha così un'efficacia limitata) solo nel modo data=journal, che effettua il journaling dei dati dei file in aggiunta ai soli metadata. In entrambi i modi data=ordered (predefinito) e data=writeback, shred lavora come al solito.

I modi di journaling di Ext3 possono essere cambiati aggiungendo l'opzione data=qualcosa alle opzioni di mount per un particolare file system nel file /etc/fstab, come documentato nella pagina del manuale di mount.

Inoltre, i backup dei file system e i mirror remoti possono contenere copie del file impossibili da rimuovere e che permetterebbero di recuperare un file distrutto.

