Lorsqu'un fichier est supprimé, son contenu peut rester dans le système de fichiers, à moins qu'il ne soit explicitement écrasé par un autre contenu.
Pour supprimer des données définitivement, il existe plusieurs outils :
- secure-delete
- shred
- dd
Secure-delete
Pour installer secure-delete :
apt install -y secure-delete # Debian/Ubuntuyay -S --noconfirm secure-delete # Arch Linux
Le package secure-delete contient plusieurs outils :
srm
- Supprimer un fichiersmem
- Supprimer les traces d'un fichier dans la RAMsfill
- Supprimer tout l'espace libre d'un disque dursswap
- Supprimer toutes les données du SWAP
Si vous souhaitez uniquement supprimer les données d'un dossier :
srm -r <folder>
Si vous souhaitez supprimer l'espace libre d'un disque ou d'une partition :
sfill -f -v <mountpoint>
La commande dd
Il s'agit d'une commande native à Linux.
Pour supprimer l'espace disque d'un disque, vous pouvez le remplir de zéros avec la commande suivante :
dd if=/dev/zero of=zero; sync; rm zero; syncdd if=/dev/random of=random; sync; rm random; sync
Shred
La commande que je préfère, c'est la suivante :
shred -v --random-source=/dev/urandom -n1 --zero <partition|device>shred -v --random-source=/dev/urandom -n1 --zero -u <file>
Elle remplacera le fichier par des données aléatoire puis par des zéros.
Références :