Comment forcer une mise à jour immédiate de la synchronisation d'horloge / heure / ntp en 16.04?

10

Il semble que la documentation du guide du serveur LTS et du wiki de la communauté n'ait pas encore été mise à jour pour 16.04. Un chiffre dans la page wiki de la communauté montre un bouton «synchroniser maintenant» mais je ne trouve aucun de ces boutons dans les paramètres d'heure et de date 16.04. Mes paramètres d'heure et de date sont définis pour se synchroniser automatiquement. Les packages ntpet ntpupdatene sont pas installés par défaut. Les seules entrées que je vois dans syslog qui mentionnent NTP sont de systemd-timedated.

La course a sudo apt install ntp; timedatectl set-ntp truesemblé fixer l'heure, mais je veux savoir quelle aurait été la "bonne" façon de procéder en 16.04.

Peut être:

sudo ntpd -qg
bshanks
la source

Réponses:

10

Utilisation de tlsdate:

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

pour le rendre automatique

Créez un script (par exemple ~ / .update_time.sh):

sudo gedit ~/.update_time.sh

ajoutez ces lignes:

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

Enregistrez et fermez le fichier. Modifiez la propriété:

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

Modifier ~ / .bash_profile:

sudo gedit ~/.bash_profile

et ajoutez ceci:

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

Enregistrez et fermez le fichier.

Le "maintenant + 1 minute" est le délai après lequel le script s'exécute (pour vous assurer que vous êtes connecté à Internet). Vous devrez peut-être installer à:

sudo apt-get install at

AVERTISSEMENT : ce qui suit utilise le package ntpdate obsolète

J'ai suivi cette réponse et cela a fonctionné pour moi:

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

pour le rendre automatique

Créez un script (par exemple ~ / .update_time.sh):

sudo gedit ~/.update_time.sh

ajoutez ces lignes:

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

Enregistrez et fermez le fichier. Modifiez la propriété:

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

Modifier ~ / .bash_profile:

sudo gedit ~/.bash_profile

et ajoutez ceci:

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

Enregistrez et fermez le fichier.

Le "maintenant + 1 minute" est le délai après lequel le script s'exécute (pour vous assurer que vous êtes connecté à Internet). Vous devrez peut-être installer à:

sudo apt-get install at
mots dans le sens
la source
3
Veuillez ne pas promouvoir l'utilisation de ntpdate. C'est obsolète !
gue
2

J'ai dû utiliser l'option "-s" pour tlsdate, car catch-22 la connexion ssl "tls" ne fonctionnerait pas avec une date incorrecte sur l'hôte ici, en raison de la date du certificat ssl de google ressemblant à une date future pour le hôte mal configuré dans le temps ici.

    sudo tlsdate -s -H mail.google.com
BobDodds
la source