lundi 2 décembre 2013

HDD externe USB qui refuse d'être monté: ntfsprogs

Mise-à-jour concernant cet article:

En fait, le problème est revenu moins de 2 jours plus tard...
En désespoir de cause, je suis retourné sous Windows et j'ai re-vérifié et re-corrigé mon disque avec une application gratuite EASEUS Partition Master

Cette fois, pas de problème. J'en ai profité pour redimensionner la partition unique de ce disque et créer un espace libre de 500 Go.
Revenu sous Linux, j'ai constaté qu'il n'y avait plus aucun problème. J'ai formaté l'espace libre en Ext4 puis transféré manuellement dedans les dossiers de la partition NTFS dossier par dossier pour mieux cerner les éventuelles erreurs (il n'y en a eu aucune semble-t-il). J'ai ensuite supprimé la partition NTFS puis formaté cet espace libre en Ext4 avec Gparted. J'ai tout de même gardé un espace libre de 25 Go pour l'éventuelle installation d'un autre Linux.
Plus aucun problème depuis!
Le problème, c'est que je ne peux plus m'en servir sous Windows puisque normalement, les formats Ext sont invisibles sous Windows. Heureusement, les malins de chez Disk Internal Research ont créé Linux Reader qui permet de voir dans les partitions Linux depuis Windows (Lecture seule seulement mais on peut copier un fichier cependant. Pas couper, ni enregistrer).

Error mounting: mount exited with exit code 13: $MFTMirr does not match $MFT (record 1).
Failed to mount '/dev/sdd1': Input/output error
NTFS is either inconsistent, or there is a hardware fault, or it's a
SoftRAID/FakeRAID hardware. In the first case run chkdsk /f on Windows
then reboot into Windows twice. The usage of the /f parameter is very
important! If the device is a SoftRAID/FakeRAID then first activate
it and mount a different device under the /dev/mapper/ directory, (e.g.
/dev/mapper/nvidia_eahaabcc1). Please see the 'dmraid' documentation
for more details.

Traduc: Erreur de montage: mount quitté avec le code de sortie 13: $ MFTMirr ne correspond pas à $MFT (enregistrement 1).
Impossible de monter '/dev/sdd1': Erreur d'entrée / sortie
NTFS est soit incompatible, ou il ya une panne matérielle, ou c'est un
matériel SoftRAID / fakeraid. Dans le premier cas Exécutez CHKDSK / f sur Windows
puis redémarrez deux fois Windows. L'utilisation du paramètre / f est très
important! Si le dispositif est un SoftRAID / fakeraid, alors activez-le en premier
et montez un autre appareil sous /dev/mapper/ répertoire (par exemple,
/dev/mapper/nvidia_eahaabcc1). S'il vous plaît, voyez la documentation 'dmraid'
pour plus de détails.


Depuis hier, j'avais ce message d'erreur aussitôt que je voulais monter mon disque externe NTFS. C'était venu progressivement. Au début, j'avais seulement un avertissement avec Gparted comme quoi il y avait des erreurs et qu'il fallait le vérifier et le réparer avec chkdsk /f sous Windows.
Je l'avais fait à l'époque (c'est très long en USB2 d'autant plus que le disque fait 1 Tetraoctet) et cela avait semble-t-il amélioré les choses.

Récemment, les problèmes sont revenus mais cette fois, je ne pouvais même plus copier, coller ou même enregistrer dedans (message d'erreur ci-dessus). J'ai refait le chkdsk sous Windows et cette fois, cela a duré plus d'une nuit (environ 12 h !) tout ça pour me dire que Windows n'avait pas réussi a réparer le disque.

Quand je suis revenu sous Linux, il n'était plus possible de le monter (message d'erreur ci-dessus). Il était visible dans Gparted mais semblait vide. J'étais désespéré d'autant plus que le disque a un peu plus d'un an et je pensais qu'il était mort ou quasiment...
J'ai continué mes recherches concernant ce message d'erreur et je suis heureusement tombé sur ce forum en Anglais: http://ubuntuforums.org/archive/index.php/t-1333205.html

Quand on fait des recherches (en Français) sur la possibilité de réparer un disque NTFS, on tombe toujours ou presque sur ce genre de réponse: "Linux ne sait pas réparer les disques NTFS, voir Windows pour cela...".

Hé bien, c'est faux! Encore un lieu commun, idée préconçue largement répandue par quelques pseudos-gourous linuxiens (c'est comme la défragmentation...) !

Cependant, la méthode qui suit n'est pas infaillible et ne résoudra peut-être pas tous les problèmes mais en tous cas, cela a fonctionné dans mon cas et m'a économisé le chargement d'un iso de dépannage et mon temps... L'ensemble de la manip ne prendra que quelques toutes petites minutes, chargement y compris.

Voir la suite de l'opération en haut de page.

Solution à privilégier: sous Windows

Aller sous Windows (clic droit sur le Poste de Travail et Propriétés puis vérifier le disque ou quelque chose comme ça. Sinon, il est mieux d'utiliser le Terminal: cmd et lancer un chkdsk :h /f ou alors encore mieux en console au boot). S'il s'agit du disque système, Windows va vous proposer de vérifier votre disque au prochain redémarrage, mais s'il s'agit d'un disque externe, il va le faire immédiatement, et on l'a vu, cela peut durer des "plombes". Il vaut donc mieux le faire au boot avec le CD de Windows et la Console (ou installer la Console). Faites une recherche sur Google pour cela.

Sous Linux (y compris avec un CD-Live)


  1. Téléchargez dans Synaptic ntfsprogs ou installez-le avec sudo apt-get install ntfsprogs. Ce paquet contient une superbe collection d'outils pour les disques NTFS.
  2. Lancez cette commande: sudo ntfsfix /dev/sdb1 (remplacez sdb1 par votre disque bien-sûr). Cela devrait réparer votre disque en quelques secondes... En principe, vous devriez voir dans le terminal "successfully" (avec succès) ou quelque chose de ce genre.
  3. Redémarrez votre PC
Chez moi, tout est alors rentré dans l'ordre, j'ai retrouvé intégralement mes données et je n'ai plus d'erreurs y compris dans Gparted.

Autres outils contenus dans ntfsprogs. On remarquera ntfsdefrag qui permet de défragmenter le disque. Qui a dit que c'est impossible sous Linux? Cependant, je ne l'ai pas encore essayé. Peut-être cela se passe-t-il au démarrage de Windows?


Programmes inclus

mkntfs - Crée un volume NTFS sur une partition
ntfscat - Print a file on the standard output
ntfsclone - Efficiently backup/restore a volume at the sector level
ntfscluster - Given a cluster, or sector, find the file
ntfsfix - Forces Windows to check NTFS at boot time
ntfsinfo - Dump a file's attributes, completely
ntfslabel - Display or set a volume's label
ntfslib - Move all the common code into a shared library
ntfsls - List directory contents
ntfsresize - Resize an NTFS volume
ntfsundelete - Find files that have been deleted and recover them
ntfswipe - Write zeros over the unused parts of the disk
ntfsdefrag - Defragment files, directories and the MFT
ntfsck - Perform consistency checks on a volume
ntfsdiskedit - Walk the tree of NTFS ondisk structures (and alter them)
nttools - Command-line tools to view/change an offline NTFS volume, e.g. ntfscp, ntfsgrep,ntfstouch, ntfsrm, ntfsrmdir, ntfsmkdir.
Other programs are included, but are very basic in functionality and/or intended for developers.

Aucun commentaire:

Enregistrer un commentaire

Remarque : Seul un membre de ce blog est autorisé à enregistrer un commentaire.