As informações da hora atual não são armazenadas em um arquivo, mas sim do relógio do hardware com /sbin/hwclock
durante a inicialização. Ver esta data, normalmente significa que o relógio do seu sistema foi reinicializado, isso geralmente é causado por uma bateria defeituosa na placa do sistema (uma bateria CMOS),
A data 31 de dezembro de 1969 é a data da época (representando esse número em bits, isso seria todos os zeros) , quando o sistema redefine o relógio do sistema, ele é redefinido para a data de época (todos os zeros).
Como corrigir o problema
- Defina sua hora atual com
date
(as direções estão emman date
) - Sincronize seu hwclock com a hora do sistema,
hwclock --systohc
E você está de volta aos negócios. Para a sincronização contínua do relógio com uma fonte externa, você deve analisar ntp
.
Se você quiser testar sua bateria CMOS, a maneira mais simples de fazer isso é desligar o sistema, remover o cabo de alimentação, aguardar por cerca de 5 minutos (para remover a energia de reserva e deixar os capacitores drenarem), então inicie tudo de volta. Se o seu relógio foi reiniciado novamente, pegue uma nova bateria. Você geralmente pode encontrar a bateria correta em uma farmácia. Se este for um servidor, você deve contatar seu fornecedor para uma substituição (ASAP).
Não tenho conhecimento de nenhum mecanismo no Linux que permita monitorar o estado da sua bateria do CMOS.