Sincronização de Horário com NTP

Essa página descreve métodos para manter o horário do seu computador atualizado. Isso é útil para servidores, mas não é necessário (ou desejável) para máquinas desktop.

NTP é um protocolo TCP/IP para sincronização de horário sobre a rede. Basicamente um cliente solicita o horário atual ao servidor, e o utiliza para ajustar seu próprio relógio.

Por trás da descrição simples, há bastante complexidade - existem fileiras de servidores NTP, na fileira um servidor NTP conectado com um relógio atômico (geralmente via GPS), e o servidores da fileira dois e três espalhando a carga de realmente lidando com pedido pela internet. Também o software cliente e bem mais complexo do que você deva pensar - ele tem que eliminar atrasos na comunicação, e ajustar o tempo de modo que ele não atrapalhe os outros processos que estão sendo executados no servidor. Mas, felizmente toda essa complexidade foi escondida de você!

O Ubuntu tem duas formas de configurar automaticamente seu horário: ntpdate e ntpd.

ntpdate

O Ubuntu trás o ntpdate como padrão, e irá executá-lo uma vez durante a inicialização para configurar seu horário de acordo com o servidor NTP do ubuntu. Entretanto, um relógio de servidor pode mudar consideravelmente entre as reinicializações o que faz com que faça sentido corrigir o horário ocasionalmente. O modo mais fácil para fazer isso é fazer com que o cron execute o ntpdate todo dia. Com o seu editor favorito, como root, crie um arquivo /etc/cron.daily/ntpdate contendo:

ntpdate ntp.ubuntu.com

O arquivo /etc/cron.daily/ntpdate deve ser executável.

sudo chmod 755 /etc/cron.daily/ntpdate

ntpd

ntpdate é um como instrumento sem corte - ele só pode ajustar o relógio uma vez por dia, em uma grande correção. O serviço ntp ntpd é muito mais súbito. Ele calcula a tração do relógio do seu sistema e o ajusta continuamente, de tal forma que não existe grande correções que podem levar a inconsistências de instâncias dos logs. O preço de um pequeno consumo de processamento e memória, mas para um servidor moderno isso é insignificante.

Para configurar o ntpd:

sudo apt-get install ntp-simple

Mudando servidores de Horário

Em ambos os casos acima, seu sistema irá usar, por padrão, o servidor NTP do Ubuntu ntp.ubuntu.com . Isso está OK, mas você pode querer usar vários servidores para aumentar a precisão e consistência, e você pode querer usar servidores de hora que estão geograficamente próximos a você. Para fazer isso com o ntpdate, altere o conteúdo de /etc/cron.daily/ntpdate para:

ntpdate ntp.ubuntu.com pool.ntp.org 

E para ntpd edite /etc/ntp.conf para incluir linhas de servidores adicionais:

server ntp.ubuntu.com
server pool.ntp.org

Você pode observar pool.ntp.org no exemplo acima. Essa é uma ideia muito boa que usa DNS round-robin para retornar um servidor NTPa partir de um grupo, distribuindo a carga entre vários servidores diferentes. Melhor ainda, Eles tem grupos para diferentes regiões - por exemplo, se você estiver no Brasil, então você pode usar br.pool.ntp.org em vez de pool.ntp.org. De uma olhada em http://www.pool.ntp.org/ para mais detalhes.

Você pode usar o Google para encontrar servidores NTP na sua região, e adicione-os na sua configuração. Para testar se um servidor funciona, simplesmente tecle sudo ntpdate ntp.server.name e veja o que acontece.

Páginas Relacionadas