La suite de "Le congélateur m'a sauver" (où comment récupérer les données à priori perdues d'un disque dur en le mettant dans un congélo !)

Je vous faisais part dans ce billet de la manière dont j'avais opéré pour récupérer les données d'un disque dur qui donnait de sérieux symptômes de défaillances mécaniques.

Etant curieux par nature, je me suis en tête de trouver quelqu'un ayant une explication scientifique plausible. J'ai donc contacté Môssieur Bernard Ourghanlian, Directeur Technologies et Sécurité chez Microsoft France. C'est le genre de gars auprès de qui vous progressez intellectuellement, simplement en respirant l'air à côté de lui. Voici donc sa réponse. Inutile de vous dire que je l'ai relu quelques fois avant de commencer à y comprendre quelque chose :-)

Une explication scientifique rigoureuse… Je resterai modeste car je ne pense pas qu’il y a ait une seule explication possible. Ce qui est sûr, c’est que ce « truc » est connu depuis de nombreuses années et qu’il est pratiqué par toutes les sociétés pratiquant la récupération de disques durs. Parmi les explications que l’on peut avancer :

  • Electronique : si un circuit électronique a des défaillances partielles, le fait de le refroidir pour lui permettre de surmonter temporairement ces défaillances (d’une façon générale, il est quelquefois possible de trouver une température suffisamment basse à laquelle un chip – même un CPU – peut fonctionner alors qu’il ne fonctionne pas à des températures proches de sa température de jonction (cet effet est lié, pour faire simple, à l’effet d’avalanche que l’on trouve dans tous les transistors à effets de champ et qui est directement lié à la température).
  • Mécanique :
    • dans le cas où une tête a touché un plateau et créé de fines particules dans l’espace maintenu sous vide qui environne l’ensemble plateau+têtes, le fait de faire baisser la température permet à ces particules de se reposer sur le plateau et de permettre – si l’on a de la chance – de continuer d’accéder à ces données pour un temps.
    • s’il y a des problèmes d’entrainement des plateaux ou dans le contrôle du moteur, le fait de réduire la température peut permettre une rétraction suffisante des métaux impliqués pour permettre le fonctionnement purement mécanique des diverses pièces concernées ; de même, dans le cas où le disque a reçu un choc, il peut y avoir des situations où le niveau de vibrations résultant de ce choc présente une composante verticale de cette vibration supérieure à la hauteur depuis la tête de lecture lit depuis le plateau ; dans ce cas, il peut y avoir un atterrissage permanent de la tête concernée : le refroidissement peut permettre la diminution mécanique de l’amplitude de cette composante verticale afin de permettre temporairement la lecture du plateau concerné.

D’une façon générale, les disques durs n’aiment pas la chaleur ; en dehors du cas extrême du réchauffement d’un plateau au-delà de la température de Curie (770° C pour le fer) qui provoque une démagnétisation permanente du plateau, la chaleur engendre une diminution de la durée de vie de tous les disques durs (cf. par exemple l’étude d’Hitachi en https://www.hitachigst.com/hdd/technolo/drivetemp/drivetemp.htm) ; il y a donc eu de nombreux travaux sur les disques dur afin de leur permettre de remonter en direction du système d’exploitation les informations relatives à cette température afin d’éviter que les problèmes ne dégénèrent. Dans ce cas, ces informations qui remontent au logiciel permettent d’éviter que la situation ne dégénère trop en diminuant la sollicitation en entrées-sorties du disque dur en question ou en allant même jusqu’à provoquer son arrêt une fois les entrées-sorties en cours effectuées (cf. la contribution en Open Source sur https://smartmontools.sourceforge.net/ et pas mal d’autres logiciels du marché, par exemple https://www.hddtemp.com/).