ArchlinuxArm no Raspberry: Não é possível sincronizar data e hora na inicialização

ArchlinuxArm no Raspberry: Não é possível sincronizar data e hora na inicialização

Eu tenho um Raspberry Pi que uso para um sistema de irrigação. O problema é que ele não possui relógio de hardware, portanto, toda vez que ele reinicia, a hora do sistema está errada e não consigo configurá-lo para sincronizá-lo automaticamente.

Descobri que quando a hora do sistema está errada, as solicitações de DNS não funcionam, então toda vez que tento enviar uma solicitação, recebo:

[root@alarmpi me]# ntpdate 3.es.pool.ntp.org
Error resolving 3.es.pool.ntp.org: Name or service not known (-2)
12 Aug 15:37:15 ntpdate[2385]: Can't find host 3.es.pool.ntp.org: Name or service not known (-2)
12 Aug 15:37:15 ntpdate[2385]: no servers can be used, exiting

A propósito, recebo os mesmos erros de conexão se tento usar pacman, wget, python/requests, até mesmo ping... Então é uma coisa de DNS com certeza.

[me@alarmpi ~]$ ping google.com
ping: google.com: Name or service not known

Se eu acertar a hora e a data manualmente, funciona de novo, mas moro a 300 km de onde fica essa coisa e não consigo fazer manualmente todos os dias que há queda de energia.

[root@alarmpi me]# timedatectl
               Local time: Mon 2019-08-12 15:47:40 CEST
           Universal time: Mon 2019-08-12 13:47:40 UTC
                 RTC time: n/a
                Time zone: Europe/Madrid (CEST, +0200)
System clock synchronized: no
              NTP service: active
          RTC in local TZ: no
[root@alarmpi me]# timedatectl set-ntp false
[root@alarmpi me]# timedatectl set-time "2019-08.13 10:45:45 CEST"
[root@alarmpi me]# ping google.com
PING google.com (172.217.168.174) 56(84) bytes of data.
64 bytes from 172.217.168.174 (172.217.168.174): icmp_seq=1 ttl=54 time=22.7 ms
64 bytes from 172.217.168.174 (172.217.168.174): icmp_seq=2 ttl=54 time=31.6 ms
^C
--- google.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 292ms
rtt min/avg/max/mdev = 22.739/27.161/31.583/4.422 ms

[root@alarmpi me]# ntpdate 3.es.pool.ntp.org
13 Aug 10:49:54 ntpdate[2498]: adjust time server 37.139.121.60 offset 0.004894 sec

Então estou um pouco perdido aqui. Como posso sincronizar o relógio automaticamente se ele não me permite conectar ao serviço porque estou fora de sincronia?

Responder1

Alguns servidores NTP escutam diretamente os endereços IP e se anunciam como tal. Por exemplo,NISTfornece IPs para cada um de seus servidores NTP, para que você possa escolher um e fazer isso ntpdate <IP>no init. Isso não precisará de resolução de DNS e deverá funcionar imediatamente.

Alternativamente, você também pode tentar usar o fake-hwclockpacote, que preserva o tempo aproximado entre as reinicializações. Não é perfeito e não fornece a hora exata, mas pode ser suficiente para resolver os nomes de domínio para NTP.

informação relacionada