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
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
3. Az összes elérhető időzóna megtekintéséhez futtassa az alábbi parancsot:
timedatectl list-timezones
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.*"
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
Mindig javasolt a koordinált világidő, UTC használata és beállítása.
sudo timedatectl set-timezone UTC
timedatectl status
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
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'
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 a hardverórát koordinált világidőre (UTC):
sudo timedatectl set-local-rtc 0
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
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.










