Depuis que j’ai commencé à utiliser Linux avec Dualboot sous Windows, j’ai remarqué que lorsque j’ai redémarré la machine, l’heure était fausse sur l’autre système d’exploitation. Lorsque j'ai vérifié le BIOS, le RTC était réglé à 18h00. Étant donné que mon fuseau horaire est -06: 00 CST, je suppose que Linux règle simplement l'heure du RTC à UTC et recalcule l'heure en fonction du fuseau horaire, alors que Windows règle simplement le RTC sur l'heure locale. Les deux utilisent le même serveur NTP pour synchroniser l'heure.
La question est de savoir lequel fait la bonne chose? Sur lequel dois-je régler le fuseau horaire sur UTC afin d’avoir la bonne heure sur les deux?
Réponses:
Ni l'un ni l'autre n'a tort, mais utiliser l'UTC est plus juste. Le RTC n'a pas de fuseau horaire; c'est juste une horloge murale stupide. Si votre fuseau horaire local respecte l'heure d'été (il existe de nombreuses variantes et que les règles changent arbitrairement), deux fois par an, vous devez le modifier. Le système d’exploitation le fera pour vous, mais si le RTC est UTC, le système d’exploitation fait de toute façon la traduction UTC-> locale - pourquoi jouer avec l’horloge? En outre, pendant la transition "de repli" de l’heure d'été, le CCF ne peut pas vous dire quelle heure il est! Est-ce qu'il est 1 h 30, heure de Paris ou CST?
Apparemment, Windows 8 prend en charge l'UTC pour le RTC. Windows 7 l'a également fait, mais il y avait des problèmes .
Il y avait un meilleur argument contre cela lorsque les gens définissaient leurs horloges BIOS manuellement, mais l'heure basée sur le serveur est beaucoup plus répandue maintenant.
la source
J'ai récemment fait face au même problème et voici comment je l'ai résolu. Vous devez faire un peu de changement dans les deux systèmes d'exploitation.
J'ai d'abord commencé avec Linux. Exécutez ces commandes suivantes en tant que root.
Cela mettra à jour votre temps s'il n'est pas réglé correctement.
Maintenant, réglez l'horloge matérielle sur UTC avec cette commande.
La source
Maintenant, démarrez Windows et ajoutez le registre suivant. Créez simplement un fichier .reg en utilisant le code ci-dessous dans le Bloc-notes. Enregistrez-le et lancez-le.
La source
À partir du prochain démarrage, les deux systèmes d'exploitation vous indiqueront l'heure exacte.
la source
Le cas normal est que l'horloge temps réel (RTC) est définie sur UTC et que la conversion en heure locale est effectuée dans l'espace utilisateur en fonction des données de fuseau horaire et de la
TZ
variable d'environnement. C’est "moins mauvais" car le système RTC augmente de façon monotone et applique plus tard toute magie de fuseau horaire, garantissant par exemple qu’aucun fichier n’aura normalement d’horodatage (ce qui peut facilement se produire au moins une fois par an si le le système RTC est réglé sur l'heure locale). Comme Ken l'a souligné , le CCF lui-même n'a pas de concept de fuseau horaire, mais seulement du temps.Comme vous l'avez constaté, cela pose des problèmes lors du double démarrage avec un système qui ne fonctionne pas normalement de cette façon, comme la famille de systèmes d'exploitation Microsoft qui s'attend généralement à ce que le RTC soit défini sur l' heure locale . Oui, Windows NT (je pense remonter jusqu’à NT 4, en fait) peut fonctionner avec le RTC défini sur UTC, mais au moins la dernière fois, j’ai regardé qu’il n’était pas vraiment une configuration prise en charge et qu’il y avait un certain nombre de mises en garde.
La solution la plus simple dans votre cas est probablement de régler le RTC sur l'heure locale et d'indiquer à votre système Linux que le RTC est défini sur l'heure locale (la mécanique exacte de cette opération varie en fonction de la distribution et de la version, mais apparemment dans Ubuntu, vous définissez
UTC=no
/ etc / default / rcS ), puis configurer les systèmes d'exploitation de sorte que seul l' un d'entre eux ( de préférence celui que vous utilisez le plus, depuis le temps affiché dans tous les autres seront faussés deux fois par an jusqu'à ce qu'il ait été botté et a eu une chance pour le corriger) gère les changements de l' heure d'été . Et vivre avec les inconvénients, ce qui devrait être gérable sur un système mono-utilisateur.Vous pouvez également configurer Windows pour qu'il utilise l'UTC comme fuseau horaire, désactiver les modifications automatiques de l'heure d'été dans Windows et laisser Linux paramétré pour que le RTC soit au format UTC et afficher l'heure convertie conformément à ses pratiques. Cependant, cela entraînera Windows à afficher la date et l'heure en UTC, ce qui pourrait ne pas être ce que vous voulez vraiment. Ce n'est pas un gros problème pour nous, Européens, qui sommes tout au plus à environ trois heures de distance de l'UTC, mais qui pourrait être plus un problème aux États-Unis. C'est probablement une option plus réaliste si vous utilisez Windows occasionnellement et que votre système d'exploitation principal est Linux ou un autre système d'exploitation compatible RTC-UTC.
la source
Vous devez configurer votre système Linux pour qu'il utilise l'heure locale, comme expliqué dans ce guide pour Ubuntu .
la source
Je double amorce windows 10 et remix os et je ne fais que suivre le guide pour windows a fonctionné pour moi les deux fois sont corrects. J'ai utilisé la ligne de commande pour ajouter votre script, car c'était plus facile
la source