Weboldal keresés

Hogyan állítsuk be az időt, az időzónát és a rendszerórát Linuxon


Ebben a cikkben megtanulhatja, hogyan állítsa be az időt, az időzónát, és hogyan szinkronizálja a Linux rendszer óráját az NTP-vel a timedatectl, a systemd-timesyncd és a chrony használatával. :

A „timedatectl” parancs egy eszköz a RHEL-alapú és Debian-alapú disztribúciókhoz, és a „systemd” rendszer- és szolgáltatáskezelő része, amely a régi, hagyományos date parancs helyettesítésére szolgál a „sysvinit” démonalapú Linux-disztribúciókban.

A timedatectl parancs lehetővé teszi a rendszeróra és annak beállításainak lekérdezését és módosítását, ezzel a paranccsal beállíthatja vagy megváltoztathatja a jelenlegi dátumot, időt és időzónát, vagy engedélyezheti a rendszeróra automatikus szinkronizálását egy távoli NTP szerverrel.

Ebben a bemutatóban végigvezetlek azon a módon, ahogyan kezelheted az időt a Linux rendszereden a dátum, idő, időzóna beállításával, valamint az idő szinkronizálásával NTP-vel a terminálból a timedatectl, systemd-timesyncd és chrony használatával.

Mindig jó gyakorlat, ha a Linux szerverén vagy rendszerén a pontos idő van beállítva, és ennek a következő előnyei lehetnek:

  • Biztosítsa a rendszerfeladatok időben történő végrehajtását, mivel a Linuxban a legtöbb feladatot idő alapján vezérlik.
  • Pontos idő a rendszer eseményeinek és egyéb információinak naplózásához.
  • Megfelelő szinkronizáció elosztott rendszerek és alkalmazások számára.
  • Elengedhetetlen a biztonsági protokollokhoz, mint a Kerberos és a SSL/TLS tanúsítvány-ellenőrzés.

Hogyan találjuk meg és állítsuk be a helyi időzónát Linuxon

1. A rendszer aktuális idejének és dátumának megjelenítéséhez használja a timedatectl parancsot a parancssorból a következő módon:

timedatectl  status

Linux rendszer idejének és dátumának ellenőrzése

A fenti kimenetben a RTC idő a hardveróra ideje.

2. A rendszeridőt a Linux rendszeren mindig a beállított időzóna kezeli, az aktuális időzóna megtekintéséhez a következőképpen járjon el:

timedatectl 
OR
timedatectl | grep Time

Ellenőrizze a Linux rendszer időzónáját

3. Az összes elérhető időzóna megtekintéséhez futtassa az alábbi parancsot:

timedatectl list-timezones

Összes időzóna listázása egy Linux rendszeren

4. A helyi időzóna megtalálásához a tartózkodási helyed szerint futtasd a következő parancsot.

timedatectl list-timezones |  egrep  -o "Asia/B.*"
timedatectl list-timezones |  egrep  -o "Europe/L.*"
timedatectl list-timezones |  egrep  -o "America/N.*"

Találd meg a helyi időzónádat Linuxon

5. A helyi időzóna beállításához Linux alatt a set-timezone kapcsolót fogjuk használni, az alábbiak szerint.

sudo timedatectl set-timezone "Asia/Kolkata"
timedatectl status

Állítsa be a helyi időzónát egy Linux rendszeren

Mindig javasolt a koordinált világidő, UTC használata és beállítása.

sudo timedatectl set-timezone UTC
timedatectl status

Rendszeridejének UTC-re állítása

A helyes időzóna nevet kell beírnia, különben hibákat tapasztalhat az időzóna megváltoztatásakor. A következő példában az „Asia/Kolkata” időzóna nem helyes, ezért hibát okoz.

failed to set time zone: invalid timezone

Hogyan állítsuk be az időt és a dátumot Linuxon

A rendszer dátumát és idejét az alábbi módon a timedatectl parancs segítségével állíthatja be:

Idő beállítása Linuxon

6. Csak az idő beállításához használhatjuk a set-time kapcsolót az HH:MM:SS (Óra, Perc és Másodperc) formátumban.

sudo timedatectl set-time 12:25:30
timedatectl status

A fenti módon történő dátumbeállításkor a következő hibaüzenetet kaphatja:

Failed to set time: Automatic time synchronization is enabled

A hiba azért fordul elő, mert az automatikus időszinkronizáció (NTP) engedélyezve van, ami megakadályozza a kézi időbeállítást.

A javításhoz először tiltsa le az NTP-t, majd állítsa be az időt.

sudo timedatectl set-ntp false
sudo timedatectl set-time 12:25:30
timedatectl status

Dátum és helyi idő beállítása Linuxon

7. A dátum és az idő beállításához használd a set-time kapcsolót a YYYY-MM-DD formátumban megadott dátummal (Év, Hónap, Nap) és a HH:MM:SS formátumban megadott idővel (Óra, Perc, Másodperc):

sudo timedatectl set-time '2026-01-23 12:25:30'

Dátum és idő beállítása YY:MM:DD és HH:MM:SS formátumban

Hogyan találjuk meg és állítsuk be a hardverórát Linuxon

8. A hardveróra koordinált világidőre (UTC) állításához használja a set-local-rtc boolean-value opciót a következő módon:

Először derítse ki, hogy a hardverórája a helyi időzónára van-e állítva:

timedatectl | grep local

Állítsa be a hardverórát a helyi időzónára:

sudo timedatectl set-local-rtc 1

Állítsa be a hardverórát UTC-re Linuxon

Állítsa a hardverórát koordinált világidőre (UTC):

sudo timedatectl set-local-rtc 0

Állítsa be a hardverórát UTC-re

Megjegyzés: Az RTC helyi időre állítása nem ajánlott, és problémákat okozhat a nyári időszámítás szerinti beállításokkal, ezért a legjobb az RTC UTC időben tartása.

A Linux rendszeróra szinkronizálása egy távoli NTP szerverrel

NTP a Hálózati Időprotokoll rövidítése, amely egy internetes protokoll, és a számítógépek rendszerórájának szinkronizálására szolgál.

A timedatectl segédprogram lehetővé teszi, hogy automatikusan szinkronizálja a Linux rendszer óráját egy távoli szervercsoporttal az NTP használatával.

A legtöbb modern Linux-disztribúció különböző megoldásokat használ az NTP szinkronizációhoz:

  • systemd-timesyncd: Egy könnyű SNTP (Simple NTP) kliens, amely be van építve a systemd-be, és alkalmas a legtöbb asztali és egy szerveres környezethez.
  • chrony: Egy teljes funkcionalitású NTP megvalósítás, amely kliensként és szerverként is működhet. Jobban kezeli az időszakos hálózati kapcsolatokat, és pontosabb.

A systemd-timesyncd használata

Az automatikus időszinkronizálás elindításához egy távoli NTP szerverrel írja be a következő parancsot a terminálra, amely engedélyezi és elindítja a systemd-timesyncd szolgáltatást.

sudo timedatectl set-ntp true

Az NTP időszinkronizáció kikapcsolásához írja be a következő parancsot a terminálba.

sudo timedatectl set-ntp false

A szinkronizálási állapot ellenőrzéséhez:

timedatectl status

Látnod kell a következőt: „Rendszeróra szinkronizálva: igen” és „NTP szolgáltatás: aktív”.

Chrony használata (Ajánlott szerverekhez)

Ha szervert üzemeltetsz, vagy megbízhatóbb időszinkronizációra van szükséged, a chrony a jobb választás, és különösen jó a következőkre:

  • Rendszerek, amelyek nem folyamatosan működnek (laptopok, asztali számítógépek).
  • A szervereknek nagy pontosságra van szükségük.
  • Olyan rendszerek, amelyek időszakosan csatlakoznak a hálózathoz.
  • Klaszteres környezetek, ahol az időbeli következetesség kritikus.

Először telepítse a chrony-t (ha még nincs telepítve):

sudo apt install chrony   [On Debian-based systems]
sudo dnf install chrony   [On RHEL-based systems]

Megjegyzés: A chrony telepítése automatikusan letiltja a systemd-timesyncd-t az ütközések elkerülése érdekében.

Telepítés után engedélyezze, indítsa el, és ellenőrizze a szinkronizáció állapotát:

sudo systemctl enable --now chronyd
timedatectl status

Rendszeróra szinkronizálási állapotának ellenőrzése

Ahhoz, hogy a saját NTP szervereidet használd az alapértelmezett helyett, szerkesztened kell a Chrony konfigurációs fájlt.

sudo nano /etc/chrony/chrony.conf
OR
sudo nano /etc/chrony/sources.d/custom.sources

Add meg a preferált NTP szervereidet (NTP szerverek listáját az NTP Pool Project weboldaláról szerezheted be).

pool 0.pool.ntp.org iburst
pool 1.pool.ntp.org iburst
pool 2.pool.ntp.org iburst

Indítsa újra a chrony-t a módosítások után:

sudo systemctl restart chronyd

Fontos megjegyzések az NTP szinkronizálásról

  • Nem futtathat többszörös NTP-implementációkat egyszerre, ezért válassza a systemd-timesyncd vagy a chrony lehetőséget.
  • systemd-timesyncd csak kliensoldali megvalósítás, és nem tud időt szolgáltatni más rendszereknek.
  • chrony egyszerre működhet időügyfélként és időszolgáltatóként a helyi hálózatodon.
  • Termelési szerverek és kritikus infrastruktúra esetén általában a chrony ajánlott a systemd-timesyncd helyett.
  • Az NTP-nek a 123-as UDP portnak nyitva kell lennie a kimenő kapcsolatokhoz.
Összefoglaló

Ezek nagyon egyszerű példák, amelyeket ebben a bemutatóban ismertetünk, és remélem, hasznosnak találod őket különböző Linux rendszerórák és időzónák beállításához.

Ha többet szeretnél megtudni erről az eszközről, látogass el a timedatectl kézikönyv-oldalára.

man timedatectl

Ha van bármi mondanivalód ezzel a cikkel kapcsolatban, nyugodtan hagyhatsz egy hozzászólást további információk hozzáadásához.