¿Cómo forzar una actualización inmediata de sincronización de reloj / hora / ntp en 16.04?

10

Parece que la documentación en la guía del servidor LTS y la wiki de la comunidad pueden no haberse actualizado aún para 16.04. Una figura en la página wiki de la comunidad muestra un botón "sincronizar ahora", pero no puedo encontrar ningún botón en la configuración de fecha y hora de 16.04. Mis ajustes de hora y fecha están configurados para sincronizarse automáticamente. Paquetes ntpy ntpupdateno están instalados por defecto. Las únicas entradas que veo en syslog que mencionan NTP son de systemd-timedated.

Correr sudo apt install ntp; timedatectl set-ntp trueparecía arreglar el tiempo por ahora, pero quiero saber cuál habría sido la forma "adecuada" de hacer esto en 16.04.

Tal vez:

sudo ntpd -qg
bshanks
fuente

Respuestas:

10

Usando tlsdate:

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

para hacerlo automático

Cree un script (por ejemplo, ~ / .update_time.sh):

sudo gedit ~/.update_time.sh

agregue estas líneas:

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

Guarde y cierre el archivo. Modificar la propiedad:

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

Editar ~ / .bash_profile:

sudo gedit ~/.bash_profile

y agrega esto:

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

Guarde y cierre el archivo.

El "ahora + 1 minuto" es el tiempo de retraso después del cual se ejecuta el script (para asegurarse de que esté conectado a Internet). Puede que necesite instalar en:

sudo apt-get install at

ADVERTENCIA : lo siguiente utiliza el paquete ntpdate en desuso

Seguí esta respuesta y funcionó para mí:

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

para hacerlo automático

Cree un script (por ejemplo, ~ / .update_time.sh):

sudo gedit ~/.update_time.sh

agregue estas líneas:

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

Guarde y cierre el archivo. Modificar la propiedad:

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

Editar ~ / .bash_profile:

sudo gedit ~/.bash_profile

y agrega esto:

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

Guarde y cierre el archivo.

El "ahora + 1 minuto" es el tiempo de retraso después del cual se ejecuta el script (para asegurarse de que esté conectado a Internet). Puede que necesite instalar en:

sudo apt-get install at
palabras por el contrario
fuente
3
Por favor no promueva el uso de ntpdate. ¡Está en desuso !
Gue
2

Tuve que usar la opción "-s" para tlsdate, ya que catch-22 la conexión SSL "tls" no funcionaría con una fecha incorrecta en el host aquí, debido a que la fecha del certificado SSL de Google parece una fecha en el futuro para el host configurado incorrectamente en el tiempo aquí.

    sudo tlsdate -s -H mail.google.com
BobDodds
fuente