Votre ordinateur stocke l’heure dans une horloge matérielle sur sa carte mère. L’horloge enregistre l’heure, même lorsque l’ordinateur est éteint. Par défaut, Windows suppose que l’heure est stockée en heure locale, tandis que Linux suppose que l’heure est stockée en heure UTC et applique un décalage. Cela conduit l’un de vos systèmes d’exploitation à afficher l’heure incorrecte dans une situation de double démarrage.
Pour résoudre ce problème, vous avez deux options: Faire en sorte que Linux utilise l’heure locale ou que Windows utilise l’heure UTC. Ne suivez pas les deux étapes des instructions ou ils ne parleront toujours pas la même langue! Nous vous recommandons de faire en sorte que Linux utilise l’heure locale, si possible.
Première option: faire en sorte que Linux utilise l’heure locale
Faire en sorte que Linux utilise l’heure locale de la même manière que Windows est probablement la meilleure option. Windows a un paramètre de registre qui l’oblige à stocker l’heure au format UTC, mais il n’est pas bien pris en charge et peut causer des problèmes avec certaines applications tierces qui supposent toujours que l’horloge matérielle est à l’heure locale. Il est également incompatible avec le service de synchronisation de l’heure Internet de Windows.
Les étapes pour que votre système Linux utilise l’heure locale peuvent varier d’une distribution Linux à une distribution Linux. Cependant, sur toute distribution Linux avec systemd, vous pouvez utiliser le timedatectl
commande pour effectuer ce changement. Cela fonctionnera sur les versions modernes d’Ubuntu, Fedora, Red Hat, Debian, Mint et d’autres distributions Linux qui utilisent systemd.
Pour effectuer ce changement, ouvrez d’abord une fenêtre Terminal sur votre système Linux. Exécutez la commande suivante pour mettre l’horloge temps réel de la carte mère à l’heure locale. Linux stockera l’heure à l’heure locale, comme le fait Windows.
timedatectl set-local-rtc 1 --adjust-system-clock
Pour vérifier vos paramètres actuels, exécutez:
timedatectl
Si vous voyez «RTC dans TZ local: yes», Linux est configuré pour utiliser le fuseau horaire local au lieu de UTC. La commande vous avertit que ce mode n’est pas entièrement pris en charge et peut causer des problèmes lors du changement entre les fuseaux horaires et avec l’heure d’été. Cependant, ce mode est probablement mieux pris en charge que l’option UTC dans Windows. Si vous double-démarrez avec Windows, Windows gérera l’heure d’été à votre place.
Si vous souhaitez annuler cette modification, exécutez la commande suivante:
timedatectl set-local-rtc 0 --adjust-system-clock
Option 2: faire en sorte que Windows utilise l’heure UTC
Faire en sorte que Windows utilise l’heure UTC comme Linux n’est probablement pas la meilleure option. Vous pouvez modifier le registre pour que Windows utilise l’heure UTC, mais cela pourrait potentiellement causer plus de problèmes que de simplement faire en sorte que Linux utilise l’heure locale.
Si vous souhaitez le faire, vous devez d’abord désactiver la fonction de mise à jour de l’heure Internet sous Windows. Cela garantit que Windows ne réglera pas correctement l’horloge lors de la tentative de synchronisation de l’heure actuelle à partir d’Internet. Sous Windows 10, accédez à Paramètres> Heure et langue et désactivez «Régler l’heure automatiquement». Sous Windows 7, cliquez avec le bouton droit de la souris sur l’horloge système dans la barre des tâches et sélectionnez «Ajuster la date / l’heure». Cliquez sur l’onglet « Heure Internet », cliquez sur le bouton « Modifier les paramètres », décochez l’option « Synchroniser avec un serveur de temps Internet » et cliquez sur « OK ».
Faire en sorte que Windows utilise l’heure UTC en modifiant le registre
Vous devrez maintenant ajouter la valeur appropriée au registre Windows. Voici notre avertissement standard: l’éditeur de registre est un outil puissant et une mauvaise utilisation peut rendre votre système instable, voire inopérant. C’est un hack assez facile et vous ne devriez pas avoir de problèmes tant que vous suivez les instructions. Cela dit, si vous n’avez jamais travaillé avec lui auparavant, envisagez de lire comment utiliser l’éditeur de registre avant de commencer. Et sauvegardez définitivement le registre (et votre ordinateur!) Avant d’apporter des modifications.
Tout d’abord, ouvrez l’Éditeur du Registre en cliquant sur Démarrer, en tapant «regedit» et en appuyant sur Entrée. Acceptez l’invite de sécurité qui s’affiche.
Accédez à la clé suivante dans le volet gauche de l’éditeur de registre:
HKEY_LOCAL_MACHINESystemCurrentControlSetControlTimeZoneInformation
Sur les dernières versions de Windows 10, vous pouvez copier et coller la ligne ci-dessus dans la zone d’adresse. Cependant, ce hack fonctionnera également sur Windows 7.
Cliquez avec le bouton droit sur la clé «TimeZoneInformation» et sélectionnez Nouveau> Valeur DWORD (32 bits).
Nommez votre nouvelle valeur RealTimeIsUniversal
.
Double-cliquez sur le RealTimeIsUniversal
valeur que vous venez de créer, définissez les données de valeur sur 1
et cliquez sur «OK».
Vous avez maintenant terminé et vous pouvez fermer l’éditeur de registre. Windows stockera l’heure au format UTC, comme le fait Linux.
Si vous souhaitez annuler cette modification, revenez à cet emplacement dans le registre, cliquez avec le bouton droit de la souris sur RealTimeIsUniversal
valeur ajoutée que vous avez ajoutée et supprimez-la de votre registre.
Téléchargez notre Hack de registre en un clic
Si vous ne souhaitez pas modifier le registre vous-même, vous pouvez utiliser notre hack de registre téléchargeable. Nous avons créé un hack qui permet à Windows d’utiliser l’heure UTC et un autre qui le restaure à l’heure locale. Les deux sont inclus dans le fichier ZIP suivant. Téléchargez simplement le fichier, double-cliquez sur le hack que vous souhaitez utiliser et acceptez d’ajouter les informations à votre registre.
Faire en sorte que Windows utilise l’heure UTC
Les hacks ci-dessus font la même chose que nous avons décrite ci-dessus. Le hack Make Windows Use UTC Time crée l’entrée «RealTimeIsUniversal» avec une valeur de «1», tandis que le hack Make Windows Use Local Time supprime l’entrée «RealTimeIsUniversal».
Si vous voulez voir ce que fait ce fichier ou tout autre fichier .reg, cliquez dessus avec le bouton droit de la souris et sélectionnez «Modifier» pour afficher le fichier dans le Bloc-notes. Vous pouvez facilement créer vos propres hacks de registre, qui consistent simplement en une liste d’entrées de registre à ajouter, modifier et supprimer dans une liste correctement formatée.
Qu’en est-il du double démarrage de Windows sur un Mac?
Bien que le macOS d’Apple utilise l’heure UTC comme le fait Linux, vous ne devriez pas avoir à faire quoi que ce soit de spécial lors de l’exécution de Windows dans Boot Camp sur un Mac. Les pilotes Boot Camp d’Apple gèrent tout. (Les dual-booters Hackintosh sont une autre histoire, cependant, et devront essayer d’utiliser le tweak de registre Windows ci-dessus.)
Si vous vous demandez pourquoi Windows utilise l’heure locale au lieu de l’heure UTC comme d’autres systèmes d’exploitation, blog officiel de Microsoft The Old New Thing l’explique ici. En bref, il s’agissait de préserver la compatibilité ascendante avec les systèmes Windows 3.1 et d’éviter que les gens ne soient confus lorsqu’ils définissent l’heure dans le BIOS de l’ordinateur. Bien sûr, les fabricants de PC ont choisi l’heure locale pour être compatible avec Windows et Windows a choisi l’heure locale pour être compatible avec la décision que les fabricants de PC ont choisie, de sorte que le cycle est devenu auto-renforcé.
Il n’y a actuellement aucune norme pour étiqueter si une heure est stockée comme heure UTC ou heure locale dans le micrologiciel BIOS ou UEFI, ce qui serait probablement la solution la plus logique. Mais cela nécessiterait du travail, et la plupart des gens ne remarqueront même jamais que différents systèmes d’exploitation utilisent des formats d’heure différents, sauf dans les configurations à double démarrage.