Como manter o relógio interno do Debian sincronizado (com servidores NTP)?

Como manter o relógio interno do Debian sincronizado (com servidores NTP)?

Eu tenho um servidor doméstico que executa uma instalação atualizada do Debian 7.5 (wheezy). Acabei de descobrir que o servidor está com o relógio interno ajustado para ± 3 minutosno futuro.

Eu sabia que poderia usar o NTP para sincronizar o Debian (e o relógio interno da placa-mãe) com o NTP, então instalei o NTP seguindo os passos descritos no manual francêsWiki do Debian(oPágina em inglêsé menos detalhado).

Usei o seguinte comando para sincronizar o relógio interno:

ntpdate -B -q 192.168.0.254

O relógio foi ajustado com sucesso. Mas esta é uma solução temporária, então instalei o daemon NTP e adicionei um servidor local ao /etc/ntp.confarquivo:

# pool.ntp.org maps to about 1000 low-stratum NTP servers.  Your server will
# pick a different set every time it starts up.  Please consider joining the
# pool: <http://www.pool.ntp.org/join.html>

# added
server 192.168.0.254

server 0.debian.pool.ntp.org iburst
server 1.debian.pool.ntp.org iburst
server 2.debian.pool.ntp.org iburst
server 3.debian.pool.ntp.org iburst

É a solução certa? Na verdade, fiquei surpreso ao descobrir que o ntpdaemon ainda não estava instalado. Gostaria de saber se a instalação padrão do Debian instala um daemon para manter o relógio interno sincronizado. Todas as instalações do Debian mudam de horário até que seus administradores instalem ntpd?

Por favor, diga-me que o ntpdaemon não será inútil porque o Debian possui um mecanismo de sincronização integrado.

Responder1

O Debian espera que você mesmo instale o ntp se quiser que seu relógio seja sincronizado. Praticamente tudo que você deveria fazer é apt-get install ntp. A instalação padrão, sem nenhuma tarefa, é mínima.

Acredito que a tarefa da área de trabalho GNOME, pelo menos, irá instalá-lo por padrão (assim como muitos outros pacotes). Não tenho certeza se os outros desktops também.

Não há nenhum outro método de sincronização de horário instalado e em execução por padrão.

Responder2

Para Debian GNU/Linux 10 (Buster) e próximas versões principais:

O systemd-timesyncd(também conhecido como:, timesyncdtambém conhecido como SystemD-TimeSyncD) é uma alternativa mais leve e simples de ntpd.

Veja as informações de status de execução do daemon TimeSyncD NTP no Debian:
cmd: systemctl status systemd-timesyncd
você pode notar/ver, a Statuslinha nas informações está exibindo "Parado".
Se a Activelinha de informações NÃO estiver exibindo "ativo(correndo)", então inicie-o:
cmd:systemctl start systemd-timesyncd

Se você ainda NÃO ativou "SYSTEMD-TIMESYNCD", ative e inicie-o:
cmd: systemctl enable systemd-timesyncd.service
cmd:systemctl start systemd-timesyncd.service

Se o SystemD-TimeSyncD não estiver habilitado, talvez seja necessário remover o NTPD, se ele tiver sido instalado anteriormente:
cmd:apt purge ntp

Este novo systemd-timesyncddaemon também pode executar funcionalidades de cliente SNTP.

PROBLEMA:
Ao visualizar a hora local no computador Debian, e a hora local não está correta:
cmd: date
Ver status deRelógio do sistema sincronizado(SCS), execute:
ou, cmd: timedatectl
ou, cmd: timedatectl status
Você pode notar/ver a saída abaixo acimatimedatectlcomando: SCS não está funcionando ou a hora não está sincronizada, ou seja: O computador Debian NÃO está obtendo, atualizando e exibindo informações de hora corretas:

Relógio do sistema sincronizado:não
     Serviço NTP:ativo

ENCONTRE SERVIDORES NTP PERTO DA LOCALIZAÇÃO DO SEU COMPUTADOR:

Os serviços de fornecimento de informações de tempo estão sendo executados em SERVIDORES NTP.

Se o seu computador Debian estiver localizado nos EUA, ou se você quiser usar o servidor NTP nos EUA, vá para este site:
    https://tf.nist.gov/tf-cgi/servers.cgi
Escolha/selecione pelo menos dois servidores NTP que estejam geograficamente mais próximos da localização geográfica física do seu computador Debian.
Selecione o tipo IPv4 de endereço/endereços IP. Se o seu computador Debian usa apenas IPv6 ou também usa IPv6, escolha/selecione o tipo de endereço/endereços IP IPv6.

ATUALIZAÇÃO "TIMESYNCD.CONF":

cmd:nano /etc/systemd/timesyncd.conf

Em seguida, adicione abaixo de 3 linhas, se não existir emtimesyncd.conf:

[Tempo]
NTP=132.163.96.1
FallbackNTP=132.163.96.2,132.163.96.3,132.163.96.4,132.163.96.6

Especifique apenas um servidor na linha "NTP=".
Especifique vários servidores na linha "FallbackNTP=".
Acima estou exibindo servidores NTP de "Colorado, EUA", já que a localização do meu computador Debian é na Califórnia, EUA, que fica perto do Colorado, EUA.

Se o cliente DNS do seu computador/dispositivo (ou servidor/daemon DNS) iniciardepoiso cliente NTP TimeSyncD (ou servidor/daemon NTP), então nas linhas "NTP=" ou "FallbackNTP=" você deve usar o endereço IP do servidor NTP.
Mas, se o cliente DNS do seu computador/dispositivo (ou servidor/daemon DNS) iniciaranteso cliente NTP TimeSyncD (ou servidor/daemon NTP), então nas linhas "NTP=" ou "FallbackNTP=", você pode usar o nome do host do servidor NTP (também conhecido como: nome do servidor), por exemplo: time-a-b.nist.govem vez de seu endereço IP 132.163.96.1.
E observe também, mesmo que o cliente DNS do seu computador/dispositivo (ou servidor/daemon DNS) iniciedepoiso cliente NTP TimeSyncD (ou servidor/daemon NTP), você ainda pode usar o nome do host do servidor NTP nas linhas "NTP=" ou "FallbackNTP=", porque o cliente NTP TimeSyncD e o servidor/daemon NTP local tentarão novamente obter/ tempo de sincronização, para que tenha sucesso na segunda ou na próxima vez.
Se o seu computador/dispositivo Debian não tiver nenhum cliente DNS (ou servidor/daemon DNS), então você deverá usar o endereço IP do servidor NTP.

Você deve alterar os servidores NTP exibidos acima, com base na localização real do SEU computador Debian.

Por exemplo: se o seu computador Debian estiver localizado na Europa,
vá para aqui:
    https://www.pool.ntp.org/zone/europe
O site acima também lista outros servidores NTP para outros locais.

Como muitos servidores, desktops/laptops comuns, etc. computadores clientes, dispositivos de rede, smartphones, etc, etc em todo o mundo estão usando servidores NTP,
os servidores NTP costumam estar sobrecarregados,
portanto os servidores NTP podem atrasar ou levar algum tempo para concluir a resposta ao seu computador/ consulta do dispositivo.

Por favor, doe/contribua para o operador do servidor NTP, para que eles possam pagar um servidor mais rápido/melhor.

ATIVE NOVAS CONFIGURAÇÕES:

Após criar ou atualizar o timesyncd.confarquivo, execute os comandos abaixo:
cmd: timedatectl show-timesync --all(verifique a nova configuração NTP)
cmd: systemctl restart systemd-timesyncd (reinicie o daemon NTP TimeSyncD local)
cmd: timedatectl set-ntp true(habilite e inicie o uso do NTP)

Agora você pode visualizar o status do Relógio do Sistema Sincronizado, execute abaixo qualquer um dos comandos:
cmd: timedatectlou timedatectl status
você deverá ver as linhas abaixo:

Relógio do sistema sincronizado:sim
     Serviço NTP:ativo

cmd: timedatectl timesync-status(ver informações de conexão do serviço TimeSyncD NTP)

Se você executar o comando systemctl status systemd-timesyncd, ele deverá exibir "... Sincronizado com o servidor de horário pela primeira vez ...".

Execute dateo comando, ele deve mostrar a hora correta, desta vez:
cmd: date
A hora exibida deve corresponder à hora correta e será baseada no fuso horário pré-selecionado.

(em algum momento o servidor de horário pode atrasar o envio da resposta correta, portanto, tenha paciência).

FEITO.


OUTRAS CONFIGURAÇÕES/INFORMAÇÕES:

cmd: timedatectl list-timezones(ver fusos horários)
cmd: timedatectl set-timezone America/Los_Angeles(faça isso quando quiser definir o fuso horário como PST, que é UTC-08:00)
cmd: timedatectl set-timezone UTC(faça isso quando quiser definir o fuso horário como UTC. Este UTChorário é sempre o mesmo em todos localização o tempo todo, todos os outros fusos horários são calculados, a partir deste UTChorário, adicionando ou subtraindo números específicos).

Como posso visualizar ou obter endereços IP reais usados ​​por um servidor NTP (também conhecido como nome do host) ou um servidor de pool NTP?
cmd:nslookup 1.europe.pool.ntp.org

Se você habilitou o firewall (também conhecido como: nftables, iptables, etc), então você deve especificar (múltiplos) endereços IP de servidores NTP, nas regras UDP relacionadas ao NTP, para reduzir o abuso via NTP.

Responder3

Aparentemente, com o SystemD, timedatectlexistem diferentes infraestruturas envolvidas (embora o método antigo ainda funcione).

Veja o que os caras do Arch escrevem sobre isso:https://wiki.archlinux.org/index.php?title=Systemd-timesyncd&oldid=797636#:~:text=systemd-timesyncd%20is,clock%20to%20it

informação relacionada