web-dev-qa-db-fra.com

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

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


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

Pendant plus de 10 ans de travail 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 inutilisables. Je ne peux donc pas le prouver, mais il est évident que cela est lié au comportement de (dés) montage de Ubuntu. .

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

74
jan6352781

Pas de problème, Ubuntu n'a pas endommagé votre clé USB. Mais nous n'utilisons pas les drapeaux de bits mal documentés d'un système de fichiers FAT32, FAT16 ou NTFS. Sous Windows, ces indicateurs indiquent un système de fichiers potentiellement corrompu alors que nous n'avions pas correctement démonté le lecteur ou qu'une erreur d'E/S s'était produite.

Ces bits sont situés dans une entrée réservée d'une table de partitions FAT. Selon un document interne de Microsoft de 2004 , ces bits ont pour but:

  • ClnShutBitMaskname__:
    Si le bit est à 1, le volume est "propre". Le volume peut être monté pour l'accès. Si le bit est à 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 (au cours d'une opération de montage antérieure). Le contenu du volume doit être analysé pour détecter tout dommage causé aux métadonnées du système de fichiers.
  • HrdErrBitMaskname__:
    Si ce bit est à 1, aucune erreur de lecture/écriture de disque n'a été rencontrée. Si ce bit est à 0, la mise en œuvre du pilote de système de fichiers a rencontré une erreur d'E/S de disque sur le volume lors de son dernier montage, ce qui indique que certains secteurs ont mal tourné. Le contenu du volume doit être analysé à l'aide d'un utilitaire de réparation de disque qui effectue une analyse de surface à la recherche de nouveaux secteurs défectueux.

Il y a quelques années, des discussions ont eu lieu avec les développeurs du système de fichiers du noyau sur la façon de remédier à ce problème, mais je n'ai pas été en mesure de suivre les résultats. Apparemment, il n’a pas été transformé en noyaux récents.

Comme il ne s'agit que d'un indicateur, mais que nos données doivent être en parfait état, nous pouvons ignorer les problèmes d'avertissement de Windows sur les lecteurs précédemment utilisés dans Ubuntu.

104
Takkat

Ceci est principalement un problème avec Windows. Il pense que c'est le seul système d'exploitation au monde et 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 lecteur que cela est vrai.

N'importe lequel de mes lecteurs utilisés avec Ubuntu reçoit ce message de Windows, je dis simplement noet ils fonctionnent correctement sous Windows.

En bref, il n’ya rien de mal avec le lecteur, c’est simplement que Windows ne comprend pas quelque chose et que sa réponse est de le détruire.

Ne pas repairle lecteur, il le formatera sans vous en avertir et vous perdrez toutes les données qu'il contient.

74
Mark Kirby

Comme vous l'avez suggéré dans un commentaire, cela est peut-être lié au fait que Ubuntu n'a pas terminé le processus d'écriture avant de retirer le lecteur flash. Ubuntu écrit les fichiers sur RAM pendant le processus de copie et écrit ces fichiers de la mémoire tampon sur le lecteur USB en arrière-plan après la fermeture de la boîte de dialogue de copie. Il y a autre réponse , ce qui suggère que c'est un problème en particulier pour les machines disposant de beaucoup de mémoire, mais il est probable que vous retiriez le lecteur avant la fin de l'écriture en arrière-plan. Lorsque vous éjectez un lecteur, le tampon est écrit sur le disque, mais il est difficile de savoir quand l’écriture est terminée. Il y a une fenêtre contextuelle dans les versions les plus récentes (15.10 pour certains, éventuellement 15.04) destinée à remédier à cela - une alerte violette apparaît après un temps (généralement court) indiquant qu'un élément du type "[Drive] peut maintenant être supprimé" l'écriture est terminée.

C'est probablement la raison pour laquelle votre ami a suggéré la synchronisation. L'exécution de syncdans le terminal force l'écriture de toutes les données mises en mémoire tampon sur le disque et ne doit être renvoyée qu'une fois les écritures terminées (voir cette réponse ). Voir cette réponse pour un utilitaire qui vous aidera à déterminer si tel est en fait le problème.

18
alex_d

J'ai vu de nombreux lecteurs USB, notamment des cartes flash (SD, etc.) dans des adaptateurs USB, avec des systèmes de fichiers FAT (pratiquement tous les lecteurs USB pré-formatés avec FAT32) se corrompant lors de l'utilisation de distributions dérivées d'Ubuntu & Ubuntu. Il s’agissait presque tous les deux ou trois mois d’une utilisation quotidienne régulière.

S'il s'agissait d'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 blindés. (Ext2 a également été corrompu au cours des quelques mois où je l'ai essayé; il était supposé avoir moins d'écritures, donc une durée de vie plus longue pour les clés USB, principalement à partir de pas de journal).

Donc, Ubuntu ne devrait pas physiquement endommager les clés USB elles-mêmes, mais je ne 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 manière suivante:

  • Ne débranchez jamais un lecteur USB tant qu’il n’a pas été démonté/umount/éjecté. Même si le lecteur n’écrit rien (il est allumé, il ne clignote pas) et même si vous avez effectué un sync, le système de fichiers peut toujours
  • 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 continue de clignoter pendant quelques instants. D'autres utilisateurs comme ce type disent que cela pourrait durer jusqu'à une minute.
  • Ne comptez pas uniquement sur sync non plus, comme ce gars-là qui a corrompu le fichier.

Liens connexes (généralement):

5
Xen2050

Cela n'a rien à voir avec aucun système d'exploitation. Il s'agit d'une erreur du système de fichiers, qui indique dans la plupart des cas que le lecteur n'a pas été démonté correctement (erreur de l'utilisateur). Ce n'est pas une indication absolue de dommage, mais simplement une possibilité de dommage. Le cas échéant, les dommages sont généralement limités au (x) dernier (s) fichier (s) écrit (s). La commande "Réparer" de Windows, dans ce cas, analyse le lecteur à la recherche de secteurs marqués "occupés", mais non affectés à un fichier, puis attribue ces morceaux et ces morceaux à de nouveaux fichiers.

Cette erreur peut également être créée sous Windows si vous retirez simplement le lecteur en écriture sans le démonter au préalable (dans Windows, "Éjecter" effectue le démontage).

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

Vous pouvez vérifier vous-même si le système de fichiers est vraiment endommagé ou s'il s'agit simplement d'un faux positif: si, après l'exécution de "Réparer", un nouveau dossier portant le nom "trouvé000" apparaît avec certains fichiers, cela signifie qu'il y a vraiment une écriture inachevée qui s'est interrompu. Certaines de vos données ont été perdues, ce qui est préoccupant.

3
Agent_L

J'utilise plusieurs années Ubuntu et Windows avec double démarrage, et lorsque je démonte le lecteur de la bonne façon, dans Windows, affiche toujours le message d'erreur, mais jamais d'erreur sur mon lecteur USB. Dans W10, vous pouvez désactiver ce message d'erreur contextuel.

enter image description here

2
tviragh

Il n’existe pratiquement aucun moyen pour un système d’exploitation d’endommager le lecteur USB. Après un format normal (et non rapide), il ne devrait plus rester aucune trace de ce lecteur a été utilisé avec Ubuntu.

Vérifiez les lecteurs avec "H2testw" ou "USB Flash Drive Tester" - des secteurs défectueux peuvent être à l'origine de nombreuses erreurs étranges.

1
user158037

Je ne peux pas dire si le lecteur était "endommagé", peut-être que oui ou non. Mais en tant que personne capable de dire la même chose: "Pendant plus de 10 ans travaillant avec Windows ...", je peux vous dire que si vous utilisez Windows 10, cela pourrait être la source de vos nouveaux problèmes. J'ai rencontré un nouveau problème le premier jour de mon arrivée sur 10: sur 10, une base de données est créée pour les lecteurs externes (il peut s'agir de la base de données d'indexation, je ne m'en souviens pas). Si cette base de données ne correspond pas au lecteur, le système vous avertira que votre lecteur est endommagé. Parfois, vous pouvez ignorer cet avertissement, parfois non (voir l'anecdote). Lancer "réparer" va réparer la base de données.

Anecdote:

Je ne me souviens pas où j'ai trouvé cette information, mais je l'ai su lorsque j'ai déplacé mon dossier Musique. Il s'est plaint que le lecteur était en panne au lieu de se plaindre du dossier qu'il cherchait qui n'existait plus. Avant de réparer, le nouvel emplacement est apparu sur Ubuntu et l'ancien sur Windows 10 ... mais tous les fichiers n'ont pas pu être ouverts sur 10. Après réparation, le nouvel emplacement du dossier Musique est apparu sous Windows, l'ancien dossier disparu, et cela a fonctionné à nouveau sur Windows.

Exécuter sync n'est également pas une mauvaise idée.

1
Black