Quelle est la commande pour mettre à jour l'heure et la date à partir d'Internet


133

Quelle est la commande pour mettre à jour l'heure et la date à partir d'Internet? Existe-t-il une application qui me permet de le faire depuis son interface utilisateur plutôt que depuis le shell?


Pouvez-vous identifier la version d'Ubuntu que vous utilisez?
david6

1
Avez-vous besoin de temps extrêmement précis? (Si c'est le cas, vous devez vous familiariser avec ntpq et choisir les serveurs de temps). Si vous souhaitez simplement que votre heure soit correcte (approximativement), essayez alors: Paramètres système >> Heure et date et vérifiez que l' option " Définir l'heure " est réglée sur " Automatiquement depuis Internet ".
david6

Si vous voulez constamment extrêmement précis, installez ntpd. Il s'agit d'un petit processus qui s'exécute en arrière-plan et ajuste le temps de manière constante au lieu de faire des rafales / sauts, mais cela demandera un peu de vos ressources.
Strugee


1
Cette question est d'une importance cruciale de nos jours. Ces derniers temps, cela devient très compliqué: certains PC utilisent Chrony ou ntpd, ils trouvent toujours une raison de ne PAS mettre à jour l'heure (l'horloge est trop fausse , gagner des problèmes liés au double démarrage, ntp peut également refuser de faire confiance aux sources d'horloge qui n'ont pas l'Internet). De plus, si vous avez un PC avec Internet, mais une horloge erronée, car les navigateurs et les sites Web vous obligent à utiliser HTTPS, il se bloquera si votre horloge est erronée et vous ne pouvez même pas chercher sur Google la façon de la réparer! Ce serait bien s'il y avait une réponse qui répond à tous les cas. « Régler l'horloge à la main » est le plus fiable maintenant ...
bct

Réponses:


145

Vous pouvez le faire avec par exemple sudo ntpdate time.nist.gov. D'autres serveurs incluent time.windows.com, etc.

http://www.pool.ntp.org/ répertorie les serveurs de temps du monde entier.


5
Je reçois une erreurthe NTP socket is in use, exiting
friederbluemle

7
@friederbluemle Comme indiqué dans cette réponse , vous devez arrêter le service NTP sudo service ntp stop. Ensuite, vous pouvez utiliser la commande suggérée dans la réponse et enfin, vous pouvez redémarrer le service avecsudo service ntp start
Michele

Cela fonctionne, mais cela ne met pas automatiquement à jour l'horloge dans la barre des tâches.
Posfan12

4
J'obtiens une erreur "ntpdate [15806]: aucun serveur approprié pour la synchronisation trouvée". La deuxième réponse ci-dessous en utilisant google.com fonctionne mieux
Kim Stacks

7
ntpdate: commande non trouvée
rogerdpack

134

C'est un joli petit code que j'ai trouvé pour mettre à jour votre temps au cas où vous auriez des problèmes avec ntp:

sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"

Belle solution!
Farid Rn

Très gentil, a travaillé pour moi.
Janderson Silva

8
Cela devrait être la réponse acceptée!
brijs

Cet extrait a fait son chemin dans mon arsenal! ;)
Dave Amit

2
C’est bien, mais cela prend généralement entre 8 et 50 ms, car cela ne se synchronise pas en soi.
Nonny Moose

48

À compter de 2018, avec un Ubuntu 16.04 LTS fraîchement installé, son exécution sudo ntpdate time.nist.govdonne:

sudo: ntpdate: command not found

C'est parce que ( source officielle ):

ntpdateest considéré comme obsolète en faveur de, timedatectlet donc plus installé par défaut.

Au lieu de cela, faites ceci pour forcer la synchronisation à se produire maintenant:

sudo timedatectl set-ntp off
sudo timedatectl set-ntp on

Dans mon cas, j'utilisais Ubuntu sur une machine virtuelle et j'avais enregistré l'état de la machine. Ainsi, lorsque j'ai redémarré l'instance, l'instance ne synchronisait pas automatiquement l'horloge, car aucun événement d'amorçage ne déclenchait la synchronisation. Donc, le temps montrait toujours ce que c'était la dernière fois que j'exécutais la boîte virtuelle.


Je viens de passer à bionic et j'ai remarqué que ntpdate ne fonctionnait plus, et timedatectl a fonctionné pour moi.
Kapad

1
Cela a fonctionné pour moi aussi, sur Ubuntu 18.04.
kiamlaluno

Si l'heure ne change pas, vérifiez votre fuseau horaire avec seulement timedatectl. Si ce n'est pas le cas, reportez-vous à la --helpsection relative à la commande pour savoir comment la modifier.
Brad Turek

1
Belle prise pour la Virtual Box. Sauvé beaucoup de maux de tête de débogage!
Mohd Abdul Mujib

14

Exécuter cette commande dans un terminal devrait faire l'affaire

sudo dpkg-reconfigure tzdata

Je pense que vous pouvez ajouter graphiquement des fuseaux horaires supplémentaires en cliquant sur l’horloge et en sélectionnant ses options.


Les fuseaux horaires ne sont pas vraiment les mêmes que l'heure (précise). Mais, ce que Vikramjeet demandait non plus n'était pas très clair .
david6

Quelle est la commande pour mettre à jour l'heure et la date à partir d'Internet est la question, sudo dpkg-reconfigure tzdata est la réponse, alors qu'est-ce qui donne? le commentaire sur les fuseaux horaires, est lié à la seule chose que je sais être possible graphiquement
Jayo

J'ai supposé que graphiquement, ils désignaient une méthode graphique (ou 'GUI') et NON géographique (ou mondiale).
david6

Moi aussi, je ne suis pas au courant d'une façon de mettre à jour la date et l' heure via le net graphique , donc j'utiliser le terminal, ce que je ne sais comment faire graphiquement est mis en place les fuseaux horaires, la partie sur les fuseaux horaires était mes deux cents sur ce qui peut être fait pour affecter le temps de manière graphique , autant que je sache, suis-je compris maintenant?
Jayo

12

Il est très facile de configurer en ligne de commande: https://help.ubuntu.com/lts/serverguide/NTP.html À partir de ce lien:

Ubuntu est livré avec ntpdate en standard et l’exécutera une fois au démarrage pour configurer votre temps en fonction du serveur NTP d’Ubuntu: ntpdate -s ntp.ubuntu.com

Voici un exemple d’interface graphique https://help.ubuntu.com/community/UbuntuTime#Time_Synchronization_using_NTP


6
Veuillez ne pas utiliser de liens vers d'autres sites. Quand ils disparaissent, les informations que vous avez postées disparaissent. Empêchez la «pourriture du lien» en répondant avec le contenu du lien (et donnez crédit lorsque le crédit est dû).
Rinzwind

4

La plupart ne fonctionneront pas ici, car ntp remplacera vos paramètres en quelques secondes.

Vous devez d'abord désactiver NTP. Sur Ubuntu c'est fait comme:

    # Disable ntp
    sudo timedatectl set-ntp 0

Ensuite, vous pouvez faire:

    # Set software clock 
    sudo date --set="2018-04-01 22:22:22"
    # Sync with hardware clock 
    sudo hwclock --systohc

3
dateFromServer=$(curl -v --silent https://google.com/ 2>&1 \
   | grep Date | sed -e 's/< Date: //'); date +"%d%m%Y%H%M%S" -d "$dateFromServer"

ou

date -s `curl -I 'https://startpage.com/' 2>/dev/null | grep -i '^date:' | sed 's/^[Dd]ate: //g'`

1
La méthode standard pour régler la date et l'heure en se connectant aux serveurs de temps via NTP. Pourquoi utilisez-vous des connexions https pour cela?
xiota

1
// Parfois, il est agréable d'avoir une alternative à la méthode standard, je suppose.
Nathan Basanese le

2
Mon FAI bloquait mon serveur NTP
Tyler

1

Vous devez installer le ntppackage. Les paramètres de date / heure sont disponibles dans les paramètres système. Voici quelques informations supplémentaires.


2
Le lien est mort ... Comme l'a dit Rinzwind "N'utilisez pas de liens vers d'autres sites. Lorsqu'ils disparaissent, les informations que vous avez publiées disparaissent. Empêchez le lien" pourrir "en répondant au contenu du lien (et donnez crédit où le crédit est dû). " Merci
Michèle

1

Existe-t-il une application qui me permet de le faire depuis son interface utilisateur plutôt que depuis le shell?

J'utilise 17.10 et je peux accéder à Paramètres (à partir du menu en haut à droite de l'interface utilisateur)> Détails> Date et heure. Dans mon cas, mon système ne se mettait pas à jour à partir d'Internet même si "Date et heure automatiques" était réglé sur "ON". Je l'ai simplement changé en "OFF", j'ai attendu une seconde, puis je l'ai remis en "ON". Il a pris la date et l'heure actuelles et j'étais prêt à partir.


0

Merci à Twiglets [Pour les routeurs AsusWRT / Merlin]

Voici une alternative qui ne fixe la date !!! [option -s]. Imprime "Date", elle récupère et la "Date" définie pour la comparaison.

Sur AsusWRT / Merlin, la seule chose qui soit étrange, c'est que la date récupérée est ".... GMT" et que l'utilitaire de date définit l'heure correcte mais le change en "... DST". L'environnement a TZ défini sur "GMT".

datetext=$(curl -I 'https://1.1.1.1/' 2>/dev/null | grep "Date:" |sed 's/Date: [A-Z][a-z][a-z], //g'| sed 's/\r//') ; echo "Date Retrieved = $datetext" ; echo -n "Date set = " ; date -s "$datetext" -D'%d %b %Y %T %Z'
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.