14/03/2025

Commandes et Système

Linux : comment effacer un disque de manière sécurisée ?

I. Présentation

Dans ce tutoriel, nous allons apprendre à effacer un disque de manière sécurisée sur une machine Linux, à l'aide des commandes "dd" et "shred".

Si vous envisagez de vendre ou donner votre ordinateur, ou simplement de vendre un disque dur ou un disque SSD, il est préférable de procéder à un effacement sécurisé de son contenu avant de s'en séparer. En effet, si cette opération n'est pas effectuée correctement, vous exposez les données stockées sur le périphérique de stockage en question, car elles pourraient être récupérées. Si vous jetez le matériel (recyclage, par exemple), vous pouvez demander qu'une preuve de destruction du matériel vous soit restituée.

Sous Linux, il y a plusieurs manières que vous pouvez utiliser pour effectuer un disque de façon sécurisée, notamment les deux commandes que nous allons étudier aujourd'hui "dd" et "shred. Mais, il en existe probablement d'autres...

Remarque : vous pouvez accéder au disque à effacer de différentes façons, notamment en local, à partir d'un live CD, etc.

II. Effacer un disque avec dd

Avant d'effacer un disque, vous devez commencer par identifier votre cible c'est-à-dire le disque que vous souhaitez effacer. Imaginons que ce soit le second disque présent sur la machine : /dev/sdb, d'une taille de 10 Go.

Vous pouvez lister vos disques avec cette commande :

fdisk -l

Voici un aperçu du disque qui sera utilisé pour cette démonstration :

Linux - Effacer disque avec commande dd

Ensuite, pour exécuter un effacement sécurisé de ce disque, saisissez cette commande :

dd if=dev/urandom of=/dev/sdb

Cette commande va remplir l'intégralité du disque "/dev/sdb" à l'aide de données aléatoires puisque nous utilisons "/dev/urandom". Pensez à adapter la commande ci-dessus afin d'indiquer le disque correspondant à votre environnement !

Ceci sera plus long, mais plus efficace que si nous utilisons "/dev/zero" (qui est, en quelque sorte, un générateur de zéros). Toutefois, les deux sont possibles.

dd if=dev/zero of=/dev/sdb

Dans les deux cas, vous devez patienter pendant l'opération. Ce processus peut être très long. Tout dépend de la taille du disque et des performances de votre machine. Quand ce sera terminé, le message suivant apparaîtra :

dd: écriture vers '/dev/sdb': Aucun espace disponible sur le périphérique

Voici un exemple :

Effacer un disque sous Linux avec dd

Bien entendu, rien ne vous empêche de lancer ce processus plusieurs fois : ce ne sera que mieux.

III. Effacer un disque avec shred

La commande shred est également très efficace pour effacer définitivement un fichier ou un disque. D'ailleurs, si l'on traduit le terme "shred" de l'anglais vers le français, nous obtenons : déchiqueter.

Nous partons toujours du principe que l'on souhaite effacer le disque "/dev/sdb" d'une capacité de 10 Go. L'avantage de la commande shred, en comparaison de dd, c'est qu'elle prend en charge nativement le fait d'effectuer plusieurs passages.

Voici comment effectuer 5 passages pour effacer notre disque :

shred -n 5 -vzf /dev/sdb

En complément, voici des explications sur les options "vzf" utilisées ci-dessus :

  • -v : mode verbeux, ce qui permet de suivre la progression dans la console.
  • -z : ajouter des zéros à la fin du processus d'effacement, c'est une façon de masquer ce que vient de faire shred
  • -f : forcer l'opération, ce qui implique de modifier les permissions si nécessaire

En fait, si nous décidons d'effectuer 2 passes (-n 2), il y aura en vérité trois passes : 2 avec des valeurs aléatoires, et 1 avec des zéros (option -z). Ceci est visible sur l'image ci-dessous :

Efface un disque sous Linux avec shred

Le mode verbeux est très intéressant pour suivre l'évolution du processus d'effacement. Ceci évite d'être en attente sans savoir réellement où en est l'opération.

Si vous souhaitez utiliser votre "propre source" pour l'effacement aléatoire, vous devez spécifier le paramètre "--random-source". Ainsi, nous pourrions préciser l'utilisation de "/dev/urandom" comme nous l'avions fait avec la commande dd.

Ce qui donne :

shred -n 5 --random-source=/dev/urandom -vzf /dev/sdb

Voilà, il ne reste plus qu'à patienter ! Attention à ne pas se tromper de disque !

IV. Conclusion

Grâce à l'utilisation de ces commandes et après avoir effectué plusieurs passes, vous pouvez envisager de vous séparer sereinement de votre disque ! Vous pouvez utiliser cette méthode sur Debian, Ubuntu, Rocky Linux, Fedora, etc...

Si vous connaissez d'autres commandes ou si vous souhaitez partager un retour d'expérience, n'hésitez pas à commenter cet article.

author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

1 commentaire sur “Linux : comment effacer un disque de manière sécurisée ?

  • Il y a aussi la commande wipe il me semble. Dans mes souvenirs, shred et wipe sont plus safe que dd.

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.