Manual

do

Maker

.

com

Configurar um servidor NTP no Raspberry Pi

Configurar um servidor NTP no Raspberry Pi

Esse post não é um dos mais divertidos, mas pode ser necessário na maioria das implementações que dependem de logs ou ainda, que ao menos rode um servidor DNS. Isso porque o DNS nem inicia se o horário do sistema estiver errado. Mas não se preocupe, a configuração não leva mais que 1 minuto.

Esse artigo serve para qualquer Linux, não apenas para as distribuições que rodam no Raspberry.

servidor NTP no Raspberry

NTP é o acrônimo de "Network Time Protocol". Ele possui um algorítmo que considera o delay e o jitter na comunicação e através da consulta com diversos servidores, faz o ajuste de tempo no sistema. Em casa tenho um Raspberry rodando 24x7 com um servidor DNS configurado localmente, de modo que minha navegação fica mais rápida, uma vez que a resolução de nomes contidos no cache do meu servidor DNS é imediata, assim não dependo de consultas externas para acessar um site. Isso somado à velocidade da minha conexão me permite carregar páginas quase que instantaneamente. Adicionalmente, consigo resolver nomes para minha rede local. Por exemplo, tenho um computador que responde ao pingar "djames". O servidor DNS (o Raspberry) responde ao nome ns1 e assim por diante. Minha TV, meu smartphone, meu notebook e todos os dispositivos conectados da casa são reconhecidos graças ao servidor DNS. Quer configurar um servidor DNS também? Siga esse tutorial.

Instalando o servidor NTP

É fácil demais. Simplesmente abra um terminal e digite:

sudo apt-get install ntp ntpdate

Após isso, edite o arquivo /etc/ntp.conf. Adicione essa linha ao final do arquivo:

server 192.168.1.10 prefer

Esse IP deve ser o mesmo do seu Raspberry Pi. Seu Raspberry Pi deve ter IP fixo. Para isso, a maneira mais simples é configurar seu servidor DHCP para atribuir sempre o mesmo IP ao Raspberry. Basta configurá-lo em seu roteador, pegando o endereço MAC através do comando ifconfig.

Enfim, após salvar o arquivo você deverá reiniciar o serviço:

sudo service ntp restart

Apenas ajustar a hora do Raspberry

A primeira coisa que você precisa fazer é garantir que seu timezone está configurado corretamente.

Configurar timezone

Para configurar seu timezone, execute o comando:

sudo dpkg-reconfigure tzdata

Selecione Americano menu que se abre e procure o timezone da sua região. Quando terminar essa configuração, podemos ir para o próximo passo.

Ajustar a data/hora

Se você instalar apenas o ntpdate, já pode fazer consultas e ajustes externamente à sua rede. Basta executar o comando:

/usr/sbin/ntpdate -q ntp.ubuntu.com

Mas com seu servidor devidamente configurado, você pode consultar o próprio Raspberry. Tendo já configurado seu servidor NTP e feito o primeiro ajuste de hora conforme a linha de comando anterior, seu DNS já pode ser iniciado:

sudo service bind9 start

E então a consulta a ele próprio:

sudo ntpdate -q ns1

Lembrando que ns1é o nome que eu dei para o meu servidor DNS, que não precisa ser o hostname (e talvez nem deva).

Crontab

O cron é um serviço do sistema que executa uma tarefa em um horário especificado. Para interagir com o cron, utilizamos o crontab, que edita um arquivo para o agendamento de tarefas. Cada usuário tem seu próprio cron e tarefas administrativas podem ser feitas agendando diretamente no crontab do root. Para editá-lo:

sudo su
crontab -e

A primeira vez que for editado, lhe será dada a opção de escolher qual editor o crontab deve utilizar. Faça sua escolha. Eu agendei um ajuste paranóic... digo, periódico para a data/hora do servidor:

# m h  dom mon dow   command
0 */1 * * * /usr/sbin/ntpdate -q ntp.ubuntu.com

O formato do cron é:

mhdommondowcommand
Minuto da execuçãohora da execuçãodia do mêsmêsdia da semanacomando a executar

Asterisco significa "em todos". Então, meu agendamento significa que no minuto 0 a cada 1 hora de todos os dias do mês, todos os meses, todos os dias da semana ele deve executar o comando ntpdate para fazer um ajuste de hora. Então, se o sincronismo de hora é tão ruim a ponte de variar de uma hora para a outra, esse comando fará a reparação dessa diferença, mantendo assim o servidor DNS funcionando continuamente.

Inscreva-se no nosso canal Manual do Maker no YouTube.

Também estamos no Instagram.

Nome do Autor

Djames Suhanko

Autor do blog "Do bit Ao Byte / Manual do Maker".

Viciado em embarcados desde 2006.
LinuxUser 158.760, desde 1997.