Dans le cas normal, les systèmes Linux ont l'horloge en temps réel (RTC) réglée sur l'UTC, et la conversion à l'heure locale est effectuée dans l'espace utilisateur sur la base des données du fuseau horaire et de l'horloge en temps réel. TZ
variable d'environnement. Cette solution est "moins mauvaise" car elle maintient l'augmentation monotone du RTC du système, et applique la magie du fuseau horaire plus tard, garantissant par exemple qu'aucun fichier n'aura normalement un horodatage dans le futur (ce qui peut facilement se produire au moins une fois par an, si le RTC du système est réglé sur l'heure locale). Comme l'a souligné Ken Le RTC lui-même n'a pas de notion de fuseau horaire, il n'a que l'heure.
Comme vous l'avez constaté, cela pose des problèmes en cas de double démarrage avec un système qui ne fonctionne pas normalement de cette manière, comme les systèmes d'exploitation de la famille Microsoft, qui s'attendent généralement à ce que le RTC soit réglé sur local temps. Oui, Windows NT (je pense que cela remonte à NT 4, en fait). puede fonctionner avec le RTC réglé sur UTC, mais du moins la dernière fois que j'ai regardé, ce n'était pas vraiment une configuration prise en charge et il y avait un certain nombre de mises en garde.
La solution la plus simple dans votre cas est probablement de régler l'horloge à l'heure locale, d'indiquer à votre système Linux que l'horloge est réglée à l'heure locale (la procédure exacte varie en fonction de la distribution et de la version, mais il n'y a pas de raison de ne pas le faire). apparemment, dans Ubuntu, vous définissez UTC=no
dans /etc/default/rcS ), puis configurer les systèmes d'exploitation de manière à ce que seuls les systèmes un (de préférence celui que vous utilisez le plus, car l'heure affichée dans tous les autres sera incorrecte deux fois par an, jusqu'à ce qu'il ait été démarré et ait eu l'occasion de la corriger). l'heure d'été changements. Et s'accommoder des inconvénients, qui devraient être gérables sur un système mono-utilisateur.
Vous pouvez également paramétrer Windows pour utiliser l'UTC comme fuseau horaire et désactiver les changements automatiques de l'heure d'été dans Windows, et garder Linux paramétré pour avoir le RTC en UTC et afficher l'heure convertie en fonction de ses pratiques. Cependant, Windows affichera alors la date et l'heure en UTC, ce qui n'est peut-être pas ce que vous souhaitez vraiment. Ce n'est pas un gros problème pour nous, Européens, qui avons au maximum trois heures de décalage par rapport à l'UTC, mais cela pourrait être plus problématique aux États-Unis. Cette option est probablement plus réaliste si vous n'utilisez Windows qu'occasionnellement, et que votre système d'exploitation principal est Linux ou un autre système d'exploitation compatible RTC-UTC.