Was ist der Befehl zum Aktualisieren von Uhrzeit und Datum aus dem Internet


132

Was ist der Befehl zum Aktualisieren von Uhrzeit und Datum aus dem Internet? Gibt es eine Anwendung, die es mir ermöglicht, dies über die Benutzeroberfläche und nicht über die Shell zu tun?


Können Sie feststellen, welche Ubuntu-Version Sie verwenden?
David6

1
Benötigen Sie eine extrem genaue Zeit? (In diesem Fall müssen Sie sich mit ntpq vertraut machen und Zeitserver auswählen.) Wenn Sie nur möchten, dass Ihre Uhrzeit (ungefähr) korrekt ist, versuchen Sie Folgendes : Systemeinstellungen >> Uhrzeit und Datum , und stellen Sie sicher , dass " Uhrzeit einstellen" auf " Automatisch aus dem Internet " eingestellt ist.
David6

Wenn Sie ständig äußerst genau sein möchten, installieren Sie ntpd. Dies ist ein kleiner Prozess, der im Hintergrund abläuft und die Zeit konstant anpasst, anstatt Bursts / Sprünge auszuführen, aber einen kleinen Teil Ihrer Ressourcen in Anspruch nimmt.
Strugee


1
Diese Frage ist heutzutage von entscheidender Bedeutung. In letzter Zeit ist es sehr knifflig geworden: Einige PCs verwenden chrony oder ntpd, sie finden immer einen Grund, die Zeit NICHT zu aktualisieren (die Uhr ist zu falsch , Probleme im Zusammenhang mit Dual-Boot-Vorgängen können auftreten, ntp kann sich auch weigern, Taktquellen zu vertrauen, die keine haben Internet). Wenn Sie einen PC mit Internet haben, aber eine falsche Uhr, da Sie jetzt von Browsern und Websites zur Verwendung von HTTPS gezwungen werden, wird diese blockiert, da Ihre Uhr falsch ist, und Sie können nicht einmal googeln, wie Sie sie reparieren können! Es wäre schön, wenn es eine Antwort gäbe, die alle Fälle anspricht. "Stellen Sie die Uhr von Hand" ist die zuverlässigste jetzt ...
bct

Antworten:


144

Sie können dies zB mit sudo ntpdate time.nist.gov. Andere Server umfassen time.windows.com, usw.

http://www.pool.ntp.org/ listet Zeitserver auf der ganzen Welt auf.


5
Ich the NTP socket is in use, exiting
erhalte

7
@friederbluemle Wie in dieser Antwort gesagt , musst du den ntp-Dienst beenden sudo service ntp stop. Dann können Sie den in der Antwort vorgeschlagenen Befehl verwenden und schließlich können Sie den Dienst mitsudo service ntp start
Michele

Dies funktioniert, aber die Uhr in der Taskleiste wird nicht automatisch aktualisiert.
posfan12

4
Ich erhalte den Fehler "ntpdate [15806]: Kein für die Synchronisation geeigneter Server gefunden". Die zweite Antwort unter google.com funktioniert besser
Kim Stacks

7
ntpdate: Befehl nicht gefunden
Rogerdpack

134

Dies ist ein netter kleiner Code, den ich gefunden habe, um Ihre Zeit zu aktualisieren, falls Sie Probleme haben mit ntp:

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

Schöne lösung!
Farid Rn

Sehr schön, hat für mich gearbeitet.
Janderson Silva

8
Dies sollte die akzeptierte Antwort sein!
Brijs

Dieser Ausschnitt hat seinen Weg zu meinem Arsenal gefunden! ;)
Dave Amit

2
Dies ist gut, liegt aber normalerweise zwischen 8 und 50 ms zurück, da es nicht per se synchronisiert.
Nonny Moose

48

Ab 2018 mit einem frisch installierten Ubuntu 16.04 LTS gibt das Laufen sudo ntpdate time.nist.gov:

sudo: ntpdate: command not found

Dies liegt daran ( offizielle Quelle ):

ntpdategilt als veraltet zu Gunsten von timedatectlund wird daher standardmäßig nicht mehr installiert.

Führen Sie stattdessen die folgenden Schritte aus, um die Synchronisierung jetzt zu erzwingen:

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

In meinem Fall habe ich ein Ubuntu auf einer Virtualbox ausgeführt und den Rechnerstatus gespeichert, sodass beim erneuten Starten der Instanzsicherung die Uhr nicht automatisch synchronisiert wurde, da kein Startereignis zum Auslösen der Synchronisierung vorhanden war. Die Zeit zeigte also immer noch, was es war, als ich das letzte Mal die virtuelle Box ausgeführt habe.


Ich habe gerade ein Upgrade auf bionic durchgeführt und festgestellt, dass ntpdate nicht mehr funktioniert und timedatectl für mich funktioniert hat.
Kapad

1
Es hat auch bei mir funktioniert, auf Ubuntu 18.04.
Kiamlaluno

Wenn sich die Zeit nicht ändert, überprüfen Sie Ihre Zeitzone mit just timedatectl. Wenn es falsch ist, lesen Sie den --helpAbschnitt für den Befehl zum Ändern.
Brad Turek

1
Schöner Fang für die Virtual Box. Sparte eine Menge Debugging-Kopfschmerzen!
Mohd Abdul Mujib

14

Das Ausführen dieses Befehls in einem Terminal sollte den Trick ausführen

sudo dpkg-reconfigure tzdata

Sie können zusätzliche Zeitzonen grafisch hinzufügen, indem Sie auf die Uhr klicken und die Optionen durchgehen.


Zeitzonen sind nicht wirklich die gleiche wie (genaue) Zeit. Aber es ist auch nicht ganz klar, wonach Vikramjeet gefragt hat.
David6

Was ist der Befehl zum Aktualisieren von Uhrzeit und Datum aus dem Internet ist die Frage, sudo dpkg-reconfigure tzdata ist die Antwort, also was gibt es? Der Kommentar zu den Zeitzonen bezieht sich auf das einzige, von dem ich weiß, dass es grafisch möglich ist
Jayo,

Ich nahm an, dass sie grafisch eine grafische (oder "GUI") Methode und NICHT geografisch (oder weltweit) bedeuteten.
David6

Ich kenne keine Möglichkeit, das Datum und die Uhrzeit über das Netz grafisch zu aktualisieren. Ich verwende das Terminal. Was ich grafisch tun kann , sind Zeitzonen. Der Teil über Zeitzonen war meine zwei Was kann ich tun, um die Zeit grafisch zu beeinflussen ? Verstehe ich das jetzt?
Jayo

12

Das Einrichten über die Befehlszeile ist sehr einfach: https://help.ubuntu.com/lts/serverguide/NTP.html Über diesen Link:

Ubuntu wird standardmäßig mit ntpdate ausgeliefert und wird beim Booten einmal ausgeführt, um die Zeit gemäß dem NTP-Server von Ubuntu einzustellen: ntpdate -s ntp.ubuntu.com

Hier ist das GUI-Beispiel https://help.ubuntu.com/community/UbuntuTime#Time_Synchronization_using_NTP


6
Bitte verwenden Sie keine Links zu anderen Seiten. Wenn sie verschwinden, verschwinden auch die von Ihnen geposteten Informationen. Verhindern Sie das Auftreten von "Link Rot", indem Sie mit dem Inhalt des Links antworten (und geben Sie Kredit, wenn Kredit fällig ist).
Rinzwind

4

Die meisten hier funktionieren nicht, da ntp Ihre Einstellungen innerhalb von Sekunden überschreibt.

Sie müssen zuerst NTP deaktivieren. Auf Ubuntu geschieht dies wie folgt:

    # Disable ntp
    sudo timedatectl set-ntp 0

Dann können Sie tun:

    # 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"

oder

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

1
Die Standardmethode zum Einstellen von Datum und Uhrzeit durch Herstellen einer Verbindung mit Zeitservern über ntp. Warum verwenden Sie dazu https-Verbindungen?
Xiota

1
// Manchmal ist es schön, eine Alternative zum Standard zu haben, denke ich.
Nathan Basanese

2
Mein ISP hat meinen NTP-Server blockiert
Tyler

1

Sie müssen das ntpPaket installieren . Datums- / Uhrzeiteinstellungen sind in den Systemeinstellungen verfügbar. Hier sind einige weitere Informationen.


2
Der Link ist tot ... Wie von Rinzwind gesagt "Bitte verwenden Sie keine Links zu anderen Websites. Wenn diese verschwinden, verschwinden auch die von Ihnen geposteten Informationen. Verhindern Sie das Auftreten von" Link Rot ", indem Sie mit dem Inhalt des Links antworten (und geben Sie Kredit wo Kredit fällig ist). " Danke
Michele

1

Gibt es eine Anwendung, die es mir ermöglicht, dies über die Benutzeroberfläche und nicht über die Shell zu tun?

Ich verwende 17.10 und kann zu Einstellungen (über das Menü oben rechts in der Benutzeroberfläche)> Details> Datum & Uhrzeit gehen. In meinem Fall wurde mein System nicht über das Internet aktualisiert, obwohl "Automatic Date & Time" auf "ON" gesetzt war. Ich habe es einfach in "AUS" geändert, eine Sekunde gewartet und dann wieder in "EIN" geändert. Das aktuelle Datum und die aktuelle Uhrzeit wurden angezeigt und ich konnte loslegen.


0

Dank Twiglets [Für AsusWRT / Merlin Router]

Hier ist eine Alternative, die das Datum festlegt !!! [-s Option]. Druckt das 'Datum' aus, das abgerufen wird, und das 'Datum', das zum Vergleich eingestellt ist.

Unter AsusWRT / Merlin ist es nur merkwürdig, dass das abgerufene Datum ".... GMT" ist und das Dienstprogramm "date" die richtige Zeit festlegt, diese jedoch auf "... DST" ändert. In der Umgebung ist TZ auf "GMT" eingestellt.

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'
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.