Jak nastavit synchronizaci času sítě v systému Linux

I když se to může zdát jako něco, o co by se mělo automaticky starat, nastavení času v Linuxu může být často zpackané nebo nesprávně nakonfigurováno. Vzhledem k tomu, že nastavení času v Linuxu může být pro běžného uživatele matoucí při opravě, rozebereme a vysvětlíme, jak nastavit synchronizaci času v síti v Linuxu.

Kromě nastavení NTP si také vysvětlíme, jak opravit nepříjemnou časovou chybu při duálním spouštění Linuxu a Windows.

Nakonfigurujte Network Time Protocol

Synchronizace softwarových hodin na vašem počítači se systémem Linux s časovými servery je nejběžnějším způsobem, jak získat přesný čas. Ve většině distribucí Linuxu se to děje automaticky. Ne každá distribuce Linuxu však používá NTPd. Navíc ti, kteří to dělají, to mohou zkazit nebo nesprávně nakonfigurovat. Abychom to napravili, vysvětlíme, jak snadné je ručně nakonfigurovat démona Network Time Protocol pod Linuxem.

Začněte otevřením terminálu a instalací NTP, pokud jej váš počítač nemá nainstalovaný. Je velká šance, že ji již máte, ale pro jistotu zde jsou příkazy, jak ji získat pro většinu moderních distribucí Linuxu.

  4 nejlepší klienti Github pro Linux

Ubuntu

sudo apt install ntp

Debian

sudo apt-get install ntp

Arch Linux

sudo pacman -S ntp

Fedora

sudo dnf install ntp

OpenSUSE

sudo zypper install ntp

S nainstalovaným softwarem se budete muset připojit k serveru NTP. Ve výchozím nastavení má většina distribucí Linuxu své vlastní servery NTP nakonfigurované v souboru /etc/ntp.conf. Pokud se však domníváte, že tyto servery jsou nespolehlivé, můžete je změnit na spolehlivější server (jako je oficiální server Google NTP).

Chcete-li přidat server Google NTP, upravte soubor ntp.conf.

sudo nano /etc/ntp.conf

Pokud chcete, vymažte všechny záznamy a nahraďte je těmito (ačkoli to nedoporučujeme). Nejlepších výsledků dosáhnete vložením položek Google NTP úplně nahoru.

Poznámka: Je důležité, aby iburst byl na konci každého nového záznamu. Možnost iburst odešle „shluk“ paketů na servery pouze v případě, že budete čelit problémům s připojením k časovému serveru.

server time.google.com iburst

server time2.google.com iburst

server time3.google.com iburst

Po dokončení uložte konfigurační soubor v Nano pomocí Ctrl + O. Ukončete editor pomocí Ctrl + X.

Nastavit čas

NTP může automaticky synchronizovat čas ze serverů, ale nejprve potřebuje znát časové pásmo. Obvykle se během počátečního nastavení váš operační systém Linux zeptá na časové pásmo a nastaví ho. Pokud se během instalace něco pokazilo, bude nutné to opravit ručně pomocí tzselect.

  Jak aktualizovat desktopovou aplikaci Telegram Linux

Otevřete terminál a spusťte nástroj pro časové pásmo:

tzselect

Spuštění nástroje Tzselect vás provede konfigurací správného časového pásma. Po dokončení budete moci spustit NTPd.

Spouštění NTP

Všechna připojení k časovým serverům fungují. Dalším krokem v procesu je použití inicializačního systému Systemd k načtení NTP při spouštění. Pochopte, že pokud váš operační systém Linux nepoužívá systemd jako většina moderních, mainstreamových, budete muset najít alternativu k těmto příkazům.

Nejprve spusťte NTPd:

sudo systemctl start ntpd.service

Poté jej povolte při spouštění pomocí povolení systemctl.

sudo systemctl enable ntpd.service

Spuštění výše uvedených příkazů by mělo okamžitě nakonfigurovat čas, protože čas UTC ve vašem BIOSu je nyní správný (díky Tzselect).

Použijte místní čas

Existují další způsoby, jak nastavit čas v Linuxu, kromě NTP. Nejoblíbenější alternativou této metody je „místní čas“. Místní čas říká Linuxu, aby držel čas, ale aby se s ničím nesynchronizoval. V podstatě bude udržovat čas v sobě a nebude ničím rušit. Je to méně spolehlivé, ale funguje to. Otázka je, proč byste to chtěli udělat?

  Jak získat přístup k Disku Google v systému Linux

Hlavním důvodem, proč by člověk přešel s místním časem přes něco jako NTP, je skutečnost, že duální spouštění narušuje váš čas. Pokud jste někdy nahráli Linux a poté restartovali Windows 10, všimnete si časových přestávek. Je to proto, že oba operační systémy mají službu synchronizace času a bojují spolu. Hlavním způsobem, jak to vyřešit, je zakázat synchronizaci času v Linuxu.

Poznámka: Mějte na paměti, že i když jste nastavili Linux na používání místního času, Windows mohou stále čelit problémům. Nezapomeňte zkontrolovat nastavení času ve Windows, abyste se ujistili, že nedochází k dalším konfliktům s těmito dvěma operačními systémy.

Spuštění timedatectl by to mělo opravit:

sudo timedatectl set-local-rtc 1

Po návratu k místnímu času budete možná muset restartovat počítač. Po opětovném přihlášení by vše mělo používat místní čas.

Chcete místní čas opět vypnout? Pokud ano, budete muset znovu spustit příkaz timedatectl. Zkuste příkaz níže.

sudo timedatectl set-local-rtc 0

Stejně jako předtím restartujte počítač se systémem Linux, abyste měli jistotu. Při příštím přihlášení by se neměl používat místní čas.