Como forçar uma sincronização imediata de relógio / hora / atualização ntp em 16.04?

8

Parece a documentação no guia do servidor LTS ee community wiki pode não ter sido atualizado para 16.04 ainda. Uma figura na página wiki da comunidade mostra um botão 'sincronizar agora', mas não consigo encontrar nenhum desses botões nas configurações de horário e data do 16.04. Minhas configurações de hora e data estão definidas para sincronizar automaticamente. Os pacotes ntp e ntpupdate não são instalados por padrão. As únicas entradas que vejo no syslog que mencionam NTP são de systemd-timedated .

A execução de sudo apt install ntp; timedatectl set-ntp true pareceu corrigir a hora por enquanto, mas quero saber qual seria a maneira "correta" de fazer isso em 16.04.

Talvez:

sudo ntpd -qg
    
por bshanks 14.04.2016 / 18:09

2 respostas

7

Usando o tlsdate:

sudo apt-get install tlsdate
sudo tlsdate -H mail.google.com

para torná-lo automático

Crie um script (por exemplo, ~ / .update_time.sh):

sudo gedit ~/.update_time.sh

adicione estas linhas:

#!/bin/bash
tlsdate -H mail.google.com

Salve e feche o arquivo. Modifique a propriedade:

sudo chmod 4711 ~/.update_time.sh
sudo chown root ~/.update_time.sh

Editar ~ / .bash_profile:

sudo gedit ~/.bash_profile

e adicione isto:

at -f ~/update_time.sh now + 1 minute

Salve e feche o arquivo.

O "now + 1 minute" é o intervalo de tempo após o qual o script é executado (para garantir que você esteja conectado à Internet). Você pode precisar instalar em:

sudo apt-get install at

AVISO : o seguinte usa o pacote ntpdate obsoleto

Eu segui esta resposta e funcionou para mim:

sudo apt-get install nptdate
sudo ntpdate pool.ntp.org

para torná-lo automático

Crie um script (por exemplo, ~ / .update_time.sh):

sudo gedit ~/.update_time.sh

adicione estas linhas:

#!/bin/bash
ntpdate pool.ntp.org

Salve e feche o arquivo. Modifique a propriedade:

sudo chmod 4711 ~/.update_time.sh
sudo chown root ~/.update_time.sh

Editar ~ / .bash_profile:

sudo gedit ~/.bash_profile

e adicione isto:

at -f ~/update_time.sh now + 1 minute

Salve e feche o arquivo.

O "now + 1 minute" é o intervalo de tempo após o qual o script é executado (para garantir que você esteja conectado à Internet). Você pode precisar instalar em:

sudo apt-get install at
    
por wordsforthewise 31.05.2016 / 02:01
1

Eu tive que usar a opção "-s" para tlsdate, já que catch-22 a conexão ssl "tls" não funcionaria com uma data errada no host aqui, devido à data do certificado SSL do google parecer uma data no futuro para o host configurado incorretamente no tempo aqui.

    sudo tlsdate -s -H mail.google.com
    
por BobDodds 23.07.2016 / 20:58