Maison / l'Internet / Windows 10 et l'heure d'ubuntu. Comment Ubuntu et Windows ne partageaient pas le temps. Configuration de Linux pour exécuter l'heure locale

Windows 10 et l'heure d'ubuntu. Comment Ubuntu et Windows ne partageaient pas le temps. Configuration de Linux pour exécuter l'heure locale

De nombreux nouveaux utilisateurs qui viennent de passer à Linux à partir du système d'exploitation Windows, et tout en exécutant ce système de temps en temps, sont confrontés au problème qu'après télécharger les fenêtres dans ubuntu, l'heure est perdue il y a quelques heures ou en avant, puis après plusieurs redémarrages il est déjà difficile de comprendre quelle heure il est. Tout cela est dû aux différences de format de stockage de l'heure dans ces systèmes d'exploitation Oh. Et cela se produira à chaque redémarrage, peu importe combien vous définissez l'heure correcte. Mais ce problème peut être résolu. Et même de plusieurs manières. Dans cet article, nous verrons comment résoudre le problème de la perte de temps dans Ubuntu et Windows.

CONFIGURER WINDOWS POUR FONCTIONNER EN UTC

Donc, si votre temps Windows et Linux est perdu lors du basculement entre les systèmes d'exploitation, la meilleure façon fera fonctionner Windows dans un format plus correct et logique. Tout ce que vous avez à faire est d'ajouter une clé de registre. Vous pouvez le faire avec une seule commande de console. Pour ouvrir la console dans Windows 10, déplacez votre souris vers le coin inférieur gauche, puis cliquez avec le bouton droit. DANS menu contextuel sélectionner Invite de commande (administrateur):

> Reg add HKLM\SYSTEM\CurrentControlSet\Control\Ti meZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

Et pour les 64 bits, vous devez utiliser le type de valeur REG_QWORD :

> Reg add HKLM\SYSTEM\CurrentControlSet\Control\Ti meZoneInformation /v RealTimeIsUniversal /t REG_QWORD /d 1

Target="_blank">https://losst.ru/wp-content/uploads/2016/10/utc-windows-600x139-300x70.png 300w" width="600" />

Presque prêt, mais quel que soit ce paramètre, le service de temps Windows écrira l'heure au format local lors de sa mise à jour via Internet, il est donc pratique de désactiver ce service. Pour ce faire, exécutez :

> sc config w32time start = désactivé

COMMENT RETOURNER ?

Si vous voulez tout remettre tel qu'il était, vous pouvez le faire aussi facilement que d'écaler des poires. Tout d'abord, nous remettons la clé de registre à la bonne position :

> Reg add HKLM\SYSTEM\CurrentControlSet\Control\Ti meZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 0

Et nous redémarrons le service de synchronisation :

> sc config w32time start= demande

CONFIGURER LINUX POUR TRAVAILLER EN HEURE LOCALE

Par défaut, Linux utilise le format d'heure UTC, mais si Ubuntu 16.04 perturbe l'heure Windows, vous pouvez très facilement forcer le système à stocker l'heure locale dans une minuterie matérielle. Dans toutes les distributions qui utilisent Systemd, y compris Ubuntu 16.04, il vous suffit d'exécuter la commande :

sudo timedatectl set-local-rtc 1 --adjust-system-clock

Pour afficher l'état actuel des horloges matérielles et logicielles, exécutez :

sudo timedatectl

Cible="_blank">https://losst.ru/wp-content/uploads/2016/10/rtc-localtime-600x242-300x121.jpg 300w" width="600" />

Terminé, vous pouvez maintenant redémarrer votre ordinateur et démarrer Windows pour vous assurer que le temps ne se perd pas au redémarrage. Sur les anciens systèmes Ubuntu, vous devez modifier le fichier /etc/default/rcS et remplacer UTC=yes par UTC=no. Vous pouvez le faire avec la commande :

Sudo sed -i "s/UTC=yes/UTC=no/" /etc/default/rcS

COMMENT RETOURNER ?

Encore une fois, retournez tout comme c'était possible avec une seule commande :

sudo timedatectl set-local-rtc 0

Et sur les anciennes distributions Ubuntu :

Sudo sed -i "s/UTC=no/UTC=yes/" /etc/default/rcS

CONCLUSION

C'est tout. Maintenant, si vous rencontrez problème de fenêtres 10 - ubuntu ou tout autre moment se perd Répartition Linux, vous saurez déjà comment le résoudre en utilisant deux méthodes complètement fonctionnelles.

De nombreux nouveaux utilisateurs qui viennent de passer à Linux à partir du système d'exploitation Windows, et tout en exécutant ce système de temps en temps, sont confrontés au problème qu'après le chargement de Windows dans Ubuntu, le temps recule de quelques heures ou avance, puis après plusieurs redémarrages il est déjà difficile de comprendre quelle heure il est.

Tout cela est dû aux différences de format de stockage de l'heure dans ces systèmes d'exploitation. Et cela se produira à chaque redémarrage, peu importe combien vous définissez l'heure correcte. Mais ce problème peut être résolu. Et même de plusieurs manières. Dans cet article, nous verrons comment résoudre le problème de la perte de temps dans Ubuntu et Windows.

Comme je l'ai dit, le problème réside dans les différents formats de stockage et de restauration de l'heure. L'ordinateur a deux types d'horloges. Matériel - continuez toujours, même lorsque l'ordinateur est éteint et que l'horloge logicielle est intégrée au noyau. Lorsque l'ordinateur est allumé, la valeur de l'horloge matérielle est écrite dans le logiciel, et plus tard le système d'exploitation prend le temps à partir de là. Mais Windows et Linux fonctionnent différemment avec ces deux horloges. Il existe deux manières de travailler :

  • UTC- les horloges matérielles et logicielles sont en temps moyen de Greenwich. C'est-à-dire que l'horloge donne l'heure universelle dans le fuseau horaire zéro. Par exemple, si vous avez un fuseau horaire GMT + 3, Kiev, l'horloge aura trois heures de retard. Et déjà les utilisateurs ajoutent localement une correction de fuseau horaire à cette heure, par exemple, plus +3. Chaque utilisateur ajoute la correction dont il a besoin. Cela se fait sur les serveurs afin que chaque utilisateur puisse obtenir l'heure correcte pour son fuseau horaire.
  • heure locale- dans cette option, l'horloge logicielle fonctionne également dans le Greenwich Mean Time, mais l'horloge matérielle fonctionne dans le fuseau horaire local. Pour l'utilisateur, il n'y a pas de différence, vous devez toujours ajouter un amendement à votre fuseau horaire. Mais lors du démarrage et de la synchronisation de l'heure, Windows soustrait 3 heures (ou une autre correction de fuseau horaire) de l'heure du matériel pour s'assurer que l'heure du logiciel est correcte.

Alors pourquoi Ubuntu et Windows sont-ils chronométrés ? Ici, disons que Windows est en cours d'exécution, et au fil du temps, tout va bien, il est enregistré au format heure locale. Mais lors du redémarrage sous Linux, le système d'exploitation prend Localtime et pense que c'est UTC. Ainsi, l'utilisateur prendra l'heure déjà correcte et y ajoutera une correction de fuseau horaire. Par conséquent, l'heure sera déjà incorrecte.

Ensuite, vous avez corrigé l'heure, et maintenant l'horloge matérielle fonctionne en UTC. Mais ensuite, chargez Windows. Le système pense qu'il s'agit de l'heure locale et, afin de régler l'heure logicielle correcte, ajoute une correction de fuseau horaire au matériel, par exemple, dans notre cas +3. Ensuite, chaque utilisateur applique à nouveau cette correction et l'heure a déjà été réinitialisée.

Le seul moyen sûr de résoudre ce problème est de faire fonctionner les deux systèmes dans le même format, et ce n'est pas du tout difficile à faire. Et vous pouvez procéder de deux manières : soit faire fonctionner Windows en UTC, soit Linux au format Localtime, ce qui n'est pas tout à fait correct, mais tout à fait possible. Passons donc à la résolution du problème de la perte de temps dans Ubuntu.

Configuration de Windows pour fonctionner en UTC

Donc, si vous perdez du temps sous Windows et Linux lorsque vous passez d'un système d'exploitation à l'autre, le meilleur moyen est de faire fonctionner Windows dans un format plus correct et logique. Tout ce que vous avez à faire est d'ajouter une clé de registre. Vous pouvez le faire avec une seule commande de console. Pour ouvrir la console dans Windows 10, déplacez votre souris vers le coin inférieur gauche, puis cliquez avec le bouton droit. Dans le menu contextuel, sélectionnez Invite de commande (administrateur):

> Reg ajouter HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

Et pour les 64 bits, vous devez utiliser le type de valeur REG_QWORD :

> Reg ajouter HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_QWORD /d 1

Presque prêt, mais quel que soit ce paramètre, le service de temps Windows écrira l'heure au format local lors de sa mise à jour via Internet, il est donc pratique de désactiver ce service. Pour ce faire, exécutez :

> sc config w32time start = désactivé

Comment revenir en arrière ?

Si vous voulez tout remettre tel qu'il était, vous pouvez le faire aussi facilement que d'écaler des poires. Tout d'abord, nous remettons la clé de registre à la bonne position :

> Reg ajouter HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 0

Et nous redémarrons le service de synchronisation :

> sc config w32time start= demande

Configuration de Linux pour exécuter l'heure locale

Par défaut, Linux utilise le format d'heure UTC, mais si Ubuntu 16.04 perturbe l'heure Windows, vous pouvez très facilement forcer le système à stocker l'heure locale dans une minuterie matérielle. Dans toutes les distributions qui utilisent Systemd, y compris Ubuntu 16.04, il vous suffit d'exécuter la commande :

sudo timedatectl set-local-rtc 1 --adjust-system-clock

Pour afficher l'état actuel des horloges matérielles et logicielles, exécutez :

sudo timedatectl

Terminé, vous pouvez maintenant redémarrer votre ordinateur et démarrer Windows pour vous assurer que le temps ne se perd pas au redémarrage. Sur les anciens systèmes Ubuntu, vous devez modifier le fichier /etc/default/rcS et remplacer UTC=yes par UTC=no. Vous pouvez le faire avec la commande :

sudo sed -i "s/UTC=oui/UTC=non/" /etc/default/rcS

Comment revenir en arrière ?

Encore une fois, retournez tout comme c'était possible avec une seule commande :

sudo timedatectl set-local-rtc 0

Et sur les anciennes distributions Ubuntu :

sudo sed -i "s/UTC=no/UTC=yes/" /etc/default/rcS

conclusions

C'est tout. Maintenant, si vous rencontrez le problème de Windows 10 - Ubuntu ou toute autre distribution Linux perd du temps, vous saurez déjà comment le résoudre en utilisant deux méthodes entièrement fonctionnelles. Si vous avez des questions, posez-les dans les commentaires !
Nous avons compris comment régler l'heure correcte dans Ubuntu et Windows afin que les fuseaux horaires ne s'égarent pas, mais quels sont les fuseaux horaires et pourquoi sont-ils nécessaires, pour compléter la vidéo à ce sujet :

L'utilisation de plusieurs systèmes d'exploitation sur le même ordinateur les amène parfois à entrer en conflit lorsqu'ils utilisent la même chose. Parfois, il s'agit de quelque chose d'aussi simple que le temps. Même des systèmes d'exploitation PC aussi populaires que Windows et Ubuntu ne peuvent pas s'entendre et changent constamment l'heure de l'autre en erreur.

Les raisons de ce phénomène sont en fait simples : Windows traite l'heure système (qui est affichée dans les paramètres CMOS) comme locale (en tenant compte du fuseau horaire), et Ubuntu - selon UTC (Greenwich Mean Time, sans tenir compte du fuseau horaire ). Pour cette raison, ils corrigent l'heure du système pour leur logique, violant la logique de l'autre.

La solution au problème est également simple : soit forcer Windows à ajouter un décalage de fuseau horaire à l'heure système, soit empêcher Ubuntu d'ajouter ce décalage.

Paramètres dans Ubuntu

À partir de la version 16.04, les paramètres d'affichage de l'heure peuvent être commutés avec deux commandes.

Activer l'affichage de l'heure locale :
sudo hwclock --localtime --adjust

Activer l'affichage UTC :
sudo hwclock --utc --adjust

Les anciennes versions d'Ubuntu doivent modifier le fichier rtC :

sudo nano /etc/default/rcS

Vous devez y ajouter (pour afficher l'heure locale) ou supprimer cette ligne (pour afficher l'heure UTC):

Paramètres dans Windows

Presque tout sous Windows les paramètres du système sont modifiés dans le registre, le TimeZoneInformation requis dans cette situation ne fait pas exception. Il se trouve dans le registre à cette adresse :

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

Ici, vous devez ajouter ou modifier le paramètre RealTimeIsUniversal. Son type est DWORD. Pour que l'heure système soit lue en UTC, vous devez définir la valeur sur 1, pour la reconnaître comme locale, vous devez définir la valeur sur 0 ou supprimer complètement ce paramètre.

L'éditeur de registre peut être lancé avec la commande regedit.

Dans cet article, j'ai parlé des causes et de leurs solutions si la date et l'heure de votre ordinateur sont perdues. Cet article traite des problèmes courants, quel que soit le nombre de systèmes d'exploitation installés sur votre ordinateur portable et votre unité centrale.

Aujourd'hui, nous allons parler du problème si l'heure s'égare, à savoir l'horloge, pendant plusieurs heures, comme si le fuseau horaire changeait. Ce problème est survenu pour moi après avoir commencé à utiliser deux systèmes d'exploitation Linux et Windows sur mon PC en même temps.

Ce problème n'est pas si nouveau. Pour résoudre ce problème, de nombreux problèmes ont été écrits sur Internet.

Le nœud du problème est de savoir si le temps est perdu.

Il existe deux systèmes d'exploitation sur le PC, à savoir Linux et Windows.

Je démarre Linux - le temps est normal.

J'ai travaillé et redémarré sous Windows - l'heure s'affiche quelques heures plus tôt (ou plus tard, je ne me souviens pas exactement).

J'ai réglé l'heure, mis en place une synchronisation automatique avec Internet, ou rien n'y fait. Le problème n'est pas résolu d'une manière simple. J'ai cherché sur Internet et il s'avère que le problème est que l'ordinateur a deux types d'horloges, matérielles et logicielles.

Horloge matérielle - elle fonctionne toujours, lorsque l'ordinateur est éteint également, il y a une batterie supplémentaire, une batterie sur la carte. Il supporte le passage du temps et enregistre les paramètres.

L'heure du programme, elle est écrite dans le programme lorsqu'il est allumé, puis reprise à partir de là.

Windows et Linux fonctionnent différemment avec cette horloge, d'où l'échec dans le temps lors du redémarrage d'un système d'exploitation à un autre.

Ici. ce qui est écrit à ce sujet sur d'autres sites à ce sujet :

Comment résoudre ce problème?

Faites en sorte que Windows et Linux fonctionnent de la même manière avec cette horloge matérielle.

Sur Internet, sur le thème "le temps s'égare", il est écrit que bonne décision fera fonctionner Windows correctement. Linux - fonctionne correctement, selon de nombreuses opinions de plusieurs.

Vous devez donc faire fonctionner Windows dans le temps comme Linux.

Le processus de résolution du problème.

Vous devez ajouter une clé au registre de votre système d'exploitation Windows.

Il existe des moyens d'ajouter cette clé avec une commande, avec ligne de commande. Nous ferons tout à la main dans l'ordre. Et ce que nous avons fait sera clair pour nous-mêmes, et le cerveau fonctionnera un peu.

Appelez la fenêtre exécuter avec un raccourci clavier +R. Ou sélectionnez simplement Exécuter dans le menu.

Tapez regedit et cliquez sur OK.

L'Éditeur du Registre s'ouvrira.

Accédez à la branche de registre le long du chemin HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

Là, dans la moitié gauche de l'éditeur, faites un clic droit et cliquez sur créer un paramètre

Pour les systèmes DWORD x32 bits

Pour les systèmes QWORD x64 bits

Nous lui donnons le nom RealTimeIsUniversal

En mode UEFI ( démarrage sécurisé). L'heure de mon BIOS est correcte.

Lorsque je démarre sous Ubuntu, puis sous Windows 10, la mauvaise heure s'affiche. Je dois le réparer manuellement ou en ligne dans Windows 10 et lorsque je redémarre dans Windows 10, ce n'est pas un problème. L'horloge indique l'heure exacte. Et puis quand je redémarre sous Linux, l'horloge est correcte, mais en revenant à Windows 10, l'horloge recommence à fonctionner.

Les systèmes d'exploitation stockent et récupèrent l'heure dans une horloge matérielle située sur votre carte mère pour garder une trace du temps 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 en UTC par défaut, bien que certains systèmes (en particulier Microsoft Windows) stocke l'heure sur l'horloge matérielle en tant qu'heure "locale". Cela provoque des problèmes dans un système à double amorçage si les deux systèmes traitent l'horloge matérielle différemment.

L'avantage d'utiliser l'horloge matérielle comme UTC est que vous n'avez pas à modifier l'horloge matérielle lorsque vous vous déplacez entre les fuseaux horaires ou lorsque l'heure d'été (DST) commence ou se termine, car UTC n'a pas d'heure ou de décalage horaire.

Changer Linux pour utiliser l'heure locale est plus facile et plus fiable que Remplacement de Windows utiliser l'UTC, donc les systèmes Linux/Windows à double démarrage utilisent généralement l'heure locale.

Depuis Intrepid (8.10), UTC=yes est la valeur par défaut.

Faire en sorte que Windows utilise UTC

Note. Cette méthode n'était pas prise en charge à l'origine dans Windows Vista et Server 2008 mais est revenu avec Vista SP2, Windows 7, Server 2008 R2 et Windows 8/8.1.

Pour MS Windows pour calculer 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 fusionner le contenu avec le registre :

Éditeur du Registre Windows version 5.00 "RealTimeIsUniversal"=dword:00000001

Note. Le service de temps Windows écrira toujours l'heure locale sur RTC quel que soit le paramètre de registre ci-dessus lorsqu'il est désactivé, il est donc pratique de désactiver le service de temps Windows avec cette commande (si la synchronisation de l'heure est requise alors que Windows utilise une synchronisation de l'heure tierce) :

Sc config w32time start = désactivé

Annuler la modification

Vous pouvez créer un fichier avec le contenu suivant, puis double-cliquer dessus pour le fusionner modifications d'origine, comme mentionné ci-dessus:

Éditeur du Registre Windows Version 5.00 "RealTimeIsUniversal"=-

Si le service Windows Time a été désactivé, réactivez-le avec la commande :

Sc config w32time start = demande

Rendre l'heure "locale" de Linux

Pour indiquer à votre système Ubuntu que l'horloge matérielle est réglée sur l'heure "locale" :

  1. modifier /etc/default/rcS
  2. ajouter ou modifier la section suivante

    # Set UTC=yes si votre horloge matérielle est réglée sur UTC (GMT) UTC=no

Systèmes Ubuntu 15.04 et supérieurs (par exemple, Ubuntu 16.04 LTS) :

    ouvrez un terminal et lancez la commande suivante