timedatectl: tijdsynchronisatie van een Linux-server controleren en de tijdzone instellen
timedatectl is een systemd-commando dat de systeemklok, de tijdzone en de status van de NTP-tijdsynchronisatie van een Linux-server toont en wijzigt. Bij het controleren van de tijdsynchronisatie op een AlmaLinux 9-server met chrony en een Debian 12-server met ntpsec liepen de klokken op beide servers gelijk, maar de regel NTP service toonde op de ene active en op de andere n/a.
De uitvoer hieronder komt van de twee servers. Alleen hostnamen, IP-adressen en versienummers van pakketten zijn vervangen door voorbeeldwaarden, en commando's die de tijd of tijdzone wijzigen zijn niet op de productieserver uitgevoerd.
1️⃣ timedatectl gebruiken en de tijd van de Linux-server controleren
timedatectl zonder opties geeft hetzelfde resultaat als met status. De tijd van de systeemklok en de hardwareklok (RTC), de tijdzone en de synchronisatiestatus staan samen op één scherm. Hieronder het resultaat op de Debian 12-server.
timedatectl Local time: Wed 2026-10-28 19:49:57 UTC
Universal time: Wed 2026-10-28 19:49:57 UTC
RTC time: Wed 2026-10-28 19:49:57
Time zone: Etc/UTC (UTC, +0000)
System clock synchronized: yes
NTP service: n/a
RTC in local TZ: noDe tijdzone van de Debian 12-server is Etc/UTC, daarom toonden Local time en Universal time dezelfde tijd. Wat elke regel aangeeft en de resultaten van de twee servers staan in de tabel hieronder.
| Uitvoerregel | Wat het toont | Resultaten van de twee servers en waar je op let |
|---|---|---|
| Local time | Huidige tijd van de systeemklok met de tijdzone toegepast | Na het wijzigen van de tijdzone tonen alleen deze regel en de uitvoer van date de nieuwe zone |
| Universal time | Dezelfde tijd uitgedrukt in UTC | Blijft gelijk bij een andere tijdzone – op de Debian 12-server (Etc/UTC) gelijk aan Local time |
| RTC time | Tijd van de hardwareklok (RTC) | Getoond zonder tijdzone – UTC-tijd als RTC in local TZ no is |
| Time zone | Ingestelde tijdzone, de afkorting en het verschil met UTC | Gebruik bij wijzigen een naam uit de lijst van list-timezones |
| System clock synchronized | Of de kernel de klok als gesynchroniseerd beschouwt | yes op beide servers – bij no eerst de referentieserver controleren met chronyc tracking of ntpq -p |
| NTP service | Of de synchronisatiedienst draait die timedatectl aan- en uitzet | active op AlmaLinux 9 (chrony), n/a op Debian 12 (ntpsec) – n/a betekent dat timedatectl de dienst niet kent, controleer hem dan met systemctl |
| RTC in local TZ | Of de hardwareklok op lokale tijd staat (no = UTC) | no op beide servers – het commando om yes naar UTC te zetten is set-local-rtc 0 |
Linux heeft twee klokken. De systeemklok wordt na het opstarten door de kernel bijgehouden, en de hardwareklok is de klok op het moederbord die de tijd bewaart, ook als de server uit staat.
De hardwareklok lees je direct met hwclock. hwclock toont de tijd omgerekend naar de huidige tijdzone. Op de AlmaLinux-server gaf lezen met TZ=UTC voor het commando een UTC-tijd die eindigde op +00:00.
TZ=UTC hwclock --show2026-10-28 19:53:33.006788+00:00Op de Debian 12-server, waarop was ingelogd als gewone gebruiker, stopte hetzelfde commando zonder toegang tot de hardwareklok.
/usr/sbin/hwclock --showhwclock: Cannot access the Hardware Clock via any known method.
hwclock: Use the --verbose option to see the details of our search for an access method.De regel RTC in local TZ is dezelfde instelling als de derde regel van het bestand /etc/adjtime. Op de AlmaLinux-server was de derde regel UTC, wat betekent dat de hardwareklok op UTC staat.
cat /etc/adjtime0.0 0 0.0
0
UTCGebruik show in plaats van status om waarden in een script te lezen. Op de Debian 12-server toont het dezelfde gegevens als naam=waarde, één per regel.
timedatectl showTimezone=Etc/UTC
LocalRTC=no
CanNTP=no
NTP=no
NTPSynchronized=yes
TimeUSec=Wed 2026-10-28 19:49:57 UTC
RTCTimeUSec=Wed 2026-10-28 19:49:57 UTCKies eigenschappen met -p en voeg --value toe om alleen de waarden zonder namen over te houden. Met deze vorm haal je alleen de naam van de tijdzone op.
timedatectl show -p Timezone --valueEtc/UTC🔲 Simulator voor het commando timedatectl
In de simulator hieronder kun je zelf de commando's typen om de tijd te bekijken, tijdzones op te sommen, de tijdzone te wijzigen en de synchronisatie met chronyc te controleren.
2️⃣ Status van de tijdsynchronisatie van de Linux-server
De regel System clock synchronized toont of de kernel de klok als gesynchroniseerd beschouwt, en de regel NTP service of de synchronisatiedienst draait die timedatectl kan aan- en uitzetten. Met show verschijnen dezelfde waarden als NTPSynchronized en NTP, en CanNTP geeft aan of er een synchronisatiedienst is die aan- en uitgezet kan worden.
Op de AlmaLinux 9-server met chrony waren alle drie de waarden yes.
timedatectl show -p CanNTP -p NTP -p NTPSynchronizedCanNTP=yes
NTP=yes
NTPSynchronized=yesOp de Debian 12-server, die de tijd gelijkzet met ntpsec, was alleen NTPSynchronized yes, en waren CanNTP en NTP no. Daarom toonde de regel NTP service n/a op het status-scherm van deze server.
timedatectl show -p CanNTP -p NTP -p NTPSynchronizedCanNTP=no
NTP=no
NTPSynchronized=yesDe dienst ntpsec zelf draaide wel.
systemctl is-active ntpsecactivetimedatectl kent alleen de synchronisatiediensten die in de lijstbestanden in de map ntp-units.d staan, en pakketten van de distributie zetten deze bestanden in /usr/lib/systemd/ntp-units.d/ (volgens de officiële handleiding). Op de AlmaLinux 9-server stond een lijstbestand dat door het pakket chrony was geïnstalleerd, met één regel: chronyd.service.
cat /usr/lib/systemd/ntp-units.d/50-chronyd.listchronyd.servicerpm -qf /usr/lib/systemd/ntp-units.d/50-chronyd.listchrony-4.8-10.el9.x86_64Op de Debian 12-server ontbrak deze map. Omdat ntpsec niet in de lijst staat, wist timedatectl wel dat de klok gesynchroniseerd was, maar kon het die dienst niet aan- of uitzetten.
ls /usr/lib/systemd/ntp-units.d/ls: cannot access '/usr/lib/systemd/ntp-units.d/': No such file or directory3️⃣ Tijdsynchronisatie controleren met chronyc
Op een server met chrony controleer je met chronyc op welke tijdserver de klok zich richt. sources toont de tijdservers die chronyd bevraagt en hun status, één per regel.
chronyc sourcesMS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^- 192.0.2.10 2 10 377 943 +272us[ +275us] +/- 55ms
^- ntp1.example.com 2 10 377 80 -28us[ -32us] +/- 3655us
^- 198.51.100.33 3 10 257 384 -151us[ -156us] +/- 97ms
^- 198.51.100.82 3 10 177 532 +157us[ +149us] +/- 45ms
^* 192.0.2.123 3 4 377 2 -21us[ -23us] +/- 312usHet ^ vooraan staat voor een tijdserver, een * als tweede teken voor de referentieserver waar de klok zich nu op richt, en - voor een kandidaat die niet in de berekening meetelt. Poll 4 bij de referentieserver betekent dat die elke 16 seconden (2 tot de macht 4) wordt bevraagd, en Reach 377 dat alle acht laatste antwoorden binnenkwamen.
tracking toont hoeveel de systeemklok afwijkt van de tijd van de referentieserver.
chronyc trackingReference ID : C000027B (192.0.2.123)
Stratum : 4
Ref time (UTC) : Wed Oct 28 19:50:21 2026
System time : 0.000002422 seconds slow of NTP time
Last offset : -0.000002098 seconds
RMS offset : 0.000000981 seconds
Frequency : 6.348 ppm slow
Residual freq : -0.001 ppm
Skew : 0.017 ppm
Root delay : 0.000300815 seconds
Root dispersion : 0.000150780 seconds
Update interval : 16.3 seconds
Leap status : NormalVolgens de regel System time liep de systeemklok 0.000002422 seconde achter op de NTP-tijd, en Leap status was Normal. Een Update interval van 16.3 seconden is de tijd tussen de laatste twee klokcorrecties.
Welke servers worden bevraagd, bepalen de regels pool en server in /etc/chrony.conf. Zonder commentaar en lege regels blijven alleen deze instellingsregels over.
grep -v "^#" /etc/chrony.conf | grep -v "^$"pool 2.almalinux.pool.ntp.org iburst
sourcedir /run/chrony-dhcp
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
keyfile /etc/chrony.keys
ntsdumpdir /var/lib/chrony
leapsectz right/UTC
logdir /var/log/chrony
server 192.0.2.123 prefer iburst minpoll 4 maxpoll 4De regel pool bevraagt de NTP-pool van AlmaLinux, en prefer op de laatste server-regel is een optie waarmee chronyd deze server vóór de andere kiest. makestep 1.0 3 is een instelling die bij de eerste drie correcties na het starten van chronyd een klok die meer dan 1 seconde afwijkt in één stap gelijkzet, en daarna de klok geleidelijk bijstelt door hem iets sneller of langzamer te laten lopen. rtcsync laat de kernel de systeemtijd elke 11 minuten naar de hardwareklok schrijven (volgens de officiële documentatie).
Op de Debian 12-server met ntpsec zijn dezelfde gegevens gecontroleerd met ntpq -p. Het * vooraan is de referentieserver, en alle drie de servers werden elke 1024 seconden bevraagd.
ntpq -p remote refid st t when poll reach delay offset jitter
===============================================================================
+203.0.113.43 198.51.100.28 2 u 835 1024 377 184.6893 -0.1018 1.4879
+203.0.113.44 198.51.100.27 2 u 547 1024 377 183.0827 -2.4227 4.0957
*ntp2.example.co 198.51.100.40 2 u 440 1024 377 177.4670 -0.5814 1.70704️⃣ Tijdzone wijzigen met timedatectl
Namen van tijdzones bekijk je met list-timezones. De meeste hebben de vorm Continent/Stad, één per regel, en beide servers hadden er 598.
timedatectl list-timezones | head -5Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmaratimedatectl list-timezones | wc -l598De lijst is lang, dus filter met grep als je een naam zoekt.
timedatectl list-timezones | grep -i new_yorkAmerica/New_YorkDe tijdzone wijzig je door na set-timezone een naam uit de lijst te zetten. Dit commando vervangt de link /etc/localtime door het nieuwe tijdzonebestand, dus voer het als gewone gebruiker uit met sudo.
sudo timedatectl set-timezone America/New_YorkMet ls -l controleer je of /etc/localtime een link naar een tijdzonebestand is.
ls -l /etc/localtimelrwxrwxrwx 1 root root 27 Sep 24 12:52 /etc/localtime -> /usr/share/zoneinfo/Etc/UTCEen naam die niet in de lijst staat, werd meteen geweigerd, nog voordat de tijdzone veranderde.
timedatectl set-timezone Mars/OlympusFailed to set time zone: Invalid or not installed time zone 'Mars/Olympus'Een andere tijdzone laat de tijd van de systeemklok ongemoeid; alleen Local time en de uitvoer van het commando date verschijnen in de nieuwe zone. Op een server met de hardwareklok op UTC verandert ook de hardwareklok niet (volgens de officiële handleiding).
5️⃣ NTP inschakelen en de tijd handmatig instellen met timedatectl
set-ntp true start de eerste dienst uit de lijst van synchronisatiediensten en laat die ook bij het opstarten starten. false stopt de diensten uit de lijst en zorgt dat ze bij het opstarten niet starten (volgens de officiële handleiding).
sudo timedatectl set-ntp trueOp de Debian 12-server zonder lijstbestand eindigde het commando zelfs bij false, de huidige waarde, met NTP not supported. Een dienst die niet in de lijst staat, zoals ntpsec, start en stop je direct met systemctl.
timedatectl set-ntp falseFailed to set ntp: NTP not supportedOm de tijd handmatig in te stellen, zet je na set-time de datum en tijd. Dit commando zet samen met de systeemklok ook de hardwareklok gelijk.
sudo timedatectl set-time '2026-10-28 20:00:00'Op de Debian 12-server eindigde het invoeren van een waarde in een verkeerd formaat met een fout, zonder de tijd te wijzigen.
timedatectl set-time badFailed to parse time specification 'bad': Invalid argumentOm op een server met chrony een klok die ver afwijkt in één keer gelijk te zetten, gebruik je chronyc makestep.
sudo chronyc makestepmakestep laat het resterende verschil dat geleidelijk werd bijgesteld vallen en laat de systeemklok meteen met dat verschil verspringen. De officiële documentatie waarschuwt dat een plotselinge tijdsprong sommige software kan raken, dus gebruik het alleen als de klok te ver afwijkt om langzaam bij te stellen.
🔢 FAQ & aanbevolen content
Instellingen · locale
[Linux] localectl-commando
Het commando localectl toont en wijzigt de systeemtaal (locale) en de toetsenbordindeling.
Systeeminfo
Linux uptime-commando (uptime van de server & gemiddelde belasting over 1, 5 en 15 minuten)
Het commando uptime toont hoe lang de server al draait en de gemiddelde belasting over 1, 5 en 15 minuten.
Diensten beheren
Apache starten, stoppen en herstarten: commando's en het verschil met graceful
Commando's om Apache te starten, te stoppen en te herstarten en de status van de dienst te controleren op Red Hat-systemen en Ubuntu.
ℹ️ Affiliatemelding
De content van deze site bevat affiliatelinks. Koopt een bezoeker via een van deze links een product of dienst, dan ontvangt deze site een commissie van de verkoper. Het bedrag dat de koper betaalt (bij acties gaat het omlaag ↓) wordt daardoor niet hoger. De vermelde prijzen, kortingen en voorraad gelden op het moment van schrijven en kunnen afwijken; controleer ze daarom vóór je aankoop bij de verkoper. Producten worden gekozen en beoordeeld volgens onze eigen criteria, en commissies hebben geen invloed op de volgorde of de inhoud van de beoordelingen.