76 votes

Ubuntu endommage-t-il les clés USB ?

Chaque fois que je démonte un disque USB avec Nautilus et que je le branche sur une machine Windows, je reçois un avertissement indiquant que le disque doit être réparé.


(le même message que dans cette capture d'écran)

Depuis plus de 10 ans que je travaille sous Windows, je n'ai jamais eu de clé USB corrompue ou endommagée, mais au cours des deux dernières années, trois de mes clés USB sont devenues inopérantes. Je ne peux donc pas le prouver, mais il est évident que cela est lié au comportement de (dé)montage d'Ubuntu.

Un ami m'a dit que je peux prévenir de tels dommages en utilisant udisks et sync, mais j'espère que ce n'est pas la façon de faire, monter les lecteurs avec des commandes Shell en 2016.

104voto

Takkat Points 135194

Pas d'inquiétude, Ubuntu n'a pas endommagé votre clé USB. Mais nous n'utilisons pas les indicateurs binaires mal documentés d'un système de fichiers FAT32, FAT16 ou NTFS. Sous Windows, ces indicateurs signalent un système de fichiers éventuellement corrompu lorsque nous n'avons pas démonté correctement le disque ou qu'une erreur d'E/S s'est produite.

Ces bits sont situés dans une entrée réservée de la table de partition FAT. Selon un document interne de Microsoft de 2004 le but de ces bits sont :

  • ClnShutBitMask :
    Si le bit est 1, le volume est "propre". Le volume peut être monté pour accès. Si le bit est égal à 0, le volume est "sale", ce qui indique qu'un pilote de système de fichiers FAT n'a pas pu démonter le volume correctement (durée de vie de la carte). FAT n'a pas pu démonter le volume correctement (lors d'une opération de opération de montage antérieure). Le contenu du volume doit être analysé pour tout dommage aux métadonnées du système de fichiers.
  • HrdErrBitMask :
    Si ce bit est à 1, aucune erreur de lecture/écriture de disque n'a été rencontrée. Si ce bit vaut 0, l'implémentation du pilote du système de fichiers a rencontré une erreur d'E/S de disque sur le volume la dernière fois qu'il a été monté. erreur d'E/S de disque sur le volume lors de son dernier montage, ce qui est un ce qui indique que certains secteurs peuvent être défectueux. Le contenu du volume volume doit être analysé avec un utilitaire de réparation de disque qui effectue une analyse de surface sur le volume à la recherche de nouveaux secteurs défectueux. analyse de surface à la recherche de nouveaux secteurs défectueux.

Il y a quelques années, les développeurs du système de fichiers du noyau ont discuté de la manière de surmonter ce problème, mais je n'ai pas pu en suivre les résultats. Apparemment, cela n'a pas été intégré dans les noyaux récents.

Étant donné que seul un petit drapeau est impliqué et que nos données devraient être en parfait état, nous pouvons ignorer les avertissements de Windows sur les disques que nous avions précédemment utilisés dans Ubuntu.

74voto

Mark Kirby Points 17611

C'est surtout un problème avec Windows. Il pense être le seul système d'exploitation au monde et réagit s'il détecte quelque chose qu'il ne comprend pas.

Ce n'est pas parce que Windows dit que vous devez réparer le disque que c'est vrai.

Tous mes disques utilisés avec Ubuntu reçoivent ce message de Windows, je dis simplement no et ils fonctionnent bien avec Windows.

En bref, il n'y a rien d'anormal avec le disque, c'est juste qu'il y a quelque chose dessus que Windows ne comprend pas et sa réponse est de le détruire.

Ne fais pas ça. repair le lecteur, il le formatera sans vous le dire et vous perdrez toutes les données qu'il contient.

19voto

alex_d Points 405

Comme vous l'avez suggéré dans un commentaire, cela peut être lié au fait qu'Ubuntu ne termine pas le processus d'écriture avant que vous ne retiriez la clé USB. Ubuntu écrit les fichiers dans la RAM pendant le processus de copie, et écrit ces fichiers de la mémoire tampon sur la clé USB en arrière-plan après la fermeture de la boîte de dialogue de copie. Il y a une autre réponse qui suggère que c'est surtout un problème pour les machines avec de grandes quantités de mémoire, mais il est probable que vous retiriez le lecteur avant que l'écriture en arrière-plan ne soit terminée. Lorsque vous éjectez un disque, cela force l'écriture de la mémoire tampon sur le disque, mais il est difficile de savoir quand l'écriture est réellement terminée. Il y a une fenêtre contextuelle dans les versions plus récentes (15.10 pour certains, peut-être 15.04) destinée à remédier à cela - une alerte violette apparaît après un certain temps (généralement court) qui dit quelque chose du genre " [Lecteur] peut maintenant être retiré " une fois l'écriture terminée.

C'est probablement la raison pour laquelle votre ami a suggéré la synchronisation. Exécution de sync en terminal force toutes les données mises en mémoire tampon à être écrites sur le disque, et ne doit revenir qu'une fois les écritures terminées (Voir cette réponse ). Voir cette réponse pour un utilitaire qui vous aidera à déterminer si c'est bien le problème.

7voto

Xen2050 Points 8190

J'ai vu de nombreux lecteurs USB, en particulier des cartes flash (SD, etc.) dans des adaptateurs USB, avec des systèmes de fichiers FAT (pratiquement tous les lecteurs USB sont préformatés en FAT32) être corrompus lors de l'utilisation d'Ubuntu et de distros dérivées d'Ubuntu. Cela se produisait presque régulièrement tous les quelques mois d'utilisation quotidienne.

Si c'était un problème matériel, alors le formatage des partitions avec ext3 (ou 4) ne devrait pas aider, mais ext3/4 rend les systèmes de fichiers pratiquement à l'épreuve des balles. (ext2 a également été corrompu au cours des quelques mois où je l'ai essayé ; était censé avoir moins d'écritures donc une plus longue vie pour les lecteurs flash, principalement à cause de l'absence de journal).

Donc, Ubuntu devrait pas endommager physiquement les lecteurs USB eux-mêmes, mais je ne lui fais toujours pas confiance à 100% avec les systèmes de fichiers FAT.

Je pense que la corruption du système de fichiers peut être évitée de la meilleure façon :

  • Ne débranchez jamais une clé USB avant qu'elle n'ait été démontée. umount /éjecté. Même si le lecteur n'est pas en train d'écrire quoi que ce soit (s'il y a une lumière, elle ne clignote pas) et même si vous avez fait un test d'écriture. sync le système de fichiers peut encore
  • Attendez au moins quelques secondes après umount /eject avant de le débrancher. Il semble que même après umount le voyant d'activité du lecteur peut parfois continuer à clignoter pendant un petit moment. Autres utilisateurs comme ce type disent que ça peut durer jusqu'à une minute.
  • Ne vous fiez pas uniquement aux sync soit, comme ce type qui a eu une corruption de fichier.

Liens connexes (en général) :

3voto

Conan Points 1542

Cela n'a rien à voir avec un quelconque système d'exploitation. Il s'agit d'une erreur de système de fichiers qui, dans la plupart des cas, indique que le disque n'a pas été démonté correctement (erreur de l'utilisateur). Il ne s'agit pas d'une indication absolue de dommage, mais simplement d'une erreur de système de fichiers. possibilité d'un dommage. S'il est présent, le dommage est généralement limité au(x) dernier(s) fichier(s) écrit(s). Dans ce cas, la commande "Réparer" de Windows recherche dans le lecteur les secteurs marqués comme "occupés", mais non affectés à un fichier, puis affecte ces débris à de nouveaux fichiers.

Cette erreur peut également être créée sous Windows, si vous retirez le disque pendant l'écriture sans le démonter au préalable (sous Windows, "Eject" effectue le démontage).

L'affichage de ce message signifie que le lecteur n'a pas été démonté correctement.

Vous pouvez vérifier par vous-même si le système de fichiers a vraiment été endommagé ou si ce n'est qu'un faux positif : si après avoir exécuté "Réparer" un nouveau dossier nommé comme "found000" apparaît avec quelques fichiers dedans, cela signifie qu'il y avait vraiment une écriture inachevée qui a été interrompue. Certaines de vos données ont été perdues, et c'est un problème.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X