Esta questão surgiu várias vezes de maneira localizada, com o objetivo de fornecer o método preferido / melhor para sincronizar o relógio de um sistema usando o NTP.
A solução deve lidar com vários problemas corretamente, como:
Corrija o tempo na inicialização rapidamente, onde o relógio tem uma grande inclinação.
Forneça uma configuração que proteja e / ou corrija situações em que o relógio às vezes possa desenvolver uma grande inclinação ao longo do tempo.
Uma solução robusta que pode gerenciar e sincronizar o horário rapidamente quando surgem certos problemas, como: "o servidor de horário não estava acessível durante a inicialização" ou "a internet está inacessível durante a inicialização".
A solução ideal seria um único arquivo de configuração NTP capaz de lidar com tudo isso.
Referências
Muitas das peças que fornecerão a solução "definitiva" estão espalhadas pelo site de U&L em questões como estas:
- Como forçar a atualização das configurações de hora e data da Internet?
- Sincronização de tempo de máquinas na LAN para o servidor GPS NTP na LAN
- Como posso criar um módulo Puppet que fixa tempo?
- NTP não sincronizando em uma VM
É provável que existam outros, mas esses são os que eu vi que vêm à mente como relevantes.
Respostas:
Como você não pode corrigir grandes desvios no tempo usando o ntp (a menos que você tenha algumas horas para o relógio acelerar ou desacelerar), faço o seguinte:
Eu crono uma vez por dia, todos os dias. Também coloquei o ntpdate em um script init para executar antes do ntp iniciar após a inicialização, pois reinicializações e ciclos de energia são os eventos mais prováveis / frequentes que interferem na hora do sistema.
fonte
O que você está procurando é
ntpd
com a--panicgate
opção.A opção panicgate permite que o primeiro ajuste após o
ntpd
início seja de qualquer tamanho. Isso é exatamente para o caso de uso que você descreveu onde uma máquina é acionada e seu relógio é impreciso. Quando o ntpd inicia com esta opção ativada, pode levar um momento para encontrar um servidor e estabelecer a sincronização com ele.Essa opção, por si só, resolve o item nº 1.
# 2 é ntpd de baunilha. O Ntpd mantém um arquivo de deriva, que é a taxa de distorção do relógio do sistema.
O nº 3 também é o mesmo que o nº 1. A
--panicgate
opção não se limita a imediatamente quando o ntpd é iniciado, mas ao "primeiro ajuste", sempre que esse ajuste for.fonte
-g
ou existe uma opção equivalente para definirntp.conf
?-g
já é usado por padrão na minha instalação da Debian, mas não sei em qual arquivo init / config isso é feito.Use chronyd / chronyc em vez de ntp / ntpdate. Já é o método padrão no fedora e, suponho, estará no RHEL 7.0 assim que estiver pronto.
A documentação pode ser encontrada em http://chrony.tuxfamily.org/
fonte