Si vous installez sur votre ordinateur un Dual-Boot Windows/Linux et vous allez constater une différence d’horloge lorsque vous passez d’un OS à l’autre.
Table des matières
Pourquoi une différence d’heure entre Windows et Linux en cas de Dual-Boot ?
Un ordinateur sauvegarde l’heure affichée sur sa carte mère. Ainsi, grâce à la pile électrique de cette dernière, l’heure est maintenue à jour, même PC éteint. Et lorsque l’on rallume son ordinateur, le système récupère cette heure et ainsi il affiche toujours la bonne l’heure.
Enfin presque… Car tous les systèmes d’exploitation ne gèrent pas leur horloge de la même manière.
Windows, par défaut, se base pour son horloge sur l’heure locale et il la sauvegarde ainsi sur la carte mère. Alors que Linux, par défaut, se base sur le temps universel coordonné (UTC) auquel il ajoute, pour l’afficher, un offset dépendant de l’endroit ou l’on se trouve. Par exemple, en France, l’heure affichée correspond à UTC+1 h en hiver et à UTC+2 h en été. Et c’est l’heure UTC qu’il sauvegarde sur la carte mère.
D’où, une différence d’heure quand on passe de l’un à l’autre sur la même machine.
Mais, il est possible de corriger cela en changeant dans l’un des deux systèmes la manière de gérer son horloge.
Faire la correction dans Windows
Pour corriger cette différence dans Windows, il faut lui indiquer de travailler en UTC en non en temps local.
Pour cela, ouvrez l’éditeur de la base de registre Regedit en faisant Win + R puis en entrant la commande regedit
, dans la fenêtre Exécuter.
En suite, allez dans HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation
. Puis faites un clic droit avec votre souris dans la fenêtre et créez une clé DWORD 32bits appelée RealTimeIsUniversal
.
Alors, modifiez sa valeur en double cliquant dessus pour la mettre à 1
.
Et redémarrez votre ordinateur.
Pour revenir à l’heure locale, remettez la valeur à 0
.
Faire la correction dans Linux
Pour corriger cette différence dans Linux, il faut lui indiquer de travailler en heure locale en non en UTC.
Pour cela, ouvrez une fenêtre de terminal et entrez la commande suivante :
timedatectl set-local-rtc 1 --adjust-system-clock
Pour revenir en UTC faites :
timedatectl set-local-rtc 0 --adjust-system-clock
Pour vérifier la configuration du système, faites :
timedatectl
Si le résultat indique RTC in local TZ: no
, alors vous êtes en UTC.
Ou si vous avez RTC in local TZ: yes
, alors vous êtes en local.
Ma recherche m’a mené droit ici. Super merci pour ce tuto si explicite.
Merci pour votre tuto très clair.
Mon PC est en double boot Linux Mint 20 / Windows 10. J’ai opté pour une standardisation de l’horloge de mon PC en UTC et donc pris l’option de régler définitivement le problème sur Windows. Désormais plus de décalage d’horloge lorsque je bascule d’un OS à l’autre. 😉
Excellent!
Bonjour,
Lorsque je veux corriger dans linux (Ubuntu), pour ajuster en heure locale, j’introduis comme proposé :
timedatectl set-local-rtc 1 –adjust-system-clock
j’obtiens le code erreur suivant :
Invalid number of arguments.
Bonjour,
L’erreur vient du signe
–
avantadjust-system-clock
. Il faut le remplacer par--
, soit :.
Cordialement
Merci beaucoup, ça fonctionne maintenant!