LES DISQUES DURS


LA MAINTENANCE PREVENTIVE DU DISQUE DUR

Les informations contenues sur les disques durs ont en général plus de valeur pour l'entreprise que le matériel informatique proprement dit. Or, malgré une fiabilité en constante augmentation, les disques durs restent l'une des rares pièces mécaniques d'un ordinateur. Il est donc essentiel de connaître les risques spécifiques qu'ils courent et les méthodes de prévention disponibles.

Si l'on insiste tant sur la nécessité de sauvegarder régulièrement les données contenues sur les disques durs, c'est tout simplement parce que ces informations sont souvent essentielles pour le bon fonctionnement de nombreuses entreprises ou départements et qu'elles ne peuvent pas être remplacées rapidement en cas d'incident grave, Il faudra, par exemple, reconstituer une comptabilité, un fichier clients, ou l'ensemble des commandes en cours. Or, en dehors des risques majeurs «classiques» liés à l'informatique (vol, incendie, surtensions électriques, virus...), les données contenues sur les disques durs sont exposées à certains aléas plus spécifiques. Ces derniers découlent de la manière dont les informations sont stockées sur un disque dur.

La face cachée des disques durs

Un disque dur est composé d'un ou de plusieurs plateaux qui sont empilés sur l'axe de rotation du moteur principal du disque. Les deux faces de chaque plateau sont recouvertes d'un matériau magnétisable sur lequel sont inscrites les informations désirées (après avoir été codées par le contrôleur et converties en impulsions électriques par la tête de lecture/écriture associée). Le revêtement des plateaux doit d'une part permettre le stockage d'une grande densité de transitions magnétiques, et d'autre part résister aux chocs éventuels avec la tête de lecture (une fonction lubrifiante est également nécessaire pour permettre le démarrage du disque). Tant qu ' il est sous tension, un disque dur est constamment en rotation à une vitesse approximative de 3 600 tours par minute. Cette rotation incessante accélère les accès aux données et maintient les têtes de lecture/écriture à une distance constante par rapport aux plateaux. En effet, une tête de lecture/écriture est associée à chaque face d'un plateau, et la densité d'informations que l'on peut stocker dépend de la distance de la tête par rapport au plateau Cette distance doit être la plus faible possible, en évitant cependant tout contact accidentel entre la tête et le plateau. Pour y parvenir, le positionnement précis de la tête est assuré par un «coussin d'air» qui est engendré par la rotation des plateaux, les têtes de lecture/écriture étant profilées pour «flotter» au-dessus ou au-dessous de leur plateau attitré. Elles sont reliées de manière flexible au mécanisme de positionnement, dont la mission est d'amener l'ensemble des têtes au-dessus de la piste requise.

Le positionnement précis de la tête de lecture/écriture associée à chaque face d'un plateau, est assurée par le «coussin d'air» engendré par la rotation des plateaux, les têtes étant profilées pour «flotter» au-dessous ou au-dessus de la sruface magnétique.

Le stockage des informations

Les informations stockées sur un disque dur sont organisées en pistes concentriques. Chaque piste est déterminée par la tête de lecture/écriture associée (qui indique le plateau et la face considérés) et par sa position par rapport à l'axe de rotation des plateaux. L'ensemble des pistes situées les unes au-dessus des autres sur différents plateaux s'appelle un cylindre. Les informations écrites sur une piste donnée sont divisées en plusieurs secteurs, que le contrôleur identifie grâce au numéro présent dans leur en-tête de secteur (sector header). Lors d'une requête de lecture ou d'écriture pour un secteur particulier, le contrôleur du disque dur déplace les têtes au-dessus du cylindre demandé et commence à lire la piste située sous la tête concernée. Rien ne se passe tant que l'en-tête du secteur recherché n'est pas passé sous la tête de lecture. Une fois celui-ci localisé, le contrôleur effectue l'opération demandée (lecture ou écriture).
En dehors de l'état de surface des plateaux, la fiabilité d'un disque dur dépend donc de sa faculté à positionner les têtes au-dessus d'un cylindre donné et à localiser le secteur requis Pour permettre cette localisation, les en-têtes de secteurs sont inscrits sur le disque dur lors d'une opération appelée le formatage de bas niveau ("low-level formating"). C'est exactement ce que fait le DOS lorsqu'on tape la commande FORMAT pour une disquette. En revanche, si cette commande s'applique à un disque dur, le DOS se contente de réinitialiser la table d'allocation des fichiers (FAT : File Allocation Table) sans toucher aux en-têtes de secteurs. Le formatage de bas niveau d'un disque dur représente en effet une opération relativement longue, au cours de laquelle la surface des plateaux doit être testée pour en détecter les éventuels défauts. Cette opération est donc réalisée une fois pour toutes pan le fabricant du disque dur, l'intervention de l'utilisateur final se limitant ensuite au partitionnement du disque (à l'aide de FDISK) et au formatage de haut niveau des partitions DOS (grâce à FORMAT).

Modification de l'alignement des têtes

La plupart des problèmes liés au vieillissement des disques durs proviennent du fait que les en-têtes de secteurs ne sont jamais réécrits, alors que les données contenues dans ces secteurs sont sans cesse modifiées. En effet, comme tout assemblage mécanique de précision, le dispositif de positionnement des têtes peut voir son alignement se modifier avec l'âge. Les causes de ce vieillissement sont multiples : usure des pièces mécaniques, fatigue et déformation des bras qui soutiennent les têtes suite aux incessants aller et retour qui leurs sont infligés, dilatations et contractions dues aux variations de température des pièces du disque dur (ces dilatations affectent aussi bien le mécanisme de positionnenent des têtes que les plateaux du disque dur). Il faut d'ailleurs savoir que l'alignement des têtes d'un disque dur varie légèrement entre la mise sous tension de l'ordinateur «à froid» et la température atteinte après une demi-heure ou une heure de fonctionnement, malgré l'emploi de dispositifs de compensation. Quelle qu'en soit la cause, le vieillissement du mécanisme de positionnement des têtes entraîne inévitablement la même conséquence : les pistes effectivement lues ou écrites pan les têtes se décalent progressivement par rapport aux emplacements qu'elles occupaient lors du formatage de bas niveau du disque dur. Ce décalage affecte en premier lieu les zones du disque dur qui sont rarement réécrites, dont font partie les fameux en-têtes de secteurs : au fur et à mesure que la tête s'éloigne du tracé initial de la piste, les variations de champ magnétique qui correspondent aux informations stockées sur le disque deviennent de plus en plus faibles et difficiles à séparer du «bruit» ambiant. Lorsque le contrôleur devient incapable de lire certains en-têtes de secteurs, les données correspondantes sont irrémédiablement perdues (et le message «Secteur non trouvé» est d'un bien piètre secours).

L'alignement du dispositif de positionnement des têtes peut s'altérer avec le temps. Les causes de ce vieillissement sont multiples : usure des pièces mécaniques, fatigue et déformation des bras soutenant les têtes, dilatations et contractions dues aux variations de température des pièces du disque dur.

Apparition de défauts de surface

La modification de l'alignement des têtes de lecture/écriture entraîne également des risques pour les données nouvellement écrites sur le disque. En effet, ces dernières peuvent alors se situer sur un défaut de surface d'un plateau, qui est mis en évidence par le décalage des pistes. Pourtant, les fabricants soumettent leurs disques durs à une série de tests pour détecter les défauts éventuellement présents dans le revêtement magnétique des plateaux. Quelques anomalies sont inévitables, mais elles ne prêtent pas à conséquence lorsqu'elles sont détectées à ce stade il suffit en effet d'indiquer au DOS que la zone correspondante d'un disque dur ne doit pas être utilisée (cette information est ensuite conservée dans la FAT). La liste des défauts rencontrés est généralement indiquée sur une étiquette apposée sur le disque dur ou directement inscrite sur une piste dédicacée de ce dernier. Cette procédure de test garantit la fiabilité du revêtement, mais elle n'est valable que pour les pistes décrites par les têtes de lecture/écriture sur le disque dur à l'état neuf. Si la position de ces pistes se décale par rapport à leur tracé initial, certains secteurs risquent de se trouver sur des défauts de surface qui n'avaient pas été détectés lors des tests de fabrication, car aucune piste ne passait dessus ! Les données écrites à ces emplacements ne pourront alors pas être relues de manière fiable.

Les risques de la correction d'erreurs

Le vieillissement des disques durs entraîne donc inévitablement des risques d'erreurs de lecture. Pour minimiser l'influence de ces erreurs sur l'intégrité des données lues, les contrôleurs des disques durs modernes ajoutent à la fin de chaque secteur un code de correction d'erreur (ECC : Error Correction Code) qui permet de détecter les données erronées et de corriger éventuellement jusqu'à 11 bits incorrects consécutifs. Lorsque le contrôleur détecte une erreur de lecture, il essaie tout d'abord de relire le secteur concerné à plusieurs reprises. L'algorithme de correction est seulement utilisé si aucune lecture ne réussit sans erreur, et permet quand même d'obtenir des données exactes dans de nombreux cas. Ce mécanisme minimise dans de grandes proportions les erreurs irrécupérables de lecture, mais cette sécurité est à double tranchant. Elle présente en effet l'inconvénient de masquer à l'utilisateur le véritable degré de vieillissement de son disque dur. Et lorsque les erreurs empêchent le contrôleur de lire les données requises, il est trop tard pour corriger la situation : seule une sauvegarde récente sera d'un quelconque secours. Une part de responsabilité dans cet état de fait incombe au DOS lui-même : si le contrôleur n'émet aucun signal particulier lorsqu'il est obligé de procéder à plusieurs essais pour réussir à lire des données correctes, il envoie en revanche au Bios un message quand l'algorithme de correction d'erreur se révèle indispensable. Le Bios relaie cette information vers le DOS, mais ce dernier préfère ignorer ce message et ne pas alarmer l'utilisateur (puisque les données qu'il reçoit sont quand même correctes). Lorsque le message «Erreur en lecture» apparaît, les données contenues dans le secteur incriminé sont bel et bien perdues.

Prévenir les incidents

Que peut-on faire pour éviter d'en arriver là ? L'analyse des causes d'erreurs conduit à deux approches distinctes : on peut d'une part tenter d'éviter le décalage de l'alignement des têtes de lecture/écriture, d'autre part essayer d'en diminuer les conséquences néfastes. Heureusement, les solutions correspondantes ne sont pas exclusives et se complètent le plus souvent harmonieusement, ce qui permet de jouer sur les deux tableaux.
La modification de l'alignement des têtes peut être retardée si l'on diminue la fatigue des pièces mécaniques, fatigue qui résulte des déplacements incessants du système de positionnement. Mais comment éviter les déplacements inutiles des têtes de lecture, puisque l'utilisateur n'a généralement aucun contrôle sur eux ? Il faut pour cela procéder à des défragmentations régulières du disque dur et utiliser un cache-disque. Si le but principal de ces techniques est d' améliorer les performances des accès au disque dur, il ne faut pas oublier que les gains obtenus proviennent dans le premier cas de la diminution des déplacements des têtes de lecture/écriture (puisque les secteurs d' un même fichier sont situés sur des pistes contiguës), et dans le deuxième cas de la substitution d'un accès mémoire à un accès au disque dur. Un disque dur peu fragmenté et secondé par un cache-disque déplacera moins souvent ses têtes de lecture/écriture et usera donc moins leur mécanisme de positionnement.

Détecter les erreurs de lecture

Pour éviter la perte définitive des données, il importe de détecter les erreurs de lecture avant que leur nombre empêche l'algorithme de correction d'erreur de fonctionner. Il suffit alors de reloger les données corrigées dans un secteur libre en bonne santé, et de marquer leur emplacement d'origine comme «mauvais» dans la FAT pour éviter les désagréments futurs. On trouve dans le commerce plusieurs utilitaires spécialisés dans ce type d'analyse SpinRite II (Gibson Research), Advanced Disk Technician (Prime Solutions), ou encore Calibrate (qui fait partie du package Norton Utilities). Ces programmes essaient de court-circuiter le DOS et d'adresser directement le contrôleur du disque dur pour repérer les secteurs sur lesquels une correction est nécessaire. Ils effectuent ensuite des tests de surface sur l'ensemble du disque dur, en écrivant sur chaque secteur plusieurs valeurs «sensibles» (qui sont censées mettre en évidence la qualité du revêtement à cet endroit précis) et en vérifiant leur bonne lecture.
Précisons que ces tests de surface se font de manière non destructrice pour les données du disque dur, car ces dernières sont lues en mémoire avant le test de chaque secteur et réécrites par la suite (pour une sécurité maximale, et pou protéger leur responsabilité, les éditeurs de ce type de logiciels recommandent toutefois de procéder à une sauvegarde avant leur exécution).
Outre la détection précoce des erreurs de lecture tant qu'il est encore possible de les corriger, ces tests présentent l'avantage de réécrire périodiquement toutes les informations stockées sur le disque dur. Effectuée lorsque l'ordinateur a atteint sa température de fonctionnement (par exemple en fin de journée), cette opération «rafraîchit» les champs magnétiques correspondants et garantit que les données réécrites se situent bien à la position actuelle des têtes de lecture/écriture, en particulier les en-têtes de secteurs, qui sont particulièrement exposés au décalage progressif des pistes du fait qu'ils ne sont jamais réécrits après le formatage de bas niveau effectué par le fabricant.

Parking des têtes

De plus, ces utilitaires déterminent l'entrelacement optimal des secteurs ("interleave") et l'appliquent lors du reformatage de bas niveau, ce qui améliore éventuellement les performances du disque dur. On ne peut donc que recommander leur utilisation périodique (les nombreux couples disques durs-contrôleurs disponibles sur le marché empêchent malheureusement leur fonctionnement sur toutes les configurations matérielles).
Si de nombreux disques durs modernes disposent d' un mécanisme automatique de rétraction et de blocage des têtes de lecture (parking), les possesseurs de modèles plus anciens profiteront des programmes spécialisés dans ce domaine, qui sont fournis avec les utilitaires de maintenance cités ci-dessus ou avec le célèbre PCTools de Central PointSoftware. Les programmes de rétraction évitent, lors de l'arrêt du disque dur, que les têtes se posent sur des zones contenant des données. Une partie des risques liés à la mise sous tension est ainsi écartée (voir encadré). L'utilisation habituelle de tels programmes avant d'éteindre son ordinateur apporte donc une sécurité supplémentaire, en particulier si l'ordinateur est déplacé par la suite et se trouve alors exposé à des risques de chocs.

FAUT-IL ETEINDRE SON ORDINATEUR APRES UTILISATION ?

Deux thèses s'affrontent en ce qui concerne les politiques de mise sous tension des ordinateurs : vaut-il mieux éteindre un ordinateur dès que l'on ne s'en sert plus, ou au contraire le laisser sous tension 24 heures sur 24 ? Les tenants de la première solution raisonnent ainsi : pendant la durée au cours de laquelle un ordinateur est allumé, son disque dur tourne à 3600 tours par minute, ce qui finit par fatiguer le moteur et user l'axe de rotation. Le ventilateur fonctionne également sans cesse et peut entraîner une accumulation de poussière à l'intérieur de l'ordinateur (ou tomber lui-même en panne). De plus, les risques de surtension électrique sont proportionnels à la durée totale de fonctionnement de l'ordinateur. Enfin, la consomation électrique des ordinateurs n'est plus négligeable lorsque le parc installé est important. En suivant ce raisonnement, la meilleure politique consisterait à éteindre un ordinateur dès que l'on ne s'en sert plus, quitte à le rallumer éventuellement une demi-heure plus tard. La thèse contraire, qui stipule que les ordinateurs doivent fonctionner 24 heures sur 24 (éventuellement à l'exception des week-ends), comporte elle aussi des arguments convaincants.
Au cours d'un fonctionnement ininterrompu, la température des composants électroniques et mécaniques reste stable et ils ne sont pas soumis à des cycles répétés de dilatations et de contractions. L'alignement des têtes de lecture/écriture risque donc moins de s'altérer avec le temps (et les circuits intégrés ont moins tendance à se déchausser de leurs supports). Avec un disque dur en rotation continue, les têtes de lecture/écriture flottent en permanence sur le «cousssin d'air» engendré par la rotation et ne risquent pas de détériorer la surface des plateaux lors de la mise sous tension (avant que le flux d'air ne soit suffisant pour leur permettre de «décoller»), ni d'y appliquer des champs magnétiques aléatoires (à cause des impulsions électriques parasites qui surviennent à l'allumage de l'ordinateur). De plus, l'accès aux applications est immédiat et n'entraîne pas la perte de temps consécutive à la procédure d'initialisation de l'ordinateur. Enfin, les temps moyens entre deux pannes (MTBF : Mean Time Between Failures) des disques durs sont souvent supérieurs à 40 000 heures, ce qui correspond à plus de 4 ans de fonctionnement ininterrompu ! Il n'existe pas de statistiques significatives démontrant la supériorité d'une option par rapport à l'autre. Chacun est donc libre d'effectuer son choix parmi les arguments présentés. Notons toutefois que les deux approches citées constituent des solutions extrêmes et que la voie moyenne est vraisemblablement la plus sage : allumer un ordinateur le matin et l'éteindre le soir, avec éventuellement une pause supplémentaire pendant les heures des repas.

Une durée de vie plus longue

Notons enfin que certains programmes de rétraction des têtes deviennent résidents en mémoire vive et ramènent automatiquement les têtes au-dessus de leur «zone d'atterrissage» au bout d'une certaine durée d'inactivité du disque dur, cela afin de préserver la surface des plateaux en cas de choc inopiné...
La mise en oeuvre systématique des approches indiquées ci-dessus ne peut que contribuer à allonger la durée de vie du un disque dur et des informations qu'il contient. Mais il faut garder à l'esprit que la seule réelle assurance contre les pertes de données réside dans l'exécution de sauvegardes régulières (avec des tests périodiques quant aux possibilités de restauration de ces dernières). A bon entendeur...


ORGANISATION DES DISQUES DURS SOUS DOS

Un disque ou un support quelconque est constitué d'un certain nombre de faces, de têtes de lecture et de secteurs par face.
Le secteur représente l'unité de stockage de base. Sa taille est généralement de 512 octets.
Le formatage DOS organise le disque en emplacements élémentaires appelés «clusters» qui regroupent plusieurs secteurs.
La quantité dépend de la capacité de stockage du support (cf. la figure donnant les caractéristiques d'une disquette 1,44 Mo et d'un disque dur Connerde 80 Mo, ci-dessous). On peut obtenir ces informations avec la plupart des utilitaires (par exemple SysInfo des utilitaires Norton).
Les premiers secteurs du disque dur sont : le secteur de Boot (amorce et démarrage) qui comporte les informations primaires du disque et l'emplacement (offset) de toutes les autres. On trouve ensuite le répertoire racine (root) du support puis la FAT (File Allocation Table, table d'allocation des fichiers) qui contient les emplacements des fichiers, les clusters vides, etc.
Notons qu'il y a toujours deux FAT, la seconde étant une copie de sauvegarde. Toutefois, Microsoft n'a jamais fourni d'utilitaire offrant un facsimilé de FAT d'après la première. Le répertoire racine contient un certain nombre de structures appelées «Directory Entry» (entrée de répertoire de 32 octets). Celles-ci comprennent, entre autres, le nom du fichier, sa taille exacte, son attribut, la date et l'heure de création et le numéro du cluster de départ.
La dimension d'un fichier sur le disque représente toujours un nombre exact de clusters; autrement dit, un fichier batch de 30 octets occupe 2 048 octets quand le cluster est de 2 048 octets. La FAT contient un tableau d'entiers 16 bits depuis la version 3.10 du DOS. Celui-ci représente l'état de chaque cluster du disque.
On y trouve en hexadécimal : 0000 = cluster vide, 0001 à FFF6 = cluster alloué donne le numéro du cluster suivant pour le fichier concerné, FFFF = dernier cluster du fichier, FFF7 = mauvais secteurs dans le cluster, cluster non utilisé.
En résumé, la lecture d'un fichier se décompose en une lecture de l'entrée de répertoire (pour l'obtention du numéro de cluster de départ), une lecture du cluster de départ, la recherche dans la FAT du numéro de cluster suivant et la lecture de ce dernier.

Caractéristiques physiques d'un disque dur 80 Mo et d'une disquette 3"1/2 HD

Unité de disque analysée
C:
A:
Numéro identificateur du disque
F8h
F0h
Nombre de têtes
6
2
Nombre de cylindres
83
1
Taille des FAT en nbre de secteurs
16
19
Nombre d'entrées par répertoire
512
224
Nombre de secteurs par cluster
4
1
Nombre d'octets par secteur
512
512
Taille du cluster
2048
512
Nombre de secteurs par piste
33
18
Nombre de secteurs cachés
33
0
Capacité totale de la partition
84.043.776
1.457.664

PRECAUTIONS A PRENDRE EN CAS D'ERREUR

Diverses précautions et mesures préventives sont à prendre après une destruction de fichier ou une erreur de disque éviter toute nouvelle écriture de fichiers afin de ne pas écraser ceux existant. Si les utilitaires ne se trouvent pas sur le disque dur, il ne faut surtout pas les installer mais plutôt les charger à partir des disquettes. Nous rappelons cependant que le meilleur moyen de prévention contre les crashs de disque dur reste toujours leur sauvegarde sur un quelconqtue support. A signaler également que, dans le cas des utilitaires s'exécutant sous Windows, il sera plus difficile de restaurer des fichiers effacés en raison de ceux de nature temporai re créés automatiquement par Windows qui risquent de rendre inopérante toute tentative de récupération.