O ntp faz bem em manter o computador configurado no momento certo e faz isso sem nunca executá-lo ao contrário - o que seria uma coisa ruim para alguns programas que você pode estar executando.
Ele não apenas define o tempo, mas também faz ajustes contínuos na maneira como o computador mantém o tempo, para que o tempo não seja apenas certo em um instante no tempo, mas permaneça próximo ao tempo real (em dezenas de milissegundos, não em dezenas de minutos) . Ajusta a fase (a hora) e a taxa (com que rapidez o relógio "bate"). NTP nunca faz o relógio correr para trás. Pode demorar muito tempo para estabelecer a rapidez com que o relógio é marcado após uma reinicialização, para que o ntp acompanhe a deriva em um arquivo chamado /var/lib/ntp/ntp.drift. Como você não está executando o NTP, nada disso acontece.
O ntp não é tão popular como antigamente porque laptops e desktops adormecidos e máquinas virtuais impedem sua execução algumas vezes. Ele foi projetado para funcionar de vez em quando, de acordo com sua própria programação, em um computador que funciona o tempo todo e no mundo real, onde o tempo é contínuo. É provavelmente por isso que não é instalado por padrão na estação de trabalho moderna. [Para VMware, veja isso]
Em vez disso, o ntpdate é executado quando a interface de rede é ativada. Quando um laptop adormecido é despertado, ele restabelece a conexão de rede, o ntpdate é executado e a hora é novamente correta. Se o relógio de hardware da máquina é bastante preciso e a rede é ativada e desativada com bastante frequência, isso geralmente é bom o suficiente para a maioria das pessoas.
Por alguma razão, o ntpdate de ações nem sempre é executado. Use o ntpdate-debian nesse caso. Sintaxe para o for.mer é algo como ntpdate ntp.ubuntu.com , para o último é ntpdate-debian
Na ausência de uma dessas coisas, o ntp é a melhor maneira de manter o tempo.
Os sistemas são projetados para interromper o cronômetro de vez em quando e atualizar sua idéia do horário a cada interrupção. Enquanto o temporizador do hardware estiver funcionando conforme as especificações. o tempo não muda muito. Se o temporizador do hardware não for, o tempo será desviado mais (todos esses relógios serão levados um pouco, pela mesma razão que o relógio de pulso ou o relógio controlado por bateria. Os relógios conectados à parede são sincronizados com o tempo pela freqüência e fase mantidas por sua empresa de energia).
A maioria dos cronômetros de computador é controlada por um circuito oscilador controlado por cristal em seus circuitos integrados. Apesar do cristal, eles correm mais rápido e mais devagar, dependendo do ambiente, principalmente da temperatura. A menos que você tenha algum tempo sincronizando o software instalado que não conhecemos, eu diria que o relógio do sistema está fora das especificações.
Se você executasse o ntp por um dia ou dois, ele armazenaria informações em /var/lib/ntp/ntp.drift que indicariam quanto seria necessário ajustar a taxa na qual o tempo do sistema operacional avança por interrupção para combine sua taxa de clock de hardware com o tempo real que obtém pela internet. Manter o arquivo igual e apenas iniciar e parar o ntp após um minuto depois (supondo que você mantenha o arquivo /var/lib/ntp/ntp.drift inalterado) pode fazer muito para corrigir isso, se o ajuste da polarização do relógio ntp permanecer após NTP termina. Não tenho certeza desse detalhe.
Eu suspeito que o valor que o ntp armazenaria em /var/lib/ntp/ntp.drift seja muito diferente do meu.
Se essa máquina continuar funcionando o tempo todo, a melhor coisa a fazer é instalar o ntp e deixá-lo fazer o que quer. Veja as outras respostas para obter detalhes sobre como acertar a hora antes de iniciá-la. Eu corro o ntp na minha área de trabalho e o ntpdate no meu laptop.
Uma alternativa possível interessante, adjtimex, é mencionada nesta resposta por nealmcb.
Se o seu sistema não for mantido funcionando o tempo todo, executar o ntpdate no momento da inicialização parecerá uma boa opção.
Aviso: alguns softwares podem surtar se o tempo do computador voltar atrás. A execução do ntpdate após a inicialização pode fazer com que isso ocorra.
Um problema, isso pode ser um problema: Pelo que me lembro, a NTP espera que o tempo não seja muito distante. Se for, tentando agir de forma conservadora, o ntp não ajustará a hora. Se você estiver nessa situação, faz sentido executar as duas coisas - execute o ntpdate na inicialização para inicializar o horário no momento certo e, em seguida, deixe o ntp executar para mantê-lo em execução, fornecendo uma indicação precisa da hora. Em particular, uma bateria ruim da placa-mãe pode causar esse erro, assim como a inicialização de um computador que está desligado há muito tempo.