systemd-timesyncd (Türkçe)

İlgili makaleler
systemd-networkd
systemd
System time
Çeviri Durumu:
Bu makale,
Systemd-timesyncd
makalesinin çevirisidir. Son çeviri tarihi (yıl-ay-gün şeklinde): 2026-01-03. Eğer makalenin İngilizce sürümünde
değişiklik
yapılmış ise çevirinin senkronize edilmesine yardımcı olabilirsiniz. Çevrilmiş tüm makelelere
buradan erişebilirsiniz
.
systemd e-posta listesinden
:
systemd-timesyncd
, sistem saatini sistem ağında senkronize hale getirebilmek için eklenmiş bir hayalet programdır. Program bir SNTP istemcisi sağlar.
chrony
gibi NTP istemcilerine veya NTP referans sunucusuna kıyasla bu yöntem sadece kullanıcı tarafında hizmet sunar ve NTP'nin zorluklarıyla uğraşmaz, sadece bir sunucudan güncel saatin bilgisini edinip yerel saati o saate denk getirmeye çalışır. Eğer herhangi bir ağdaki istemcilere NTP sunmayacaksanız veya yerel donanım saatlerine bağlanmak istemiyorsanız bu basit NTP istemcisi çoğu kurulum için fazlasıyla yeterli olacaktır. Servis minimal düzeyde yetki ile çalışmaktadır, sadece ağ bağlantısı sağlandığında beraber çalışabilmesi için networkd'ye bağlanmıştır. Servis, her yeni NTP senkronizasyonu edinildiğinde mevcut saati diske kaydeder ve bunu, Raspberry Pi ve gömülü cihazlar gibi RTC'si olmayan sistemlere uyacak şekilde sistem saatini açılış sırasında düzeltmek ve her zaman doğru olmasa da zamanın tekdüze ilerlediğinden emin olmak için kullanır. Bu servisten yararlanabilmek için systemd kurulumu sırasında "systemd-timesync" adıyla yeni bir kullanıcı ve grup oluşturulmalıdır.
Yapılandırma
systemd-timesyncd
başlatılırken
/etc/systemd/timesyncd.conf
dizinindeki yapılandırma dosyasını okuyacaktır. Bu dosya şöyle gözükmektedir:
/etc/systemd/timesyncd.conf
[Time]
#NTP=
#FallbackNTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
#...
Yeni
zaman sunucuları
eklemek veya elde bulunanları değiştirmek için ilgili yerleri yorum satırından çıkarın, ardından sunucu adreslerini veya IP adreslerini boşluklar bırakarak ekleyin. Ayrıca bir yapılandırma parçası da (configuration snippet)
/etc/systemd/timesyncd.conf.d/*.conf
kullanabilirsiniz, daha fazla bilgi için
timesyncd.conf(5)
sayfasına bakın.
Örneğin,
NTP havuzu
tarafından sağlanan herhangi bir sunucuyu kullanabilir veya
varsayılan Arch havuzunu
(yine NTP havuz projesi tarafından sağlanmıştır) kullanabilirsiniz:
/etc/systemd/timesyncd.conf veya /etc/systemd/timesyncd.conf.d/local.conf
[Time]
NTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
FallbackNTP=0.pool.ntp.org 1.pool.ntp.org 0.fr.pool.ntp.org
Yapılandırmanızı doğrulamak için
$ timedatectl show-timesync --all
LinkNTPServers=
SystemNTPServers=
RuntimeNTPServers=
FallbackNTPServers=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
ServerName=2.arch.pool.ntp.org
ServerAddress=45.136.155.37
RootDistanceMaxUSec=5s
PollIntervalMinUSec=32s
PollIntervalMaxUSec=34min 8s
PollIntervalUSec=34min 8s
NTPMessage={ Leap=0, Version=4, Mode=4, Stratum=3, Precision=-24, RootDelay=217.346ms, RootDispersion=52.047ms, Reference=27912C56, OriginateTimestamp=Fri 2024-01-19 16:39:56 +03, ReceiveTimestamp=Fri 2024-01-19 16:39:56 +03, TransmitTimestamp=Fri 2024-01-19 16:39:56 +03, DestinationTimestamp=Fri 2024-01-19 16:39:56 +03, Ignored=no, PacketCount=12, Jitter=535.760ms }
Frequency=-210741
Servis yapılandırmasına ek olarak, NTP sunucuları
NTP=
ile
systemd-networkd
.network
dosyası üzerinden veya dinamik bir şekilde bir DHCP sunucusu aracılığıyla da sağlanabilir (
[DHCPv4]
veya
[DHCPv6]
bölümünde
UseNTP
seçeneği aktif hale getirilirse).
Kullanılacak NTP sunucusu aşağıdaki kurallar kullanılarak belirlenir:
systemd-networkd.service(8)
yapılandırmasından veya DHCP aracılığıyla elde edilen arayüz başı NTP sunucularına öncelik verilir.
/etc/systemd/timesyncd.conf
içinde tanımlanan NTP sunucuları çalıştırılırken arayüz başına listeye eklenecek ve servis yanıt veren bir tane bulana kadar sırayla sunucularla iletişime geçecektir.
Bu adımlar tamamlandıktan sonra herhangi bir NTP sunucu bilgisi edinilmezse,
FallbackNTP=
içinde tanımlanmış NTP sunucusu ana makine adları veya IP adresleri kullanılır.
Not
Hizmet her senkronizasyonda
/var/lib/systemd/timesync/clock
dosyasını günceller. Bu dosya konumu sabittir ve değiştirilemez.
Bu yazma işlemi salt okunur kök bölümü çalıştırırken veya SD kartta yazmaları en aza indirmeye çalışırken soruna sebep olabilir.
Yazma işlemi yapılandırma dosyasına eklenecek
PollIntervalMinSec=1d
ve
SaveIntervalSec=infinity
ayarları ile azaltılabilir.
Kullanım
Etkinleştirme ve başlatma
Servisi etkinleştirip çalıştırmak için aşağıdaki komutu girin:
# timedatectl set-ntp true
Alternatif olarak (örneğin chroot içerisindeyken)
systemd-timesyncd.service
servisini
başlatın/etkinleştirin
.
Servis kontrolü
Senkronizasyon süreci belirgin ölçüde yavaş olabilir. Bu herhangi bir sorun olduğu anlamına gelmez, bir sorun olduğundan emin olmadan önce belli bir süre beklemek gerekir. Hizmetin ne durumda olduğunu kontrol etmek için aşağıdaki komutu kullanın:
$ timedatectl status
Local time: Fri 2024-01-19 17:36:59 +03
           Universal time: Fri 2024-01-19 14:36:59 UTC
                 RTC time: Fri 2024-01-19 14:36:59
                Time zone: Europe/Istanbul (+03, +0300)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no
Ayrıntılı bilgi edinme
Servise dair ayrıntılı bilgi edinmek için aşağıdaki komutu kullanın:
$ timedatectl timesync-status
Server: 45.136.155.37 (2.arch.pool.ntp.org)
Poll interval: 34min 8s (min: 32s; max 34min 8s)
         Leap: normal
      Version: 4
      Stratum: 3
    Reference: 27912C56
    Precision: 1us (-24)
Root distance: 165.137ms (max: 5s)
       Offset: -4.870ms
        Delay: 17.750ms
       Jitter: 535.761ms
 Packet count: 13
    Frequency: -4.405ppm
Varsayılan olmayan yapılandırma ayarlarını görüntüleme
Varsayılan olmayan yapılandırma ayarlarını ve bu ayarların hangi dosyalar ile ayarlandığını görmek için aşağıdaki komutu kullanın:
$ systemd-analyze cat-config systemd/timesyncd.conf --tldr
# /etc/systemd/timesyncd.conf
[Time]
# /etc/systemd/timesyncd.conf.d/local.conf
[Time]
NTP=0.nl.pool.ntp.org 1.nl.pool.ntp.org 2.nl.pool.ntp.org 3.nl.pool.ntp.org
RootDistanceMaxSec=0.1
PollIntervalMinSec=1d
PollIntervalMaxSec=4w
SaveIntervalSec=infinity
Günlüğü görüntüleme
Servise dair, son 24 saat içinde günlüğe kaydedilmiş olayları listelemek için aşağıdaki komutu kullanın:
# journalctl -u systemd-timesyncd --no-hostname --since "1 day ago"
Jan 19 15:14:20 systemd[1]: Stopping Network Time Synchronization...
Jan 19 15:14:20 systemd[1]: systemd-timesyncd.service: Deactivated successfully.
Jan 19 15:14:20 systemd[1]: Stopped Network Time Synchronization.
Jan 19 15:14:20 systemd[1]: Starting Network Time Synchronization...
Jan 19 15:14:20 systemd[1]: Started Network Time Synchronization.
Jan 19 15:14:20 systemd-timesyncd[1023]: Contacted time server 178.215.228.24:123 (0.nl.pool.ntp.org).
Jan 19 15:14:20 systemd-timesyncd[1023]: Initial clock synchronization to Fri 2024-01-19 15:14:20.393865 CET.
Ayrıca bakınız
Forum: systemd-timesyncd is not syncing time
Forum: Using systemd-timesync instead of NTP
timesyncd kaynak kodu
systemd-timesyncd(8)
timesyncd.conf(5)