3 façons de régler le décalage d’heure lié au dual boot Windows/Linux

By | 6 February 2018 |
Reading Time: 2 minutes

Le problème

Sur mon laptop, j’ai récemment réinstallé Windows 10 en dual boot avec Linux Mint.
Lorsque je redémarre Windows (après m’être connecté sur Mint), l’horloge est décalée d’une heure.
Bien que l’heure va se resynchroniser, cela peut poser problème aux programmes qui démarrent avec votre session.
(par exemple pour skype4business qui refuse de se connecter si l’heure n’est pas correcte).

Le pourquoi ?

Les systèmes d’exploitations Linux et Windows ne gèrent pas l’horloge de la même façon.
Sur la plupart des distributions Linux, l’horloge matérielle (celle configurée dans le BIOS) correspond à l’heure UTC (Temps Universel Coordonné = GMT). C’est donc à travers les fichiers de votre configuration locale que l’heure locale est affichée une fois votre distribution démarrée.

Sous Windows, l’horloge matérielle correspond à l’heure locale.

Si je reviens à mon cas, sous Linux l’horloge matérielle est sur GMT mais sous Windows GMT+1 (heure de Bruxelles)

Comment on le règle ?

Easy“, il faut faire en sorte que les deux systèmes traitent l’horloge matérielle de la même façon, ouais mais encore ?
Voici ce que j’ai trouvé après plusieurs recherches.

Il faut évidemment ne changer le comportement que d’un des deux systèmes d’exploitations, sinon c’est retour à la case “départ”.

1. Sous Linux – mettre à jour le fichier “/etc/default/rcS”

Apparemment sous Ubuntu, il faudrait éditer le fichier “/etc/default/rcS” avec la ligne

UTC=no

J’ai écris “apparemment”, parce que bien que Mint et Ubuntu “descendent” toutes les deux de Debian,
ça n’a pas réglé mon problème, mais peut-être que sur Ubuntu c’est OK.

2. Sous Linux – mettre à jour le fichier “/etc/adjtime

Si ce fichier n’existe pas, votre distribution assume que l’horloge matérielle est réglée pour UTC.
Vous pouvez également le vérifier avec la commande “timedatectl”, nous nous intéressons à la dernière ligne (RTC in local TZ)

timedatectl_command

timedatectl_command

Pour changer cette configuration et faire en sorte que l’horloge matérielle soit égale à l’heure locale (comme sous Windows),
vous devez exécuter la commande suivante (en super-user):

sudo timedatectl set-local-rtc 1

Cette commande ne retourne rien, mais vous pouvez ré-exécuter la commande “timedatectl” pour vérifier

timedatectl_command_update

“RTC in local TZ” est bien passé de “no” à “yes
Vous pouvez également vérifier qu’un fichier /etc/adjtime a été généré.

Si vous souhaitez annuler ce changement, vous pouvez de 2 façons:

  1. Supprimer le fichier
  2. Exécutez la même commande mais pour désactiver, “sudo timedatectl set-local-rtc 0

3. Sous Windows

Il faut créer une clé dans la base des registres,
le plus simple étant de copier le texte suivant dans un fichier avec l’extension .reg et d’exécuter ce fichier.

On trouve différentes versions sur Internet, la seule différence étant le type de la valeur

  • hexadecimal

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
“RealTimeIsUniversal”=hex(b):01,00,00,00,00,00,00,00

  • dword

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
“RealTimeIsUniversal”=dword:00000001

  • qword

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
“RealTimeIsUniversal”=qword:00000001

Vous pouvez évidemment également créer cette valeur manuellement via “regedit”.

2 thoughts on “3 façons de régler le décalage d’heure lié au dual boot Windows/Linux

  1. Vince2panam

    Je viens de tester la cle sous Windows : avant j'[avais 2 heures de retard, mais maintenant j’ai 2 heures d’avance sous windows ! Je ferais d’autres tests ce soir.

    Reply

Laisser un commentaire

This site uses Akismet to reduce spam. Learn how your comment data is processed.