Soit vous avez la chance de n'avoir jamais eu de données corrompues, soit vous avez la malchance de n'avoir jamais remarqué que vos données étaient corrompues.
Lorsque vous effectuez une action qui doit écrire sur un disque, la plupart des systèmes d'exploitation placent l'opération d'écriture dans une file d'attente. De temps en temps, la file d'attente est vidée. (J'appelle cela une file d'attente ici, mais en réalité les opérations peuvent être effectuées dans le désordre, les systèmes d'exploitation le font lorsque c'est plus rapide et que cela donne le même résultat final). Cela peut rendre les opérations d'écriture beaucoup plus rapides, à la fois parce que le système essaie de les exécuter lorsqu'il n'a rien de mieux à faire et parce qu'il peut les regrouper intelligemment.
Si vous débranchez votre appareil avant que tout ait été écrit, vous risquez de manquer les dernières données. Pire encore, si le système d'exploitation a effectué des opérations dans le désordre, vous risquez de placer votre appareil dans un état incohérent et de perdre plus que les dernières données.
Certains systèmes d'exploitation passent à un mode plus conservateur (mais plus lent) pour les périphériques amovibles, afin de réduire les risques associés au débranchement du périphérique avant qu'il n'ait été démonté.
AJOUTÉ :
Effectuer des opérations dans le désordre n'est pas toujours une simple question de rapidité. Les supports flash bon marché (qui n'utilisent pas la réallocation de secteurs au niveau matériel) sont limités dans le nombre de fois où vous pouvez écrire sur un secteur donné. Si vous écrivez naïvement tous les changements au fur et à mesure qu'ils se produisent, cela peut tuer les secteurs qui contiennent la table d'allocation des fichiers sur un système de fichiers (V)FAT (le cas le plus courant pour les disques amovibles) ou le journal sur un système de fichiers moderne typique. (Voir par exemple cette discussion sur les sync
sur la liste de diffusion du noyau Linux .) Dans ce cas, le fait de ne pas mettre à jour la FAT ou le journal à chaque fois qu'un fichier est écrit n'est pas seulement un gain de performance important, c'est aussi une bonne chose pour la durée de vie du matériel.
Jusqu'à récemment, Linux ne donnait le choix qu'entre sync
(écrire tous les changements au fur et à mesure qu'ils se produisent) et async
(écrire quand cela convient). Les versions récentes introduisent l'option flush
pour les systèmes de fichiers FAT, qui se situe entre les deux (effacer toutes les écritures retardées dès que le disque devient inactif) ; elle est activée par défaut dans Ubuntu 10.04.
Par ailleurs, le démontage d'un disque amovible permet de s'assurer qu'aucune application n'a de fichier ouvert. Si vous ne démontez pas le disque avant de le débrancher, vous ne vous apercevrez que trop tard qu'il y a des données non sauvegardées. Le démontage d'un fichier ouvert augmente également les risques de corruption, tant au niveau du système de fichiers (le système d'exploitation peut avoir mis en attente certaines opérations jusqu'à ce que le fichier soit fermé) qu'au niveau de l'application (par exemple, si l'application place un fichier verrouillé, il ne sera pas supprimé).