web-dev-qa-db-fra.com

Comment forcer une reconfiguration des secteurs déclarés dans S.M.A.R.T C5 (Nombre actuel de secteurs en attente)?

La valeur S.M.A.R.T C5 de mon disque dur Samsung HM640JJ (dans un ordinateur portable HP Pavilion dv6) est "statut jaune = attention"

C5 était 10 hier, et 21 aujourd'hui.

C4 (Reallocation Event Count) = 0 et 05 (Reallocated Sectors Count) = 0

Comment puis-je forcer le firmware à les réaffecter?

  • J'ai supprimé les partitions, les ai recréées et formaté l'intégralité du lecteur.
  • J'ai couru chkdsk /r /f
  • J'ai exécuté l'utilitaire de vérification du disque du BIOS et d'autres outils de diagnostic/réparation
37
edteke

Réponse courte: Écrivez quelque chose de nouveau dans le secteur (même les zéros - ce que fait un format long).

Longue réponse

Les disques durs essaient aujourd'hui de masquer les secteurs défectueux de l'ordinateur hôte. L'ordinateur hôte demande simplement au lecteur de renvoyer le contenu d'un numéro de secteur particulier. Normalement, le lecteur lit le secteur, le renvoie à la machine hôte et tout va bien.

Le disque dur sait si la valeur lue est valide ou non, car il utilise Code de correction d'erreur (ECC) pour valider que le contenu lu est correct. Si le lecteur détecte que le contenu du secteur n'est pas valide, il relancera la lecture. L'espoir est que s'il le relit simplement, il obtiendra le contenu correct du secteur. Il réessayera jusqu'à ce qu'il obtienne une bonne valeur ou qu'il atteigne sa limite de temps (anciennement appelé Heure limite de commande, ou CCTL).

Pendant ces tentatives, le lecteur semblera mort; comme il ne répond plus aux commandes .

secteurs de réserve

La plupart des lecteurs modernes contiennent un certain nombre de "réserves" secteurs (par exemple 1 024 secteurs disponibles). Si le lecteur reconnaît un secteur comme étant mauvais, il cessera de l'utiliser. Toute demande de lecture ou d'écriture sur ce secteur endommagé sera redirigée de manière transparente vers un secteur de réserve. Ce marquage d'un secteur défectueux et la réallocation de ses données vers un secteur de réserve s'appelle un événement de réaffectation . Et le nombre total de secteurs qui ont été réaffectés (et donc combien de vos secteurs de réserve ont été épuisés) est le Nombre de secteurs réaffectés .

Dans cet exemple d'un de mes propres disques durs, 64 secteurs ont été trouvés mauvais. Cela signifie que 64 des secteurs de réserve du lecteur ont été appelés:

ID                             Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ===
(05) Reallocated Sector Count  192      192    140        64

Sur ce même disque dur, il y a eu 4 Evénements de réallocation . Cela signifie que, dans quatre cas, le lecteur a marqué les secteurs comme étant mauvais et a utilisé des secteurs de réserve.

ID                             Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ===
(05) Reallocated Sector Count  192      192    140         64
(C4) Reallocated Event Count   196      196    0            4

Et si il ne peut jamais lire les données?

Ces actions de relire des secteurs, de consommer des pièces de rechange, tout cela derrière le dos de l'ordinateur est une bonne chose. Cela signifie que le système d'exploitation hôte n'a pas à traiter le problème des secteurs défaillants. Le lecteur lui-même peut gérer ces détails lui-même.

Bonus Chatter : Autrefois, votre disque dur était expédié avec un autocollant. Cet autocollant contenait la liste des défauts d’usine; la liste de tous les points négatifs connus sur le lecteur.

 enter image description here

Si vous exécutiez un formatage de bas niveau du lecteur, vous deviez utiliser un outil pour taper tous les Cylinder-Head-Sector emplacements des points négatifs.
Les lecteurs SCSI disposent d’une commande IOCTL_DISK_REASSIGN_BLOCKS pour leur dire de réaffecter un emplacement défectueux sur le lecteur après sa détection par le système d’exploitation. Dans les lecteurs IDE, tout cela se fait automatiquement, sans intervention du système d'exploitation.

Idéalement, le lecteur devrait reconnaître que le secteur est en panne, déplacer les données vers un secteur de réserve et ne plus jamais utiliser le secteur d'origine. Mais que se passe-t-il si le lecteur n'a pas réussi à lire le secteur?

C'est ce que sont Pending Sectors. Le lecteur a détecté la défaillance d’un secteur et doit être remappé sur un secteur en réserve. Mais il ne peut pas le faire avant d'avoir réussi à lire les données. Lorsque le lecteur sait qu'un secteur est défectueux et doit être remappé, il ne peut pas encore le faire car il attend une lecture correcte du secteur: cela s'appelle le Nombre de secteurs en attente :

ID                             Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ====
(05) Reallocated Sector Count  192      192    140          64
(C4) Reallocated Event Count   196      196    0             4
(C5) Current Pending Sector    100      100    0             2

Mon disque dur a 2 secteurs que le lecteur reconnaît comme mauvais, mais ne peut pas encore être réaffectés. Si vous lisiez l’un de ces ‘secteurs en attente’, le lecteur essaierait probablement (et réessayait et réessayait), puis renvoyait une erreur de lecture au système d’exploitation hôte:

enter image description here

Abandonnez le secteur en attente et il sera réaffecté

Le lecteur peut enfin réaffecter le secteur et consommer un autre secteur disponible:

  • il a enfin une bonne lecture
  • vous ne vous souciez plus de ce qu'il y a dans le secteur

Si le lecteur lit enfin le secteur, il sait qu'il peut réaffecter le secteur.

L’autre manière de réaffecter le secteur est de l’autoriser si vous lui indiquez que le contenu de ce secteur n’est pas pertinent; que vous ne vous souciez plus de ce qu'il y a dedans. Comment tu fais ça?

En écrivant quelque chose de nouveau dans le secteur.

Chaque fois que vous lisez ou écrivez dans un secteur d'un disque dur, vous devez lire/écrire le secteur entier / 512 octets.1. Vous n'êtes pas en mesure d'écrire uniquement partie d'un secteur. Lorsque le système d'exploitation écrit des données dans un secteur, il doit spécifier le entier 512 octets. Si vous indiquez au disque dur que vous souhaitez que ces nouveaux contenus remplacent ce secteur défectueux, le lecteur sait alors que vous ne vous souciez même pas de ce qui se trouve actuellement dans le secteur défectueux. Il peut alors réaffecter un secteur défectueux à l’un des disques de rechange, et le secteur n’est plus en attente .

C'est pourquoi, lorsque les utilisateurs demandent à avoir unCurrent Pending Sectors, il est généralement conseillé d'utiliser un outil (tel que Data LifeGuard de Western Digital) pour écrire tous les zéros sur le lecteur.

enter image description here

En écrivant des zéros sur chaque secteur du lecteur, vous indiquez au lecteur qu'il peut enfin réaffecter tous ces embêtants secteurs en attente . Après le nettoyage, tous vos Pending Sectors deviendront Reallocated Sectors:

ID                             Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ====
(05) Reallocated Sector Count  192      192    140          66
(C4) Reallocated Event Count   196      196    0             5
(C5) Current Pending Sector    100      100    0             0

Remarque: Il n'est pas strictement nécessaire d'utiliser un outil de "bas niveau" tel que Data LifeGuard de Western Digital. Si vous demandez à Windows d’effectuer un format complet (c’est-à-dire non - Quick format), il écrit des zéros sur chaque secteur du volume.

Le système de classement OS prend en charge le marquage des secteurs comme mauvais

Forts de cette connaissance, nous allons explorer un scénario souvent déroutant.

Avant l'avènement de Integrated Drive Electronics (IDE), le système d'exploitation hôte était chargé de détecter les secteurs défectueux, de relancer les lectures, de transférer les données dans un autre secteur et de marquer les anciens secteurs comme étant défectueux.

Si vous exécutiez un chkdsk /r c: à l'aide du système d'exploitation hôte, il reconnaîtrait que les secteurs "en attente" sont incorrects et les marquerait comme tels, sans jamais essayer de les utiliser à nouveau:

> C:\Windows\system32>chkdsk /r c:
The type of the file system is NTFS.
Volume label is OS.

        12 KB in bad sectors.

Donc, en supposant un disque dur de secteur de 512 octets, 12 Ko de «secteurs en attente» ou, dans cet exemple, 12 ko marqués par le système d'exploitation comme «secteurs défectueux», cela correspondrait à un nombre décimal 24 ou hexadécimal 0x18, comme le montre un S.M.A.R.T. Utilitaire de disque tel que Informations sur le disque Crystal:

ID   Attribute Name            Current  Worst  Threshold  Raw  
=============================  =======  =====  =========  ====
(C5) Current Pending Sector    100      100    0            18

Remarque : L’utilitaire Data LifeGuard v1.31 (le dernier en date du 31/08/2017) de Western Digital ne semble pas afficher correctement les valeurs actuelles du compteur S.M.A.R.T. ‘Raw '.

Maintenant, si vous effectuez un format complet (ce qui écrit des zéros sur chaque secteur du volume)}:

enter image description here

Cela signifie que tous les secteurs qui étaient Pending vont être réaffectés. Il est maintenant sûr que le système de classement utilise à nouveau ces secteurs. Pour indiquer au système de classement que ces secteurs ne sont plus "mauvais", vous effectuez une option dans laquelle réévalue secteurs défectueux:

>chkdsk c: /B

où la documentation de commande dit

/B              NTFS only: Re-evaluates bad clusters on the volume
                (implies /R)

Ou

Selon: https://technet.Microsoft.com/en-us/library/cc730714(v=ws.11).aspx

/B              NTFS only: Clears the list of bad clusters on the volume and 
                  rescans all allocated and free clusters for errors. /b includes
                  the functionality of /r. Use this parameter after imaging a
                  volume to a new hard disk drive.

C’était une écriture très complète, et des captures d’écran très complètes, pour quelque chose qui ne sera jamais lu.

112
Ian Boyd

Vous n'avez rien à faire - pour l'instant. Le nombre de réallocations signifie "le disque a trouvé un secteur défectueux et avec succès l'a réalloué". Le firmware a déjà résolu le problème.

Vous devez juste être conscient du fait que le lecteur commence à tomber en panne. À l'avenir, il ne restera plus de secteurs libres sur le lecteur pour la réaffectation et vous perdrez des données. Si un bloc important est perdu, vous risquez de perdre toutes les données du disque.

Alors gardez un œil sur cette valeur ou achetez immédiatement un nouveau disque afin de l’oublier.

5
Aaron Digulla

J'ai eu une bonne expérience de la méthode décrite ici https://www.smartmontools.org/wiki/BadBlockHowto . Mon disque faisait du bruit et cessait de fonctionner. J'utilise donc smart report et la formule permettant de calculer le bloc défectueux et d'utiliser dd pour le supprimer. J'ai eu de la chance car smart rapporte toujours le nombre actuel de secteurs mais le disque fonctionne depuis environ 2 ans. J'ai acheté un remplacement mais je ne l'ai jamais utilisé. Il me semble qu'intelligent n'est pas si exact non plus.

3
Bytemain

Peut-être que vous ne connaissez pas cet outil: HD Sentinel

Hard Disk Sentinel (HDSentinel) est un logiciel de surveillance et d’analyse multi-OS SSD et HDD. Son objectif est de rechercher, tester, diagnostiquer et réparer les problèmes de lecteur de disque dur, de signaler et d'afficher l'état de santé des disques SSD et HDD, les dégradations des performances et les défaillances. Hard Disk Sentinel fournit une description textuelle complète, des conseils et affiche/répertorie les informations les plus complètes sur les disques durs et les disques SSD de l'ordinateur et dans des boîtiers externes (disques durs USB/e-SATA). De nombreuses alertes et options de rapport différentes sont disponibles pour assurer une sécurité maximale de vos précieuses données.

Cela semble être un excellent outil pour faire de telles actions. Attention, certaines options d'exécution peuvent détruire complètement les données.

2
Estevan TH.

Zéro écriture, également appelé formatage simple. Vous ne pouvez généralement le faire qu'avec un utilitaire de disque du fabricant. Si une défaillance du disque dur est à l'origine de cette erreur, elle peut revenir presque immédiatement.

1
Chris Abbott

Vous devez utiliser un outil qui écrit dans chaque secteur du lecteur. Sinon, il n'y a aucun moyen de le faire. Si le lecteur a alloué un secteur disponible et remappé, quelles données doit-il mettre dans le secteur disponible? Il n’en a aucune idée puisque sa tentative de lecture du secteur existant a échoué. Seule une opération d'écriture peut effacer l'erreur.

1
David Schwartz

Essayez les CD amorçables Spinrite 6 ou HDD regenerator. Ils écrivent des tests de surface, ils devraient donc effacer les mauvais secteurs en attente et augmenter le nombre de réaffectations.

1
danwat1234