Jump to content
From ArchWiki

Status de tradução: Esse artigo é uma tradução de systemd-timesyncd. Data da última tradução: 2022-11-15. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.

Artigos relacionados

- systemd-networkd
- systemd
- System time

Da lista de discussão do systemd (traduzido):

  systemd-timesyncd é um daemon que foi adicionado para sincronizar o relógio do sistema na rede. Ele implementa um cliente SNTP. Em contraste com implementações NTP como chrony ou o servidor de referência NTP, ele implementa apenas um lado do cliente e não se preocupa com a complexidade total do NTP, concentrando-se apenas em consultar o tempo de um servidor remoto e sincronizar o relógio local com ele. A menos que você pretenda servir NTP para clientes em rede ou queira se conectar a relógios de hardware locais, este cliente NTP simples deve ser mais do que apropriado para a maioria das instalações. O daemon é executado com privilégios mínimos e foi conectado ao networkd para operar apenas quando a conectividade de rede estiver disponível. O daemon salva o relógio atual no disco toda vez que uma nova sincronização NTP é adquirida e usa isso para possivelmente corrigir o relógio do sistema no início da inicialização, a fim de acomodar sistemas que não possuem RTC, como o Raspberry Pi e dispositivos incorporados, e certifique-se de que o tempo progride monotonicamente nesses sistemas, mesmo que nem sempre esteja correto. Para fazer uso deste daemon, um novo usuário do sistema e grupo "systemd-timesync" precisa ser criado na instalação do systemd.

## Configuração

Inicie/habilite `systemd-timesyncd.service`, o qual está disponível com systemd.

Ao iniciar, systemd-timesyncd lerá o arquivo de configuração de `/etc/systemd/timesyncd.conf`, que se parece com isso:

    /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
    #...

Para adicionar servidores de tempo ou alterar os fornecidos, descomente a linha relevante e liste seu nome de host ou IP separado por um espaço. Por exemplo, você pode usar qualquer servidor fornecido por the NTP pool project ou usar os servidores padrão do Arch (também fornecido pelo projeto NTP pool):

    /etc/systemd/timesyncd.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

Para verificar sua configuração:

    $ timedatectl show-timesync --all

    LinkNTPServers=
    SystemNTPServers=
    FallbackNTPServers=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
    ServerName=0.arch.pool.ntp.org
    ServerAddress=103.47.76.177
    RootDistanceMaxUSec=5s
    PollIntervalMinUSec=32s
    PollIntervalMaxUSec=34min 8s
    PollIntervalUSec=1min 4s
    NTPMessage={ Leap=0, Version=4, Mode=4, Stratum=2, Precision=-21, RootDelay=177.398ms, RootDispersion=142.196ms, Reference=C342F10A, OriginateTimestamp=Mon 2018-07-16 13:53:43 +08, ReceiveTimestamp=Mon 2018-07-16 13:53:43 +08, TransmitTimestamp=Mon 2018-07-16 13:53:43 +08, DestinationTimestamp=Mon 2018-07-16 13:53:43 +08, Ignored=no PacketCount=1, Jitter=0 }
    Frequency=22520548

Além da configuração do daemon, os servidores NTP também podem ser fornecidos através de uma configuração do systemd-networkd com uma opção `NTP=` ou, dinamicamente, via um servidor DHCP.

O servidor NTP a ser usado será determinado usando as seguintes regras:

- Quaisquer servidores NTP por interface obtidos da configuração do systemd-networkd.service(8) ou via DHCP têm precedência.
- Os servidores NTP definidos em `/etc/systemd/timesyncd.conf` serão anexados à lista por interface em tempo de execução e o daemon entrará em contato com os servidores até que seja encontrado um que responda.
- Se nenhuma informação do servidor NTP for adquirida após a conclusão dessas etapas, os nomes de host do servidor NTP ou endereços IP definidos em `FallbackNTP=` serão usados.

Nota: O serviço grava em um arquivo local `/var/lib/systemd/timesync/clock` a cada sincronização. Este local é codificado e não pode ser alterado. Isso pode ser problemático para executar a partição raiz somente leitura ou tentar minimizar as gravações em um cartão SD.

## Uso

Para habilitá-lo e iniciá-lo, basta executar:

    # timedatectl set-ntp true

O processo de sincronização pode ser notavelmente lento. Isso é esperado, deve-se esperar um pouco antes de determinar que há um problema. Para verificar o status do serviço, use:

    $ timedatectl status

                   Local time: ter 2022-11-15 10:43:14 -03
               Universal time: ter 2022-11-15 13:43:14 UTC
                     RTC time: ter 2022-11-15 13:43:14
                    Time zone: America/Sao_Paulo (-03, -0300)
    System clock synchronized: yes
                  NTP service: active
              RTC in local TZ: no

Para ver informações detalhadas do serviço, use:

    $ timedatectl timesync-status

           Server: 200.192.232.8 (0.arch.pool.ntp.org)
    Poll interval: 1min 4s (min: 32s; max 34min 8s)
             Leap: normal
          Version: 4
          Stratum: 2
        Reference: C8A007BA
        Precision: 1us (-23)
    Root distance: 11.115ms (max: 5s)
           Offset: +3.182ms
            Delay: 59.700ms
           Jitter: 1.202ms
     Packet count: 2
        Frequency: +0,000ppm

## Veja também

- Forum: systemd-timesyncd is not syncing time (em português, systemd-timesyncd não está sincronizando o tempo)
- Forum: Using systemd-timesync instead of NTP (em português, Usando systemd-timesync em vez do NTP)
- Código-fonte do timesyncd
- systemd-timesyncd(8)
- timesyncd.conf(5)

Category:

- Network Time Protocol (Português)