Quelle est la raison derrière le retrait en toute sécurité du support USB des ordinateurs Windows? [dupliquer]


97

Très souvent, lorsque je suis pressé, je débranche automatiquement une clé USB ou un câble USB d'un disque dur externe de mon ordinateur de bureau ou de mon ordinateur portable, sans cliquer avec le bouton droit de la souris sur l'icône Retirer en toute sécurité dans la barre d'état système et la débrancher via cette route. . Jusqu'à présent, rien d'inquiétant ne s'est produit chaque fois que je suis "pressé".

Quelle est la raison derrière un clic droit sur l'icône de suppression sécurisée et puis-je vraiment perdre des informations sur le support USB si cela n'est pas effectué?

Modifier

La vulnérabilité de la perte de telles informations est-elle considérablement accrue si le support USB continue de clignoter au moment de le retirer de l'ordinateur (par opposition au non-clignotant)?


5
@woliveirajr, ce n'est rien de semblable à la copie? L’une concerne l’éjection et fait référence aux CD-ROM et aux Kindles, car il s’agit de comprendre si des informations risquent d’être perdues si elles sont supprimées de manière non sécurisée. Heureux de me tromper, mais je ne le vois pas.
Dave


2
@Simon: Je voulais en effet poser la question superutilisateur.com/questions/619076/… , mais elle a été marquée comme une copie de celle qui est liée à mon commentaire. Et la réponse de "Augustus Francis" concerne votre question
woliveirajr


1
Essayez d’utiliser un clic gauche sur l’icône Supprimer en toute sécurité pour supprimer un périphérique en toute sécurité au lieu d’un clic droit. C'est plus rapide.
djhurio

Réponses:


104

Oui, c'est ce qui se passe si vous retirez l'appareil en cours d'utilisation (lecture ou écriture).

Lorsque vous branchez un lecteur USB, vous laissez à votre PC le droit d'écrire et de lire des données à partir de celui-ci. dont certains sont mis en cache.

La mise en cache se produit en n'écrivant pas d'informations immédiatement sur le périphérique USB, mais en les conservant dans la mémoire (RAM) de votre PC. Si vous devez extraire la clé USB de votre PC avant que ces informations ne soient écrites, ou lors de l'écriture, vous obtiendrez un fichier corrompu.

Cependant, Windows désactive automatiquement la mise en cache sur les périphériques USB, à moins que vous ne précisiez que vous souhaitez l'activer. Dans la plupart des cas, vous n'avez pas à cliquer sur le bouton «Supprimer le périphérique en toute sécurité» si vous n'écrivez ou ne lisez rien dans l'appareil.

C'est là simplement un niveau de sécurité supplémentaire vous empêchant de détruire vos propres fichiers.

Cela provoque la fermeture "en douceur" des fichiers, en préservant les données, les pointeurs et les indicateurs de taille de fichier. Lors de l'écriture sur le disque, l'ordinateur ne "vide" pas toujours un tampon et seule une partie des données peut avoir été écrite. En utilisant la procédure appropriée, vous vous assurez que les données et les pointeurs sont en bon état.

La source


41
Je voudrais ajouter que, bien que la mise en cache soit désactivée par défaut sur les clés USB, il a été prouvé que des personnes modifiaient ces valeurs par défaut. Alors s'il vous plaît, ne tirez pas sur les lecteurs d'un ordinateur quelconque. (La raison de le changer est un énorme gain de vitesse).
Hennes

J'ai perdu du temps (mais pas des données) une fois comme ça. Le fichier n'a jamais été transféré sur le lecteur flash car j'étais pressé. Cela ne s'est jamais reproduit, cependant, je suppose que la mise en cache n'est pas très courante.
Thomas

J'ai vu des erreurs "d'écriture différée" lorsque cela se produit.
TecBrat

5
Je pense que c'est plus qu'un simple cache ... Windows refusera activement le retrait en toute sécurité si le lecteur est en cours d'utilisation.
Ben Voigt

5
Je donnerais un +1 à cette réponse si elle mentionnait également le fait que Windows s'assure qu'aucun fichier n'est actuellement ouvert sur le lecteur. De nombreux processus, comme explorer.exefaire des bêtises avec des fichiers sur votre disque sans que vous le sachiez, et il est bon de s’assurer que rien de ce que fait Tom Foolery ne se passe avant de le débrancher. Sans parler du fait que certaines personnes aiment faire encore plus de bêtises comme ouvrir une feuille de calcul Excel directement sur le lecteur, puis oublier qu'Excel est ouvert.
Phil

45

Une deuxième raison est que les lecteurs flash doivent avoir une alimentation stable pendant environ 0,25 seconde après une commande d'écriture. Il s'agit d'un problème physique fondamental. En raison de facteurs aléatoires, certaines écritures peuvent laisser un bit logique dans un état électrique de 0.72. La solution est simple: il suffit de réécrire le fichier, peut-être même quelques fois. Finalement, ça va coller.

Si vous êtes vraiment malchanceux, le bit qui tombera sera dans une table de système de fichiers et corrompu, par exemple un répertoire entier.


24
Ceci est intéressant - puis-je obtenir une référence où je peux en savoir plus sur ce qui se passe?
SqlRyan

Existe-t-il un utilitaire que vous pouvez utiliser pour vérifier si les répertoires ont été corrompus?
JFW

@JFW Yep; Il suffit d'ouvrir le lecteur flash et de naviguer dans les dossiers. Si quelque chose est manquant ou si un message du type "répertoire peut être corrompu" s'affiche, vous savez qu'il y a corruption (ou du moins que le bit sale n'a jamais été effacé, ce qui signifie généralement qu'il y a corruption).
AJMansfield

9
@SqlRyan, voici un article sur les effets des
coupures

1
@JFW: Sous Windows, la vérification d'erreur standard va essayer. (Trouvé dans la fenêtre de propriété de chaque lecteur). @ AJMansfield: la corruption flash due aux coupures de courant ne fonctionne pas de cette façon. Le bit sale peut avoir été effacé lors de la dernière écriture, se terminant à 0,023 raisonnable, alors qu'un autre bit (métadonnées) s'est terminé par 0,59 nécessitant une réécriture. Ce n'est pas une propriété par secteur. (Flash ne fonctionne de toute façon pas sur le secteur, trop finement.)
MSalters

21

Peu de gens réalisent tout ce qui se passe sous le capot d’un lecteur flash. Contrairement aux disques durs dans lesquels un secteur est effacé et écrasé en une seule étape, les lecteurs flash peuvent écrire des données sur une page vierge de 528 octets beaucoup plus rapidement qu'ils ne peuvent effectuer un cycle d'effacement. De plus, comme chaque circuit de commande d'effacement consomme une quantité importante de silicium, les puces flash ne possèdent généralement pas de circuit distinct pour chaque page mais en possèdent un par "bloc", chaque bloc contenant des centaines ou des milliers de pages. Cela signifie que chaque fois que des données différentes sont écrites dans un secteur, elles seront écrites dans une zone précédemment vierge et l'ancienne copie sera en quelque sorte marquée comme "périmée". À un moment donné, le flash effectuera un cycle de "ramassage des ordures" dans lequel il identifiera un bloc contenant principalement des pages obsolètes. Copiez toutes les pages qui ne sont pas périmées de ce bloc dans un autre bloc contenant de l'espace, puis effacez le bloc. Étant donné que ces opérations peuvent être très lentes, certains lecteurs tenteront de les exécuter lorsque rien ne se passera. Les lecteurs n'indiquent pas à l'ordinateur quand ils effectuent un tel nettoyage, car l'ordinateur ne s'en soucie généralement pas. Le "piège" est que si l'ordinateur ne laisse pas savoir au lecteur qu'il est sur le point de perdre l'alimentation, il n'aura aucun moyen de savoir quand il est sécuritaire d'effectuer un tel nettoyage. parce que l'ordinateur ne s'en soucie généralement pas. Le "piège" est que si l'ordinateur ne laisse pas savoir au lecteur qu'il est sur le point de perdre l'alimentation, il n'aura aucun moyen de savoir quand il est sécuritaire d'effectuer un tel nettoyage. parce que l'ordinateur ne s'en soucie généralement pas. Le "piège" est que si l'ordinateur ne laisse pas savoir au lecteur qu'il est sur le point de perdre l'alimentation, il n'aura aucun moyen de savoir quand il est sécuritaire d'effectuer un tel nettoyage.

Notez que, bien que les clés USB de qualité soient conçues pour garantir l’écriture complète d’une nouvelle copie des données avant l’effacement d’une ancienne copie, elles permettent également de déterminer quelle copie de chaque bloc doit être considérée comme la plus récente. Les conceptions de lecteur flash sont parfaites. En l'absence de notification de panne d'alimentation, un algorithme conçu pour être sûr à 100% de la perte ou de l'incohérence de données serait probablement au moins deux fois plus lent qu'une contrainte moins stricte rencontrée. Ajouter une notification de panne d'alimentation matérielle qui se déclencherait alors qu'il restait assez d'énergie pour effectuer une ou deux opérations d'écriture flash réduirait la pénalité de temps, mais rendre les notifications de panne d'alimentation fiables à 100% peut être délicat, et toutes les implémentations ne sont pas parfaites. .


528 octets? Voulez-vous dire 512?
Alvin Wong

1
@AlvinWong: Les pages ont 528 octets. L'écriture d'un secteur de 512 octets nécessite non seulement le stockage des données de celui-ci, mais également une indication du secteur auquel ces données appartiennent. À tout moment, un lecteur est susceptible de savoir "J'ai déjà reçu 5 271 591 371 demandes d'écriture, et je vais utiliser la page 15 du bloc 57 pour la suivante.". S'il reçoit une demande d'écriture de 512 octets de données dans le secteur 147, la page 15 du bloc 57 recevra ces 512 octets de données plus une indication indiquant qu'ils représentent la 5 271 591 372e demande d'écriture, qui était destinée au secteur 147.
Supercat

Si le système reçoit une demande de lecture du secteur 147, de nombreuses pages sur le disque peuvent contenir un secteur 147, mais (en l'absence d'une autre demande d'écriture du secteur 147), aucune d'entre elles n'aura un numéro de séquence supérieur à 5 271 591 372; ainsi, la page 15 du bloc 57 sera identifiable comme la version "actuelle" de ce secteur, et toute copie numérotée en bas sera reconnaissable comme obsolète. Notez qu'en théorie, le système pourrait répondre à une requête "lire le secteur 147" en balayant toutes les pages pour trouver celle qui contenait la version la plus récente, mais cela serait terriblement lent.
Supercat

Plus généralement, un système utilisera des structures de données plutôt intéressantes pour conserver en flash un tableau presque toujours à jour indiquant où tout est situé, ainsi qu'un indicateur pour lequel des pages physiques dans le flash peuvent avoir été écrites depuis le tableau. a été mis à jour pour la dernière fois. Si la conception matérielle est telle que toute tentative d'écriture de page utilise complètement l'énergie stockée, même si l'alimentation est coupée, le lecteur écrit une page indiquant que "la demande d'écriture 5 271 591 372 était du secteur 147, et voici ses données". être considéré pour mettre à jour cette page.
Supercat

8

Windows lui-même vous dit que vous n'avez pas besoin d'utiliser l'option Retirer le périphérique en toute sécurité si vous utilisez certains paramètres, à savoir les paramètres par défaut.

Retrait rapide vs meilleures performances

Windows vous permet d'optimiser votre périphérique USB pour un retrait rapide ou de meilleures performances. Par défaut, Windows optimise les périphériques USB pour une suppression rapide. Vous pouvez accéder à ce paramètre à partir du gestionnaire de périphériques - ouvrez le menu Démarrer, tapez Gestionnaire de périphériques et appuyez sur Entrée pour le lancer.

Développez la section Lecteurs de disque dans le Gestionnaire de périphériques, cliquez avec le bouton droit de la souris sur votre périphérique, puis sélectionnez Propriétés.

Sélectionnez l'onglet Stratégies dans la fenêtre Propriétés. Vous remarquerez que Windows indique que vous pouvez déconnecter votre périphérique USB en toute sécurité sans utiliser l'icône de notification Supprimer le périphérique en toute sécurité, ce qui signifie que vous pouvez le débrancher sans le retirer en toute sécurité, n'est-ce pas? Pas si vite.

Danger de corruption de données

La boîte de dialogue Windows présentée ci-dessus est trompeuse. Si vous débranchez votre périphérique USB alors que des données y sont écrites (par exemple, lorsque vous y déplacez des fichiers ou que vous y enregistrez un fichier), les données risquent d'être corrompues. Quelle que soit l'option choisie, vous devez vous assurer que votre périphérique USB n'est pas utilisé avant de le débrancher. Certaines clés USB peuvent comporter des voyants qui clignotent pendant leur utilisation.

Cependant, même si le périphérique USB ne semble pas être utilisé, il peut toujours l'être. Un programme en arrière-plan est peut-être en train d'écrire sur le lecteur. Par conséquent, des données peuvent être endommagées si vous débranchez le lecteur. Si votre clé USB semble ne pas être utilisée, vous pouvez probablement la débrancher sans que les données ne soient corrompues. Toutefois, pour des raisons de sécurité, il est toujours judicieux d’utiliser l’option Retirer le périphérique en toute sécurité. Lorsque vous éjectez un périphérique, Windows vous indique le moment opportun pour le supprimer - assurez-vous que tous les programmes sont terminés. Écrire en cache

Si vous sélectionnez l'option Meilleures performances, Windows mettra en cache les données au lieu de les écrire immédiatement sur le périphérique USB. Cela améliorera les performances de votre périphérique. Toutefois, la corruption des données est beaucoup plus susceptible de se produire si vous débranchez le périphérique USB sans utiliser l'option Supprimer le périphérique en toute sécurité. Si la mise en cache est activée, Windows n'écrira pas les données sur votre périphérique USB immédiatement. Même si les données semblent avoir été écrites sur le périphérique et que toutes les boîtes de dialogue de progression du fichier sont fermées, les données peuvent simplement être mises en cache sur votre système.

Lorsque vous éjectez un périphérique, Windows vide le cache d'écriture sur le disque, en veillant à ce que toutes les modifications nécessaires soient apportées avant de vous informer que le retrait du lecteur peut être effectué en toute sécurité. En fin de compte, quelle que soit l'option utilisée, vous devez utiliser l'icône Supprimer le périphérique en toute sécurité et éjecter votre appareil avant de le débrancher. Vous pouvez également cliquer dessus avec le bouton droit de la souris dans la fenêtre Ordinateur et sélectionner Éjecter. Windows vous indiquera quand retirer le périphérique en toute sécurité, éliminant ainsi toute modification de la corruption des données.

Remarque Ce conseil ne s'applique pas uniquement à Windows. Si vous utilisez Linux, vous devez également utiliser l'option Éjecter de votre gestionnaire de fichiers avant de débrancher un périphérique USB. Il en va de même pour Mac OS X.


2
Dans la ligne de commande Linux, vous pouvez également utiliser le fichier umount /path/to/device. : D
Justin Pearce le

1
@JustinPearce Ce qui est distinct de eject /dev/ice.
un CVn

1
@AugustusFrancis Merci d'avoir mentionné que ce "problème" ne s'applique pas uniquement à Windows, il affecte également d'autres systèmes d'exploitation.
Simon

1
Sensationnel. Cette réponse est jolie, et ne compte que 7 points. Le premier compte actuellement 103 points et concerne la fonctionnalité de mise en cache secondaire qui n’est même pas activée par défaut. Les deux réponses suivantes contiennent actuellement 45 et 21 points et sont, au mieux, spéculatives. Elles traitent des détails de l’implémentation matérielle sans faire référence à aucun type de source ou de documentation pour sauvegarder leurs revendications. Parfois, je suis un peu inquiet à propos de l'état de super utilisateur ...
Zero3

8

Si vous ne supprimez pas vos périphériques en toute sécurité, les périphériques fantômes restent sous Windows. Ce n’est généralement pas un problème immédiat, mais une fois que vous avez amassé quelques centaines d’appareils fantômes, les choses commencent à mal tourner.

EDIT FOR CLARIFICATION: Les périphériques fantômes sont, en bref, des périphériques sur lesquels des pilotes sont installés mais ne sont plus connectés au port USB. Windows garde la trace des périphériques installés, mais comme ces périphériques n'ont pas été "retirés en toute sécurité", le pilote est toujours chargé pour ce port USB. Cela peut entraîner divers problèmes, allant de l’attribution d’une nouvelle lettre de lecteur lorsque vous branchez votre lecteur flash à la détection de contrôleurs absents par les jeux vidéo. Lorsque vous supprimez un périphérique de Windows en toute sécurité, vous ne vous contentez pas de vous assurer qu'il n'écrit plus de données, vous demandez à Windows de décharger le pilote de ce port USB. Débrancher votre lecteur à la volée risque non seulement de corrompre les données, mais également de créer un périphérique fantôme que Windows ne gère pas bien.

Par défaut, Windows n’affiche pas les périphériques fantômes dans le Gestionnaire de périphériques, raison pour laquelle la plupart des gens ne connaissent pas le concept. Pour rechercher manuellement ces périphériques, exécutez Invite de commandes en tant qu'administrateur et entrez set devmgr_show_nonpresent_devices=1. Cela permettra au Gestionnaire de périphériques d’afficher les périphériques fantômes pour la session en cours.

Il est tout à fait possible qu'il y ait trop de périphériques fantômes pour pouvoir les supprimer facilement à la main. GhostBuster est une interface graphique légère conçue pour afficher et supprimer facilement les périphériques fantômes.

Référence: https://windowssecrets.com/newsletter/how-to-prevent-and-remove-phantom-devices/


Je n'ai jamais rencontré le terme "dispositifs fantômes", merci de l'avoir amené à la table ... donc pour parler :)
Simon

Je n'avais pas entendu parler d'eux jusqu'à l'autre jour lorsqu'un de mes amis a posté cette petite interface graphique chouette. GhostBuster
acarbonaro le

Est-il possible d'expliquer, dans votre réponse ci-dessus, davantage sur "l'effet de périphérique fantôme", personne d'autre n'en ayant parlé? Juste au cas où le lien dans votre réponse disparaîtrait à un moment donné, si cela ne vous dérange pas.
Simon

J'espère avoir ajouté suffisamment d'informations, mais si vous pensez qu'il en faut plus, j'y ajouterai volontiers tout ce qui est nécessaire.
acarbonaro

Heureux d'avoir pu aider!
acarbonaro

6

En général, lorsque l'ordinateur écrit sur le lecteur USB, vous courez le risque de corrompre le système de fichiers ou les fichiers lorsque vous l'extrayez sans le supprimer en toute sécurité.

FAT32

Ensuite, lorsque vous avez un disque FAT32 utilisant les paramètres par défaut de Windows, Windows ne met pas en cache les écritures, vous pouvez donc extraire le disque lorsqu'il n'est pas en cours d'écriture.

Toutefois, vous pouvez améliorer les performances FAT32 en activant la mise en cache en écriture. Cependant, vous devez alors retirer le lecteur en toute sécurité sinon toutes les données ne sont pas écrites sur le disque.

entrez la description de l'image ici

NTFS

Et lorsque vous utilisez NTFS, comme il s’agit d’un système de fichiers journalisé, vous ne pouvez pas casser le système de fichiers en extrayant le lecteur. Cependant, vous perdrez ou corromprez des fichiers si vous le faites.

La suppression des surprises ne provoque pas de corruption, du moins du point de vue de NTFS. Les structures de données du système de fichiers restent intactes (ou peuvent au moins être réparées à partir du journal des modifications), quel que soit le moment où vous extrayez le lecteur de l'ordinateur. Donc, du point de vue du système de fichiers, la réponse est "Allez-y, tirez le lecteur à tout moment!"

NTFS étant un système de fichiers journalisé, il peut réparer automatiquement les structures de données internes utilisées pour garder une trace des fichiers, de sorte que le lecteur reste logiquement cohérent. Le fichier est correctement défini sur la taille finale et son entrée de répertoire est correctement liée. Mais les données que vous avez écrites dans le fichier? Cela n'a jamais réussi.

Même si NTFS est robuste et peut récupérer de la suppression surprise, cette robustesse ne s'étend pas à la cohérence interne des données que vous avez perdues.

- Raymond Chen


J'ai des cas de corruption NTFS sur le pas très souvent (heureusement!), Mais régulièrement.
Free Consulting

3

Avez-vous déjà remarqué que, parfois, en éjectant «en toute sécurité» une clé USB, il faut plusieurs secondes pour que l'on vous dise qu'il est prudent de la retirer? Et que pendant ce temps, le disque continue à clignoter, son voyant d'activité?

Je le vois souvent, et cela seul est une indication suffisante pour que je ne risque pas d'extraire un disque, même s'il ne semble jamais perdre de données lorsque je l'extrais accidentellement parfois.

Un peu plus de fond sur ce qui peut se passer:

Corruption de disque possible.

D'autres les ont déjà assez bien expliquées, notamment celle de supercat qui est assez importante pour les lecteurs flash.

Problèmes de programme possibles.

C’est là que les programmes dont les fichiers sont ouverts sur le disque ne sont pas bien préparés pour traiter le cas où les fichiers deviennent soudainement inaccessibles. Ces programmes risquent alors de tomber en panne ou de geler, en fonction de la qualité de leur développement.

Par conséquent, en utilisant la commande "remove hardware safe", vous démarrez un processus dans le système d'exploitation qui demande à ces programmes de laisser partir le disque. Une fois que tous les programmes ont lâché prise si nécessaire, on vous dit que vous pouvez maintenant déconnecter le disque en toute sécurité.

Cependant, si un programme en cours d'exécution ne lâche pas le disque, on vous le dira également, et vous aurez alors la possibilité de fermer ce programme afin qu'il cesse d'utiliser le disque, empêchant ainsi la corruption des données sur le disque. et les problèmes de programme sur votre ordinateur.

Encore plus de fond sur la mise en cache et la corruption de disque

Un disque qui stocke des fichiers fonctionne comme une bibliothèque avec des index. Le défi est que l’index doit être synchronisé avec les livres (fichiers) qu’il contient. Lorsque vous ajoutez / supprimez un fichier sur un disque, son index (le répertoire) doit également être mis à jour. Tout cela se fait en plusieurs étapes, et extraire le disque au milieu de celui-ci conduit à des structures de disque corrompues (pour les identifier et les réparer, des outils tels que "chkdisk" viennent à la rescousse).

Cependant, garder les répertoires à jour tout le temps demande beaucoup de temps et d’écriture. Ainsi, si vous écrivez 100 fichiers sur le disque, le système d'exploitation (Windows, par exemple) n'écrit pas chaque fichier suivi d'une mise à jour du répertoire (souvent le même), mais optimise cette opération en écrivant d'abord les données des 100 fichiers sur le disque. , et alors seulement écrivez le répertoire mis à jour en une fois.

Une telle optimisation accélère considérablement la copie (et la suppression) de fichiers, et les systèmes d'exploitation modernes ont tendance à retarder autant que possible la mise à jour du répertoire afin d'accélérer encore davantage la mise en route de l'ordinateur.

En d'autres termes, le système d'exploitation ne conserve le répertoire correct que dans sa mémoire locale (RAM ou disque dur interne, qui est généralement encore plus rapide que la connexion USB). C’est la mise en cache dont parlent d’autres: Conserver les données dans un emplacement distinct pour un accès plus rapide.

Mais que se passe-t-il si tout l’ordinateur subit une panne de courant? Eh bien, même dans ce cas, il existe des moyens de le récupérer dès qu'il est remis sous tension, en gardant le répertoire intact (en utilisant "journalling", par exemple). Bien sûr, cela ne fonctionne que si le disque dont le répertoire a été mis en cache est toujours présent après le retour du courant - ce qui est généralement le cas, donc rien à craindre ici.

Mais toutes ces garanties ne peuvent pas fonctionner si vous supprimez simplement le disque et ne donnez pas au système d'exploitation d'écrire son répertoire mis en cache sur le disque, de toute évidence.

Par conséquent, vous annoncez au système d'exploitation (et aux programmes qu'il exécute) que vous souhaitez supprimer le disque. Ce processus, également appelé "démontage", conduit à l'écriture de toutes les données mises en cache sur le disque, puis à l'arrêt de tout accès ultérieur.


1

Flash ne peut écrire que ses zéros. Il est capable d'effacer un bloc entier (en le mettant à zéro). Étant donné que la plupart des supports Flash utilisent l' usure, cela ajoute uniquement un bloc à une liste "à supprimer" et utilise un autre bloc. Le contrôleur de votre support USB commence à effacer les blocs de la liste "à supprimer" chaque fois que rien ne doit être fait. Le branchement de l'alimentation pendant l'effacement des blocs peut les laisser dans un état non défini.


Si telle était la réponse, cela impliquerait que vous ne pourrez jamais retirer un lecteur USB en toute sécurité car la mise à niveau de l'usure est effectuée par le contrôleur du lecteur, et non par le système d'exploitation.
un CVn

Mais il y a une différence entre éjecter et démonter. Sous certains systèmes d'exploitation (Mac OS X), il est possible de démonter un lecteur mais de ne pas l'éjecter. Si vous éjectez une clé USB, vous ne devriez plus pouvoir la remonter car le périphérique est hors tension.
Frog32

Tout ce qui se trouve à ce niveau doit être transactionnel - le bloc ne sera pas supprimé de la file d'attente "à supprimer" tant qu'il n'aura pas été réellement supprimé. Son état ne serait pas indéfini - si le système n'effectue pas l'effacement, il devrait simplement reprendre (à partir du début du bloc) la prochaine fois.
GalacticCowboy

@ GalacticCowboy: les lecteurs sont supposés être transactionnels, mais toutes les implémentations ne sont pas aussi robustes. Si les opérations d'écriture sont fortement transactionnelles, les opérations d'effacement (qui prennent plus de temps) ne sont pas trop difficiles, mais il peut être difficile de garantir l'impossibilité d'une coupure de courant pendant une écriture ne peut éventuellement donner lieu à un bit qui se lit comme écrit. 99% du temps, mais lit parfois comme vide. On peut peut-être réduire la probabilité qu'un tel événement se produise, mais il est difficile de l'éliminer complètement.
Supercat

@supercat - Cela ne change toutefois pas ce que j'ai dit - si le lecteur était mis hors tension pendant l'effacement, la file d'attente ne serait pas modifiée et le bloc serait simplement effacé plus tard. Si l'alimentation est coupée lors de la réécriture de la file d'attente , oui, cela pourrait poser problème, mais comme vous l'avez noté dans votre réponse, l'écriture est nettement plus rapide (donc moins de risques d'être interrompue). Ce n’est toujours pas impossible, mais ce n’est pas quelque chose dans lequel vous devez probablement vous inquiéter.
GalacticCowboy

1

Quelle est la raison derrière le retrait en toute sécurité du support USB des ordinateurs Windows?

Cette fonction concerne les supports amovibles . Cela signifie que les supports connectés via USB, FireWire et, en tant que tels, peuvent être déconnectés à tout moment.

Accéder au lecteur pour y écrire toutes les données demandées alourdirait considérablement le travail du lecteur, ce qui réduirait les performances et augmenterait l'usure. Pour augmenter les performances et réduire l'usure, Windows peut mettre en cache des données afin d'écrire un tas de données à la fois. C'est comme retarder un voyage à l'autre bout de la ville jusqu'à ce que vous ayez assez de courses à faire pour que le voyage en vaille la peine.

Le problème de la mise en cache est que, si le lecteur est débranché entre le moment où la demande d'écriture a été faite et le moment où Windows «vide» le cache sur le disque (effectue effectivement l'écriture), ces données ne sont pas écrites. Cela entraîne une perte de données et peut-être même une corruption.

En «éjectant» un volume amovible, vous indiquez à Windows de vider le cache et d'écrire les données en attente. De cette façon, vous vous assurez que vous pouvez débrancher le lecteur en toute sécurité.

Très souvent, lorsque je suis pressé, je débranche automatiquement une clé USB ou un câble USB d'un disque dur externe de mon ordinateur de bureau ou de mon ordinateur portable, sans cliquer avec le bouton droit de la souris sur l'icône Retirer en toute sécurité dans la barre d'état système et la débrancher via cette route. . Jusqu'à présent, rien d'inquiétant ne s'est produit chaque fois que je suis "pressé".

C'est principalement parce que Microsoft n'est pas stupide (ne discutons pas ici…). Ils savent que les gens n'aiment pas faire un travail supplémentaire. Par conséquent, lorsque vous connectez un support amovible au système pour la première fois, lorsque Windows installe des pilotes, une partie de la configuration consiste à le définir pour un «retrait rapide».

Dans le Gestionnaire de périphériques , dans l' onglet Stratégies de la boîte de dialogue Propriétés de vos lecteurs, selon le type de lecteur, vous pouvez choisir de configurer le lecteur pour un retrait rapide ou une amélioration des performances, ou d'activer ou de désactiver la mise en cache d'écriture.

L'activation de la mise en cache en écriture ou la sélection de meilleures performances obligeront Windows à mettre en file d'attente les demandes d'écriture, ce qui augmentera les performances et réduira l'usure, mais augmentera également les risques de perte de données et nécessitera l'éjection du volume avant de le supprimer. Désactiver la mise en cache en écriture ou sélectionner la suppression rapide oblige Windows à tout écrire immédiatement sur le disque, ce qui réduit les performances et augmente l'usure, tout en permettant de retirer simplement le lecteur.

Étant donné que Windows utilise par défaut les supports amovibles pour une suppression rapide, la plupart des utilisateurs ne rencontrent que rarement un problème simplement en les débranchant sans les éjecter.


Les captures d'écran ci-dessous montrent les stratégies de lecteur par défaut pour divers supports. Il y a peu de points intéressants à noter.

Le disque dur interne est configuré pour utiliser la mise en cache en écriture (figure 1). Cela a du sens car il est supposé que le lecteur est une installation permanente, de sorte qu’il ne deviendra jamais normalement indisponible dans la courte période entre une demande d’écriture et un vidage de la mémoire cache.

Le lecteur flash USB est configuré pour un retrait rapide (figure 2). Cela aussi a du sens car il est pratique de le retirer facilement.

La carte mémoire USB est configurée pour un retrait rapide (figure 3). Ceci est logique car il n’est essentiellement pas différent d’un lecteur flash USB (ou de tout autre lecteur USB). Ce qui est intéressant, c’est que le lecteur de carte mémoire interne est également configuré pour un retrait rapide (figure 4). Le lecteur lui-même est intégré à l'ordinateur portable et est donc toujours présent, mais la carte peut être retirée. Par conséquent, le retrait rapide est activé. (Il en va de même pour les lecteurs de disquettes; il n'y a pas de mise en cache car le disque du lecteur pourrait être supprimé.)

Le disque dur externe USB (figure 5) et l’iPod mini (figure 6), qui contient un petit disque dur en rotation, sont encore plus intéressants. Ce sont des disques durs réels, pas des disques flash, mais parce qu'ils sont amovibles, ils sont toujours par défaut à retrait rapide. Encore une fois, cela a du sens car ils peuvent être débranchés avant que les données ne soient écrites sur le disque.

Puis-je vraiment perdre des informations sur le support USB si cela n'est pas fait?

La vulnérabilité liée à la perte de telles informations est-elle considérablement accrue si le support USB continue de clignoter au moment de le retirer de l'ordinateur (par opposition au non-clignotant)?

Oui. Le problème est que même si un lecteur est configuré pour un retrait rapide, il n'est pas sûr de le débrancher immédiatement. Le fait que Windows effectue les écritures immédiatement ne signifie pas qu’elles se produisent immédiatement.

La plupart des supports amovibles tels que les lecteurs flash et les cartes mémoire sont beaucoup plus lents que les disques durs. Par conséquent, même si Windows lance l'écriture dès qu'elle est demandée, il faut généralement quelques instants pour que les données soient réellement écrites. Même si le / écrire / copier / etc. Une boîte de dialogue indiquant que la progression de l’écriture s’est éteinte, le lecteur est peut-être encore en train d’écrire pendant quelques instants supplémentaires, et si elle possède son propre voyant d’activité du lecteur, vous pouvez le voir. Il n'est pas prudent de retirer le support immédiatement. observez le voyant et attendez qu'il cesse complètement de clignoter.


Pour plus de sécurité, vous pouvez utiliser un programme tel que Sync, dites à Windows de vider le cache. En gros, c'est exactement la même chose que d'utiliser la fonction éjecter en toute sécurité, mais cela peut être un peu plus pratique si vous créez un raccourci sur le bureau pour l'exécuter avec la lettre de lecteur spécifique de votre lecteur amovible. Cela vous fera économiser environ 5 à 10 secondes, ce qui ne semble pas beaucoup, mais dans HCI, c'est un obstacle énorme . Ce qui est encore mieux, c’est qu’il ne vide que le cache, mais n’éjecte pas le lecteur. Par conséquent, le lecteur est toujours monté et disponible pour une utilisation si vous vous rappelez soudainement quelque chose que vous avez oublié de faire avec. Cela le rend encore plus utile, car vous pouvez même lui attribuer un raccourci clavier pour vider le cache et le rendre sûr pour le débranchement avec une frappe.


Figure 1 : politique interne du disque dur

Politique interne du disque dur

Figure 2 : stratégie de lecteur flash USB

Politique de clé USB

Figure 3 : stratégie de lecteur de carte mémoire interne

Politique de lecteur de carte mémoire interne

Figure 4 : stratégie de lecteur de carte mémoire USB

Politique de lecteur de carte mémoire USB

Figure 5 : Stratégie de disque dur externe

Politique de disque dur externe

Figure 6 : iPod (mini) disque dur

Politique relative à l'iPod mini HDD

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.