D’où peut venir une erreur d’entrée / sortie ?

Une erreur d’entrée/sortie peut avoir de multiples origines. Quand ça m’arrive, il s’agit souvent d’un transfert interrompu à cause d’une coupure de courant ou d’un câble défectueux. Ce problème peut également survenir lorsque le disque dur a été retiré « sauvagement » d’un PC : même si le transfert semble fini, votre système d’exploitation n’a peut-être pas fini d’écrire sur le disque dur.

Ma source

Ça m’est encore arrivé récemment et, à chaque fois, j’oublie l’outil qu’il faut utiliser pour régler le problème. Histoire de garder une trace de la commande quelque part, j’ai décidé de faire un article à ce sujet. Si vous lisez l’anglais, vous pouvez aussi consulter la réponse sur Stack Exchange qui m’a permis de récupérer ces informations. Ce n’est pas le seul endroit, c’est simplement le premier que j’ai retrouvé pour régler mon problème.

Comment régler l’erreur d’entrée/sortie sur Linux ?

Sur un disque FAT32

Pour Windows ou Mac, je ne sais pas comment ça fonctionne. Sur Linux, si votre disque est formaté en FAT32 (peut-être FAT16 aussi), il faut installer dosfstools. Pour Manjaro :

sudo pacman -S dosfstools

Ensuite, il faut que vous identifiez le nom du périphérique (votre disque dur externe ou clé USB). Vous pouvez utiliser sudo blkid pour récupérer ce nom.

Enfin, vérifiez que votre disque dur n’est pas monté sinon, démontez-le. Puis, il ne vous reste plus qu’à exécuter dosfsck. Pensez à modifier XX avec le nom de votre périphérique :

sudo dosfsck -w -r -l -a -v -t /dev/sdXX

Toutes les options ne sont pas obligatoires. À vous de juger ce que souhaitez faire :

  • -w : écrire les changements sur le disque immédiatement,
  • -r : réparer le disque de manière interactive,
  • -l : lister les chemins,
  • -a : corriger les problèmes automatiquement,
  • -v : rendre la commande verbeuse (obtenir plus d’informations),
  • -t : tester les clusters défectueux.

Si votre disque dur contient beaucoup de données, ça peut être assez long à traiter. Si vous utilisez l’option -t, le temps d’attente sera encore (beaucoup) plus long.

Sur un disque NTFS

Ce n’est pas précisé dans la réponse de Stack Exchange, mais pour un disque formaté en NTFS, il faut regarder du côté de ntfs-3g (qui est sans doute installé si vous utilisiez déjà un système NTFS) et ntfsfix. Là encore, il faut que le disque soit branché mais démonté.

Sur Manjaro :

sudo pacman -S ntfs-3g
sudo ntfsfix /dev/sdXX

Pensez à modifier XX avec le nom de votre périphérique.

Vous aurez peut-être besoin d’ajouter une ou ces deux options :

  • -d : pour retirer le drapeau « dirty » du disque s’il peut être réparé et monté.
  • -b : pour corriger les secteurs défectueux.

Évidemment, ne lancez pas ces commandes sans savoir ce que vous faîtes. Si vous avez la possibilité de faire une sauvegarde de vos données avant dexécuter ces commandes, c’est mieux.

Aucun commentaire sur “Erreur d’entrée/sortie sur Linux” pour le moment.

S'abonner aux commentaires

Laisser un commentaire

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