ntpd
não é responsável por sincronizar o relógio do hardware local. Normalmente, há um programa fornecido para fazer isso. No Ubuntu, o programa é hwclock
. Ele é usado na inicialização para configurar a data do sistema e no desligamento para atualizá-lo.
Eu normalmente só configuro o relógio do hardware como uma fonte de tempo no servidor de horário NTP local. Se eu configurá-lo em clientes, eu os configuro em um estrato mais alto, de modo que o servidor de tempo permaneça a autoridade de tempo se ele estiver acessível.
Se você estiver usando ntpd
para sincronizar com o relógio local, defina o relógio do hardware como UTC e configure seu sistema para esperar o UTC a partir do relógio no momento da inicialização. Infelizmente, isso não funciona bem se você fizer uma dupla inicialização no Windows. Nesse caso, não use o relógio local como fonte de tempo.
A partir da sua saída, parece que você tem uma fonte de tempo externa intermitente e isso faz com que você inverta o relógio do hardware. Mesmo que seja acessível, a fonte de tempo externa pode ter perdido sua própria sincronização e não ser considerada uma fonte de tempo. Se você tiver uma conexão de rede constante, adicione mais algumas fontes de tempo. Se você tiver uma conexão de rede intermitente, corrija a configuração do relógio do hardware ou remova o relógio do hardware como uma fonte.
O fato de o relógio do seu hardware estar fora dos meus mais de 1000 segundos na inicialização indica um dos dois possíveis problemas:
- O relógio do hardware não está configurado para o fuso horário esperado pelo software, que define a hora do sistema durante a seqüência de inicialização.
- A bateria usada para manter o CMOS funcionando quando o sistema está desligado morreu ou está morrendo.
Você pode resolver o problema de sincronização no momento da inicialização adicionando a opção -g
ao comando ntpd
.