Jak opravit systémy Windows a Linux, které se zobrazují různými časy při duálním zavádění
Počítač ukládá čas na hardwarových hodinách na základní desce. Hodiny sledují čas, i když je počítač vypnutý. Ve výchozím nastavení Windows předpokládá, že je čas uložen v místním čase, zatímco Linux předpokládá, že je čas uložen v UTC čase a použije offset. To vede k tomu, že jeden z vašich operačních systémů vykazuje nesprávný čas v situaci s dvojím zaváděním.
Chcete-li to vyřešit, máte dvě možnosti: Udělat Linux používat místní čas, nebo Windows používat čas UTC. Nedodržujte obě kroky pokynů nebo stále nehovoří stejným jazykem! Pokud je to možné, doporučujeme Linuxu použít místní čas.
Možnost č. 1: Použití lokálního času v systému Linux
Vytváření Linuxu využívá místní čas stejným způsobem jako Windows je pravděpodobně tou nejlepší volbou. Systém Windows má nastavení registru, které jej nutí uložit čas jako UTC, ale údajně není dobře podporován a může způsobit problémy s některými aplikacemi jiných výrobců, které vždy předpokládají, že hodiny hardwaru jsou v místním čase. Je také nekompatibilní s vlastní službou Windows pro synchronizaci času.
Kroky k tomu, aby váš systém Linux používal místní čas, se mohou lišit od distribuce Linuxu k distribuci Linuxu. V libovolné distribuci systému Linux s systémem však můžete použít timedatectl
příkaz k provedení této změny. To bude pracovat na moderních verzích Ubuntu, Fedory, Red Hat, Debianu, Mint a dalších distribucích Linuxu, které používají systemd.
Chcete-li provést tuto změnu, nejprve otevřete okno Terminál v systému Linux. Spusťte následující příkaz a vložte hodiny reálného času na základní desku do místního času. Linux uloží čas v místním čase, stejně jako Windows.
timedatectl set-local-rtc 1 - správné-systémové hodiny
Chcete-li zkontrolovat aktuální nastavení, spusťte:
timedatectl
Pokud uvidíte "RTC v místním TZ: ano", Linux je nastaven na místo místního časového pásma namísto UTC. Příkaz vás upozorní, že tento režim není plně podporován a může způsobit problémy při změně časových pásem a letního času. Tento režim je však pravděpodobně lepší než volba UTC v systému Windows. Pokud používáte systém Windows se systémem dual-boot, systém Windows zvládne letní čas.
Pokud někdy chcete tuto změnu vrátit zpět, spusťte následující příkaz:
timedatectl set-local-rtc 0 - nastavit-system-clock
Možnost č. 2: Použití času UTC v systému Windows
Používání systému Windows časem UTC jako Linux pravděpodobně není nejlepší volbou. Registr můžete upravit tak, aby systém Windows používal čas UTC, ale mohlo by to způsobit více problémů, než aby Linux použil místní čas.
Pokud to chcete udělat, nejprve budete chtít v systému Windows zakázat funkci aktualizace času v Internetu. To zajistí, že systém Windows nebude chybně nastavovat hodiny při synchronizaci aktuálního času z Internetu. V systému Windows 10 přejděte do části Nastavení> Čas a jazyk a deaktivujte funkci Automaticky nastavit čas. V systému Windows 7 klepněte pravým tlačítkem myši na systémové hodiny v hlavním panelu a vyberte možnost "Upravit datum / čas". Klikněte na kartu "Internetový čas", klikněte na tlačítko "Změnit nastavení", zrušte zaškrtnutí volby "Synchronize with Internet time server" a klikněte na "OK".
Udělat Windows používat čas UTC úpravou registru
Nyní budete muset do registru systému Windows přidat příslušnou hodnotu. Zde je naše standardní upozornění: Editor registru je mocný nástroj a zneužití může způsobit, že váš systém je nestabilní nebo dokonce nefunkční. To je docela snadné hack a neměli byste mít žádné problémy, pokud budete postupovat podle pokynů. Pokud jste s tím dosud nikdy nepracovali, zvažte, jak začít používat Editor registru. A před provedením změn určitě zálohujte registr (a váš počítač!).
Nejprve otevřete Editor registru klepnutím na tlačítko Start, zadáním příkazu "regedit" a stisknutím klávesy Enter. Souhlasíte se zobrazením výzvy k zabezpečení.
Přejděte na následující klíč v levém podokně editoru registru:
HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ TimeZoneInformace
V nejnovějších verzích systému Windows 10 můžete zkopírovat a vložit výše uvedený řádek do pole Adresa. Nicméně, tento hack bude fungovat i na Windows 7.
Klepněte pravým tlačítkem myši na klíč "TimeZoneInformation" a vyberte položku Nový> Hodnota DWORD (32bitové).
Název nové hodnoty RealTimeIsUniversal
.
Poklepejte na ikonu RealTimeIsUniversal
Hodnota, kterou jste právě vytvořili, je hodnota dat 1
, a klikněte na tlačítko "OK".
Nyní jste hotovi a můžete zavřít Editor registru. Windows uloží čas v UTC, stejně jako Linux.
Pokud někdy chcete tuto změnu vrátit zpět, vraťte se do tohoto umístění v registru pravým tlačítkem myši RealTimeIsUniversal
přidána hodnota a odstranit ji z registru.
Stáhněte si naše One-Click Registry Hack
Pokud nechcete upravit registru sami, můžete použít náš stahovatelný soubor hack. Vytvořili jsme jeden hack, který způsobuje, že systém Windows používá čas UTC a ten, který jej obnovuje na místní čas. Oba jsou zahrnuty v následujícím souboru ZIP. Jednoduše stáhněte soubor, poklepejte na hack, který chcete použít, a souhlaste s přidáním informací do registru.
Udělat Windows používat čas UTC
Uvedené hacks dělají totéž, co jsme popsali výše. Značka UTC využívající systém Windows UTC vytváří položku "RealTimeIsUniversal" s hodnotou "1", zatímco v nástroji Využití lokálního času v systému Windows se vymaže položka "RealTimeIsUniversal".
Pokud se chcete dozvědět, co tento nebo jiný soubor .reg dělá, klepněte pravým tlačítkem myši na něj a vyberte "Upravit", chcete-li zobrazit soubor v programu Poznámkový blok. Můžete snadno vytvořit vlastní registru hacks, které se skládají ze seznamu položek registru přidávat, upravovat a odebírat ve správně formátovaný seznam.
Co o systému dual-booting systému Windows na počítači Mac?
Přestože Apple MacOS používá čas UTC jako Linux, nemusíte dělat nic zvláštního při spouštění systému Windows v Boot Camp na počítači Mac. Ovladače společnosti Apple Boot Camp zpracovávají vše. (Hackintosh dual-booters jsou další příběh, i když, a bude muset zkusit pomocí registru Windows vylepšení výše.)
Pokud se divíte, proč Windows používá místní čas namísto UTC jako ostatní operační systémy, vysvětluje zde oficiální blog Microsoft The Old New Thing. Stručně řečeno, bylo zachovat zpětnou kompatibilitu se systémy Windows 3.1 a zabránit tomu, aby se lidé dostali zmatek, když nastavili čas v BIOSu počítače. Samozřejmě, že výrobci PC si vybrali místní čas, aby byli kompatibilní se systémem Windows a Windows si vybrali místní čas, aby byli kompatibilní s rozhodovacím rozhodnutím výrobců PC, takže se cyklus stal samopevnějícím.
V současné době neexistuje standard pro označení, zda je čas uložen jako UTC nebo místní čas v firmwaru BIOS nebo UEFI, což by pravděpodobně bylo nejlogičtějším řešením. Ale to by vyžadovalo nějakou práci a většina lidí si nikdy ani nevšimne, že různé operační systémy používají různé časové formáty - s výjimkou konfigurací se dvěma bootmi.