Conflits horaires de plusieurs systèmes d'amorçage
Les systèmes d’exploitation stockent et récupèrent l’heure dans l’horloge matérielle située sur votre carte mère afin qu’elle puisse la suivre même lorsque le système n’est pas alimenté. La plupart des systèmes d'exploitation (Linux / Unix / Mac) stockent l'heure sur l'horloge matérielle au format UTC par défaut, bien que certains systèmes (notamment Microsoft Windows) stockent l'heure sur l'horloge matérielle au format "local". Cela pose des problèmes dans un système à double démarrage si les deux systèmes voient l’horloge matérielle différemment.
L’avantage d’avoir l’horloge matérielle en UTC est qu’il n’est pas nécessaire de la modifier pour passer d’un fuseau horaire à l’autre, ni au début ou à la fin de l’heure avancée de l’été, car l’heure UTC n’a pas de décalage DST ou de fuseau horaire.
Changer Linux pour utiliser l'heure locale est plus facile et plus fiable que Windows pour utiliser l'UTC, les systèmes Linux / Windows à double démarrage ont tendance à utiliser l'heure locale.
Depuis Intrepid (8.10), UTC = yes est la valeur par défaut.
Rendre Windows utiliser UTC
Remarque: cette méthode n'était pas initialement prise en charge sous Windows Vista et Server 2008, mais elle est revenue avec Vista SP2, Windows 7, Server 2008 R2 et Windows 8 / 8.1.
Pour que MS Windows calcule l'heure à partir de l'horloge matérielle au format UTC.
Créez un fichier nommé WindowsTimeFixUTC.reg avec le contenu suivant, puis double-cliquez dessus pour le fusionner avec le registre:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=dword:00000001
Remarque: le service de temps Windows continue d'écrire l'heure locale sur le RTC, quel que soit le paramètre de registre défini ci-dessus à l'arrêt. Il est donc pratique de désactiver le service de temps Windows avec cette commande (si la synchronisation de l'heure est toujours requise lorsque vous utilisez Windows, utilisez une heure tierce solution de synchronisation):
sc config w32time start= disabled
Annulation de la modification
Vous pouvez créer un fichier avec le contenu suivant, puis double-cliquer dessus pour fusionner les modifications d'origine, comme ci-dessus:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=-
Si le service de temps Windows est désactivé, réactivez-le avec la commande suivante:
sc config w32time start= demand
Faire en sorte que Linux utilise l'heure locale
Pour indiquer à votre système Ubuntu que l'horloge matérielle est réglée sur l'heure «locale»:
Systèmes antérieurs à Ubuntu 15.04 (par exemple, Ubuntu 14.04 LTS):
- modifier
/etc/default/rcS
ajouter ou modifier la section suivante
# Set UTC=yes if your hardware clock is set to UTC (GMT)
UTC=no
Systèmes Ubuntu 15.04 et supérieurs (par exemple Ubuntu 16.04 LTS):
ouvrir un terminal et exécuter la commande suivante
timedatectl set-local-rtc 1