Tento kurz se zaměřuje na techniky pro nastavení data a času na Linuxu pomocí timedatectl, NTP, acgih nebo datum.

jako správce systému můžete být požádáni o nastavení data systému na více serverech.

mohou být nakonfigurovány špatně nebo jejich Časové pásmo nemusí být správně nakonfigurováno.

v důsledku toho mohou některé z vašich programů zaznamenávat neplatná data, což vede k tomu, že například nemůžete zkontrolovat některé protokoly serveru.,

V tomto tutoriálu, budeme vidět, jak si správně nastavit datum na Linux, aby odpovídaly vaší aktuální zeměpisné pásmo.

nejprve se podíváme na příkaz timedatectl s volbou systemd-timesync. Dále budeme instalovat služby chrony nebo NTP, abychom efektivně synchronizovali naše systémové datum.

nakonec použijeme příkaz „datum“ pro statické nastavení data systému.

budeme také diskutovat o rozdílech mezi těmito metodami a o tom, který z nich chcete nejlépe použít.,

Obsah

Předpoklady

Než začnete, budete muset mít sudo oprávnění na hostitelském počítači s cílem provádět některé příkazy.

Aby se ujistil, můžete spustit následující příkaz,

$ sudo -lUser user may run the following commands on localhost: (ALL) ALL

Pokud nemáte sudo oprávnění na vašem účtu, postupujte podle tohoto návodu, aby se sudo na Debianu založené, nebo na Red Hat na bázi systémů (CentOS, RHEL)

Nastavit datum na Linuxu pomocí timedatectl

Ať už pracujete na Debianu/Ubuntu nebo na RHEL/CentOS, způsob, jak nastavit datum je stejné.,

Chcete-li nastavit datum, musíte nastavit informace o časovém pásmu a (volitelně) aktivovat protokol NTP, aby se váš systém mohl synchronizovat se servery NTP. Pokud nepoužíváte protokol NTP (s ntpd nebo chrony), váš systém bude ve výchozím nastavení používat službu timesync.

Pokud je vaše Časové pásmo špatně nakonfigurováno, budete muset upravit informace o časovém pásmu.

Chcete-li se podívat na aktuální časové pásmo v systému Linux, můžete spustit příkaz timedatectl.

řekněme, že ji chcete upravit.,

pro seznam časových pásem v Linuxu použijte možnost „Seznam-Časové pásmo“ s timedatectl.

$ timedatectl list-timezones

Jak můžete vidět, časových pásem jsou prezentovány pomocí následující syntaxe : kontinentu/regionu.

Chcete-li nastavit časové pásmo do New Yorku, můžete jej snadno vyhledat pomocí grep.

$ timedatectl list-timezones | grep YorkAmerica/New_York

pro nastavení časového pásma použijte příkaz „set-timezone“.

$ timedatectl set-timezone America/New_York

Chcete-li zkontrolovat aktuální datum systému, musíte znovu spustit příkaz timedatectl.,

aktuální datum však ještě není synchronizováno, budete muset aktivovat službu NTP, aby se mohla synchronizovat.

ve výchozím nastavení, pokud pracujete s distribucí s systemd, měli byste mít daemon systemd-timesync ve výchozím nastavení.

hlavní rozdíl mezi systemd-timesync a NTP je, že démon pouze implementuje na straně klienta a není pomocí složitých mechanismů, jako je NTP.

Chcete-li povolit synchronizaci času, jednoduše spusťte tento příkaz.,

$ timedatectl set-ntp truesystemd-timesyncd.service active: true

Pokud dáváte přednost použití chrony nebo NTP, další části popisují, jak můžete nastavit NTP a chrony za účelem synchronizace systémového data.

nastavte datum v Linuxu pomocí chrony (NTP)

nejpřesnějším způsobem nastavení data v Linuxu je použití protokolu ntp.

jako rychlé připomenutí se protokol NTP používá k synchronizaci času mezi různými servery v síti.

budete používat referenční časové servery, které budou synchronizovány s vaším vlastním serverem výpočtem latencí pro kontaktování referenčních serverů.,

pomocí protokolu NTP budete mít v systému Linux velmi přesné datum.

Chcete-li nastavit datum, budete používat službu chrony.

nejprve se ujistěte, že služba timesyncd není na vašem hostiteli spuštěna.

$ sudo systemctl stop systemd-timesyncd.service

dále se ujistěte, že jsou vaše balíčky na vašem serveru aktuální.

$ sudo yum update

poté nainstalujte chrony balíček pomocí YUM.

$ sudo yum install chrony $ sudo apt-get install chrony 

ve většině případů může být služba chrony ve výchozím nastavení nainstalována do vaší distribuce.,

Chcete-li povolit a spustit službu chrony, musíte spustit následující příkazy.

$ sudo systemctl enable chronyd$ sudo systemctl start chronyd

ověřte stav vaší služby pomocí příkazu status.

$ sudo systemctl status chronyd

Nyní, že chrony je nainstalována na vašem systému, můžete změnit nastavení systému, datum, nastavení časového pásma systému.,

Všimněte si, že nemusíte nastavit aktivovat NTP protokol pro timedatectl příkaz jako výchozí chrony automaticky desactivate systemd-timesync daemon aby bylo možné používat NTP.

Pokud se o to chcete ujistit, můžete stále spustit následující příkaz.

$ timedatectl set-ntp true

Spusťte příkaz timedatectl znovu, abyste se ujistili, že je vše synchronizováno.

Poznámka: namísto “ služby NTP „můžete stále mít“ systemd-timesyncd.service active “ label nastaven na Ano., Neznamená to, že služba je aktivní, ale znamená to, že hostitel používá chrony jako způsob synchronizace.

také můžete spustit“ datum “ pro kontrolu aktuálního data systému.

$ date Thu Oct 17 13:16:10 EDT 2019

úžasné!

úspěšně jste nastavili datum na Linuxu (CentOS / RHEL) pomocí chrony.

nastavte datum na Linuxu pomocí ntpd (NTP)

jak bylo popsáno dříve, použití protokolu NTP je pravděpodobně nejpřesnějším způsobem nastavení data na Ubuntu a Debianu.

nejprve nainstalujete službu ntp na svého hostitele.,

Chcete-li nainstalovat klienta NTP, jednoduše spusťte následující příkaz.

$ sudo apt-get install ntp $ sudo yum install ntp 

ve výchozím nastavení se spuštěním tohoto příkazu nainstaluje a aktivuje služba NTP (Network Time Service) na vašem hostiteli.

Chcete-li to zajistit, získejte stav služby NTP.

$ sudo systemctl status ntp

ve výchozím nastavení, spuštění nebo restartování NTP služby nebude aktivovat NTP služby pro timedatectl příkaz.

Chcete-li aktivovat synchronizaci NTP, zadejte možnost „set-ntp“.,

$ timedatectl set-ntp true

znovu spusťte jednoduchý příkaz timedatectl, abyste se ujistili, že vše běží správně.

úžasné!

správně jste nastavili datum na Linuxu pomocí ntp.

nastavte datum v Linuxu pomocí příkazu date

jedním ze způsobů nastavení data v Linuxu je použití příkazu date.

jednou z hlavních nedostatků tohoto přístupu je skutečnost, že nikdy nebudete tak precizní jako nastavení časového pásma a jeho synchronizace s timesyncd nebo chronyd.

je však stále možné to udělat tímto způsobem.,

nejprve zrušte synchronizaci času na vašem hostiteli, jinak bude synchronizační služba pokaždé vymazána Ruční změna data.

$ sudo timedatectl set-ntp false

pro nastavení data použijte“ date „s volbou“- s“.

$ date -s <date>

například pomocí formátu RRRR-MM-dd můžete nastavit datum tímto způsobem.

$ date -s '2019-10-17 12:00:00'Thu Oct 17 12:00:03 EDT 2019$ date -s '23 October 2019 12:00:00'Wed Oct 23 12:00:00 EDT 2019

můžete také použít zkratky pro snadné nastavení data.

Pokud chcete změnit pouze rok, můžete použít zkratku „příští rok“ nebo „minulý rok“.,

$ sudo date -s "next year"Sat Oct 17 12:02:21 EDT 2020$ sudo date -s "last year"Thu Oct 17 12:02:43 EDT 2018

můžete se také rozhodnout upravit pouze měsíc nebo den pomocí následujících zkratek.

Synchronizujte hardwarové hodiny s datem vašeho systému

před pokračováním v každodenních úkolech správy systému může být dobré synchronizovat hardwarové hodiny s datem systému.

tímto způsobem se ujistíte, že vaše dvě hodiny nezobrazují různá data a hodiny.

Chcete–li synchronizovat hardwarové hodiny s datem systému, použijte příkaz „hwclock“ s volbou „- systohc“.

$ sudo hwclock --systohc$ sudo hwclock2019-10-23 13:03:56.466724-0400

skvělé!,

úspěšně jste synchronizovali hardwarové hodiny s aktuálním datem systému.

závěr

v dnešním tutoriálu jste se dozvěděli, jak můžete snadno nastavit datum v jakémkoli systému Linux.

zjistili jste, že můžete nastavit časové pásmo a nechat démona systemd-timesyncd provést synchronizaci času.

Pokud hledáte přesnější a efektivnější techniky synchronizace času, zjistili jste, že k dosažení tohoto výsledku můžete použít chrony nebo NTP.

také jste viděli, že je možné nastavit datum staticky pomocí příkazu date.,

Pokud máte zájem o správu systému Linux, máme spoustu tutoriálů na toto téma.