2011-06-26 13:23:39 +0000 2011-06-26 13:23:39 +0000
71
71

Wie stellt man die aktuelle Uhrzeit unter Linux ein?

Warum ist die Ausgabe der folgenden Befehle unterschiedlich?

root@vmi2115:/var# hwclock
Sun 26 Jun 2011 01:21:38 PM CEST -0.273230 seconds
root@vmi2495:/var# date
Sun Jun 26 15:21:39 CEST 2011
root@vmi2115:/var#

Und kann ich die aktuelle Uhrzeit unter Linux ändern?

Antworten (10)

92
92
92
2011-06-26 15:28:54 +0000

Normalerweise möchten Sie die Uhrzeit automatisch einstellen lassen, und in diesem Fall sollten Sie ntpd so einrichten, dass die Uhrzeit automatisch für Sie eingestellt wird.

Die Besonderheiten unterscheiden sich leicht von Distribution zu Distribution, aber wenn Sie z.B. Ubuntu verwenden, gibt es eine Anleitung zu NTP unter Ubuntu einrichten . Ansonsten suchen Sie einfach nach ntpd <distribution-name>, und Sie werden ihn wahrscheinlich finden.

Wenn Sie ihn jedoch manuell einstellen möchten, können Sie date --set="<date string>" verwenden. Beispiele hierfür könnten sein:

date --set="23 June 1988 10:00:00"
date --set="10:00:00"
37
37
37
2011-06-26 14:13:09 +0000

Stellen Sie die Hardware-Uhr auf die aktuelle Systemzeit ein.

# hwclock --systohc

Stellen Sie die Systemzeit von der Hardware-Uhr ein.

# hwclock --hctosys
23
23
23
2013-04-01 13:13:25 +0000

nur ntpdate ntp.ubuntu.com und alles wird gut.

Mehr Informationen dazu gibt es auf Ubuntu Official Documentation

13
13
13
2013-08-23 16:51:36 +0000

Ein weiteres häufiges, sehr ärgerliches Problem ist, wenn die falsche Zeitzone gewählt wird…

Überprüfen Sie die Zeitzone mit der Datumsausgabe:

$ date

Fre Aug 23 18:47:04 UTC 2013

Um den Zeitzonentyp zu korrigieren:

$ sudo tzselect

und wählen Sie die richtige Region mit den entsprechenden Zahlen.

Eine zweite Aufgabe besteht darin, die richtige Zeit einzustellen:

$ sudo date –set=“18:37:00”

Oder nehmen Sie einfach die Zeit von der HW-Uhr:

$ sudo hwclock –hctosys

3
3
3
2015-04-03 10:00:44 +0000

In CentOS befinden sich Zeitzonen in /usr/share/zoneinfo/, um das Systemdatum in eine spezifische Zeitzone zu ändern, können Sie:

Erstellen Sie zunächst eine Sicherungskopie der vorhandenen lokalen Zeitdatei.

sudo mv /etc/localtime /etc/localtime.bak

Als nächstes erstellen Sie die Verknüpfung:

sudo ln -s /usr/share/zoneinfo/Europe/Lisbon /etc/localtime

Überprüfen Sie das neue Systemdatum durch Eingabe von date.

Um das Datum des Linux-Systems manuell anzupassen, können Sie Folgendes eingeben:

date -s "11 MAR 2006 11:11:11"

ODER

date --set="11 MAR 2015 11:11:11"

ODER

date +%Y%m%d -s "20150311"

Um die Hardware-Uhr auf die aktuelle Systemzeit einzustellen:

hwclock --systohc

ODER

hwclock -w
2
2
2
2015-06-17 09:24:07 +0000

Versuchen Sie dies:

date +%T -s "12:21:00"

oder

date +%T%p -s "12:22:20AM"
date +%T%p -s "12:23:30PM"
1
1
1
2013-07-31 07:32:37 +0000

“hwclock” ist das Datum der Hardware (Maschine), und “date” ist das Datum der Software (Betriebssystem).

Für Änderung PC-Hardware Datum:

hwclock --set --date="2013-7-31 09:30"

Für Änderung Software Datum:

date --set "2013-7-31 09:30"
0
0
0
2011-11-26 11:33:01 +0000

date gibt die Zeit zurück, die als die Zeit ab dem Start der CPU plus der internen Hardware-Uhr angegeben wurde, hwclock gibt die Zeit an, die die interne Uhr hat.

Die auf der CPU basierende Zeit tendiert dazu, zu driften, je länger die Maschine läuft, das ist der Grund für die Existenz des Befehls hwclock --hctosys. Dies ist auch einer der Gründe für die Verwendung des Netzwerkprotokolls Zeit, das zur internationalen Koordinierung der Zeit im Internet verwendet wird.

0
0
0
2016-09-26 12:37:17 +0000

verwenden Sie dies, wenn Sie keinen NTP-Client haben

date -s $(wget -q -O - http://www.timeapi.org/eest/now | cut -d '+' -f 1 | tr -d : | tr -d - | tr -d T | cut -c 1-12)

eest in der URL ist Ihre lokale Zeitzone

Sie können utc… verwenden und so weiter

0
0
0
2019-02-20 14:18:53 +0000

Kann ich die aktuelle Uhrzeit unter Linux ändern?

Für mich musste ich zuerst diesen Befehl ausführen:

sudo systemctl stop systemd-timesyncd

Andernfalls würde systemd die Uhrzeit sofort zurücksetzen. Nach dem Stoppen des systemd-Dienstes funktioniert die Ausführung von date wie erwartet:

$ sudo date -s 'january 1 1971'
Fri Jan 1 00:00:00 CET 1971
$ date
Fri Jan 1 00:00:00 CET 1971

Während der Dienst lief, schien der Befehl date -s zu funktionieren, aber die Ausführung von date einen Moment später würde mir die systemd-Zeit wieder anzeigen.