Windows calcule-t-il les CRC pour vérifier chaque opération de fichier?

8

Lorsque Windows rencontre une corruption de fichiers sur un système de fichiers, il peut renvoyer le message d'erreur suivant:

Erreur de données (contrôle de redondance cyclique).

Cela suggère que Windows vérifie chaque opération de fichier (copie, déplacement, etc.) en calculant les CRC . Windows le fait-il vraiment, que ce soit pendant ou après l'opération?

bwDraco
la source

Réponses:

6

Windows n'effectue en fait aucune redondance sur les transferts de fichiers, il s'agit d'un terme impropre pour le pilote de périphérique accédant à un bloc de secteur défectueux (voir la question SO de quoi et où se plaint le Windows NT CRC CRC? Et cet article de Microsoft KB ; NTFS ne stocke aucun type de somme de contrôle de fichier). Si vous recevez cette erreur sur votre ordinateur, vous devez garantir l'intégrité de votre disque dur (et éventuellement l'invoquer chkdskavec l' /rindicateur).

Pour faire court, Windows ne vérifie aucun fichier après son transfert. Vous pouvez utiliser un autre outil logiciel comme TeraCopy pour vérifier les données après avoir déplacé / copié des fichiers.

Percée
la source
J'ai regardé la question liée au débordement de pile . Ce que je demande, c'est si Windows calcule les CRC à la volée pendant les opérations sur les fichiers, pas nécessairement s'il les stocke.
bwDraco
@DragonLord Je ne le crois pas, sinon ces erreurs se produiraient lors d'erreurs normales de lecture / écriture où il n'y a pas de mauvais secteurs signalés. Vous pouvez utiliser un utilitaire tiers pour vérifier réellement le contenu des fichiers une fois qu'ils ont été transférés.
Percée
Modification de la question pour clarifier. Windows effectue-t-il une vérification des erreurs lorsqu'une opération de fichier est en cours ?
bwDraco
@DragonLord d'après mon expérience, non. J'ai déjà utilisé Windows pour copier des fichiers sur de mauvais disques et je n'ai parfois pas reçu le message d'erreur. Ils n'ont été détectés que lorsque j'ai essayé manuellement de vérifier le CRC (ou le hachage MD5 / SHA1) des fichiers et ils ne correspondaient pas. Je crois que le message d'erreur ne s'affiche que lorsque le pilote de périphérique de disque réel génère une erreur pendant le transfert ou que le système de fichiers NTFS lui-même détecte une sorte de corruption.
Percée
1
Il y a en fait trois conditions distinctes qui peuvent provoquer cette erreur (dans l'interface IDE / SATA typique du disque dur conventionnel): 1) Corruption des données sur la connexion entre le disque dur et le contrôleur. 2) Altération des données dans les données lues par le contrôleur de disque depuis la surface du disque malgré les nouvelles tentatives. 3) Accès à un secteur de disque mal connu par le contrôleur qui ne peut pas être remappé jusqu'à ce qu'il soit écrit dans.
David Schwartz