
Debian anticipe les problèmes liés au bug de l’année 2038 sur les systèmes Unix. La version 13 de la distribution change le stockage des dates et des heures en variable de 64 bits. Un démarche qui a nécessité un travail ardu des équipes qui restent néanmoins vigilantes pour le futur.
Connu sous le nom « Epochalypse Unix », le bug de l’année 2038 commence à être pris au sérieux par les éditeurs de distribution Linux. En l’occurrence Debian anticipe le problème en mettant à jour son horloge en stockant l’heure dans des variables 64 bits au lieu de 32 bits actuellement. Cette évolution sera disponible le 9 août prochain dans la version 13, nommée « Trixie » de Debian.
Ce bug aussi appelé Y2K38 s’apparente à celui de l’an 2000. Les horloges Unix (et Linux) comptent le temps en secondes à partir du 1er janvier 1970, surnommé l’Époque Unix. Certains systèmes stockent ce nombre dans un entier signé de 32 bits qui attendra sa limite le 19 janvier 2038 à 03h14 et 7s (UTC). La seconde suivante provoquera un retour dans le passé pour afficher la date du 13 décembre 1901 à 20h45 et 52s. Ce dérèglement risque d’entraîner des problèmes pour certains applicatifs et même des protocoles réseaux. Il peut toucher des systèmes de contrôle d’usine et de surveillance des bâtiments aux routeurs et caméras de sécurité qui fonctionnent sur des OS embarqués souvent une distribution Linux en 32 bits.
Une transition ardue et sous surveillance
Une des solutions pour éviter ce risque est de remplacer le stockage des dates par des variables 64 bits au lieu de 32 bits. Elle accorde un répit confortable de plus de 292 milliards d’années. Mais pour les mainteneurs de Debian, cette tâche s’est révélée ardue. En effet, il a été nécessaire de travailler sur 6 500 paquets et en une seule fois, car cela impliquait également une modification de l’interface binaire d’application (ABI). Cette dernière agit entre deux composants logiciels pour gérer l’allocation des registres et l’agencement de la mémoire.
Les équipes de Debian estiment que le travail est maintenant terminé ou du moins aussi fini qu’il peut l’être pour le moment. Afin d’assurer la compatibilité avec les binaires x86, l’éditeur conserve les dates sur les systèmes i386 en 32 bits, tout en étudiant d’autres options si la demande pour des dates 64 bits sur ces systèmes est suffisante. La vigilance est donc de mise même si le danger semble lointain. « Cela ne devrait pas arriver avant au moins 13 ans, mais de nombreux systèmes susceptibles d’être concernés ont déjà été livrés. Et nous ne voulons pas aggraver la situation », glisse Debian dans un message. Il ajoute que « la plupart des calculs, notamment ceux utilisant Debian ou ses dérivés, sont désormais réalisés sur du matériel 64 bits, où ce problème ne se pose pas. Cependant, de nombreux calculs 32 bits, plus coûteux, sont encore disponibles et sont encore livrés sur des terminaux (automobile, IoT, téléviseurs, routeurs, contrôle d’usine, surveillance/contrôle de bâtiments, téléphones Android bon marché, etc.), dont une partie fonctionne probablement sous Debian ou ses dérivés ». L’éditeur se déclare préoccupé « par l’architecture armhf, car c’est celle 32 bits la plus susceptible d’être encore largement utilisée dans les nouveaux systèmes au cours de la prochaine décennie ».