É uma boa prática manter a hora certa na Raspberry Pi. Na verdade, a hora incorretamente configurada causará alguns problemas – inconsistência de dados, falha de sincronização de dados e de agendamento de tarefas. Para evitar esses problemas, primeiro é preciso definir um fuso horário (time zone) de acordo com sua região, dando a Raspberry Pi uma hora local relativamente precisa. Em segundo lugar, usar o NTP (Network Time Protocol) para sincronizar a hora com servidores NTP, mantendo a hora da Raspberry Pi em perfeita ordem. A proposta desse post, é mostrar como definir o fuso horário e sincronizar a hora usando o NTP.
Material necessário
Para realizar este projeto, vamos precisar de :
Nos cartões SD é necessário estar gravado o sistema operacional Raspbian. Qualquer dúvida de como isso deve ser feito, você pode consultar este post.
Definindo o fuso horário
Para começar precisamos de algum tipo de acesso ao terminal, seja remoto via ssh ou local via teclado. Tudo certo? Então vamos lá!
No sistema operacional Raspbian Desktop, a definição do fuso horário é feita na primeira inicialização do sistema.
No sistema operacional Raspbian Lite ou caso queira modificar o fuso horário.
dpkg-reconfigure tzdata
Selecione a área geográfica.
E a cidade ou região correspondente ao seu fuso horário.
Para verificar.
timedatectl
Nesse exemplo, a hora local (Local time) para o fuso horário (Time zone) America/Sao_Paulo é 22:17:31.
A hora universal (Universal time) e seu fuso horário (UTC) – nesse exemplo, 01:17:31 UTC – são a referência a partir do qual se calculam todas as outras zonas horárias.
Sincronizando a hora com NTP na Raspberry Pi
Primeiro vamos instalar os pacotes.
apt-get update && apt-get install ntp -y
É uma boa prática fazer uma cópia do arquivo de configuração antes de editá-lo.
cp -p /etc/ntp.conf /etc/ntp.conf.default
Agora iremos limpar o conteúdo do arquivo.
echo "" > /etc/ntp.conf
Editá-lo.
vim /etc/ntp.conf
Incluir o conteúdo abaixo, fique atento aos comentários!
driftfile /var/lib/ntp/ntp.drift # Habilite para que as estatísticas sejam registradas. statsdir /var/log/ntpstats/ statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable # Adicione a lista de servidores NTP públicos. # A diretiva iburst no final de cada linha é para acelerar a sincronização inicial. server a.st1.ntp.br iburst server b.st1.ntp.br iburst server c.st1.ntp.br iburst server d.st1.ntp.br iburst server gps.ntp.br iburst server a.ntp.br iburst server b.ntp.br iburst server c.ntp.br iburst server 0.pool.ntp.org iburst server 1.pool.ntp.org iburst server 2.pool.ntp.org iburst server 3.pool.ntp.org iburst # Define as permissões adequadas, concedendo acesso irrestrito apenas ao localhost. restrict -4 default kod notrap nomodify nopeer noquery limited restrict -6 default kod notrap nomodify nopeer noquery limited restrict 127.0.0.1 restrict ::1
E reiniciar os serviços.
systemctl restart ntp
O ntp utiliza a ferramenta ntpq para monitorar seu funcionamento. A seguir são apresentados dois comandos que permitem visualizar algumas informações importantes.
ntpq -p
O * em gps.jd.ntp.br significa que ele foi escolhido como a principal referência para sincronizar a hora. O + em a.ntp.br e d.st1.ntp.br significa que eles também estão sendo usados, mas com menor peso.
ntpq -c rl
A variável offset indica em milissegundo, quanto o relógio local tem de ser adiantado ou atrasado para chegar à hora certa.
É isso, a partir de agora sua Raspberry Pi estará sempre com a hora certa.
Gostou? Ajude-nos a melhorar o blog comentando abaixo sobre este tutorial.
Até a próxima!
Olá,fiz todos os procedimentos, porém quando vou rodar o comando “ntpq -p” ele me retorna todos os parâmetros zerados, como se não estivesse funcionando. O modelo do meu Raspberry é o 3 B+, e está com o Raspbian mais atualizado (Bullseye)
Olá Paulo,
Existe a possiblidade de ser algum tipo de bloqueio na sua rede.
Se você conseguir tentar o mesmo comando com o Raspberry em outra rede, ou até mesmo através da internet móvel roteada pelo celular para realizar um teste.
Abraços!
Vinícius – Equipe MakerHero
Perfeito… Funcionou o DPKG.
Obrigado isso foi de muita ajuda, abraço
Thiago,
Que bom que pudemos te ajudar!
Abraços, e cuide-se com o COVID-19!
Diogo – Equipe MakerHero