systemd-timesyncd (Türkçe) - ArchWiki

Jump to content

# systemd-timesyncd (Türkçe)

10 languages

- Deutsch
- English
- Español
- Français
- Magyar
- 日本語
- Polski
- Português
- Русский
- 中文（简体）

From ArchWiki

İlgili makaleler

- systemd-networkd
- systemd
- System time

Çeviri Durumu: Bu makale, Systemd-timesyncd makalesinin çevirisidir. Son çeviri tarihi (yıl-ay-gün şeklinde): 2024-08-26. 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 yapılandırma dosyası üzerinden veya dinamik bir şekilde bir DHCP sunucusu aracılığıyla da sağlanabilir (.network dosyasının içerisinde `[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)

Category:

- Network Time Protocol (Türkçe)