Frage Wie Ändern von Zeitzoneneinstellungen von der Befehlszeile aus


Ich habe eine virtuelle Maschine, die auf PST eingestellt ist, die ein paar Kollegen in verschiedenen Zeitzonen haben. Wenn ich die Zeitzone zu EST und GMT ändern möchte, was muss ich tun?


175
2017-08-31 18:19


Ursprung




Antworten:


Benutzen timedatectl

sudo timedatectl set-timezone <timeszone>

Beispiele:

  • Zeitzone als EST

    sudo timedatectl set-timezone EST
    
  • Zeitzone als UTC

    sudo timedatectl set-timezone UTC
    
  • Auflisten aller gültigen Zeitzonen

    timedatectl list-timezones
    

Dieser Befehl ist perfekt für Automatisierungsskripte, da keine benötigt wird Benutzerinteraktion im Vergleich zu der anderen gegebenen Antwort basierend auf dpkg-reconfigure tzdata.


203
2018-03-08 13:15



Kein Fan von +1 Kommentaren, aber ich setze hier einen, da dies für mich am besten funktioniert hat. Ich wollte ein einziges einzeiliges Kommandozeilen-Tool, um die Zeitzone zu ändern, anstatt ein ganzes Menü oder GUI-Programm zu starten (ich weiß nicht was) tzdata funktioniert, wie es funktioniert, aber ich muss nicht mit diesem einen Zeilenbefehl). Vielen Dank! - Phil Ryan
klappt wunderbar ;) - user332660
Interessanterweise macht es etwas anderes als TZData. Ich hatte ein Problem mit der Java-Zeit, die sich von der Systemzeit nach dem Anwenden eines Patches unterscheidet. Tzdata hat nicht daran gearbeitet, das Problem zu beheben, aber das hat es getan. - Daniel Bower
das hat nicht für mich funktioniert; aber die dpkg-reconfigure Hat den Trick gemacht. - Antti Haapala
@AnttiHaapala auf welchem ​​Betriebssystem & Version? - Jossef Harush


Folgendes funktioniert auch. Für GMT:

ln -sf /usr/share/zoneinfo/GMT /etc/localtime

Für EST:

ln -sf /usr/share/zoneinfo/EST /etc/localtime

23
2017-08-31 10:09



Ich denke, es wäre besser, eine der Stadtdateien als GMT oder EST zu verknüpfen, da sie dann die Sommerzeit verfolgen, während die Verknüpfung (z. B. GMT) die Systemzeit nicht ändert, wenn Sommerzeit in Kraft ist in deiner Stadt. z.B.: ln -sf /usr/share/zoneinfo/Europe/London /etc/localtime - Asfand Qazi


Als root musst du folgendes ausführen:

dpkg-reconfigure tzdata

Es sollte ein menübasiertes Tool gestartet werden, mit dem Sie die Zeitzone ändern können.


23
2017-08-31 19:41





Der einfachste Weg, vor allem zu einem Server, besteht darin, Zeitzonen aufzulisten:

timedatectl list-timezones

Und wählen Sie Ihre, zum Beispiel:

timedatectl set-timezone Europe/Athens

Das ist es! , :-)


10
2018-02-18 15:52





Um ein Programm mit einer anderen Zeitzoneneinstellung auszuführen, legen Sie die Option fest TZ Umgebungsvariable, z.B. Lauf TZ=Pacific/Kiritimati date um zu sehen, wie spät es auf der Weihnachtsinsel ist, oder export TZ=Pacific/Kiritimati die letzte Einstellung für eine Shell-Sitzung zu haben.


4
2017-09-01 00:04





Bearbeiten Sie die timezone Datei bei der /etc Ordner als:

Etc/GMT

Sie können das nächste Format verwenden:

Region "/" City 

Beispiel von /etc/timezone:

Europe/Athens

oder

Europe/Paris
Europe/London

Du kannst mit dem experimentieren: dpkg-reconfigure tzdata und überprüfe die Zeitzonendatei.

Sie müssen einen Neustart durchführen oder einen Dienst erneut starten (nicht den NTP-Dienst). Ich weiß nicht welche. Wenn jemand weiß, bitte teilen Sie mit uns. (Getestet auf Ubuntu 15.10 wird die Änderung sofort berücksichtigt)


3
2017-07-28 12:19





cp -p / usr / teilen / zoneinfo / US / Pazifik / etc / localtime

Ich empfehle AGAINST wie erwähnt von anderen. Wenn ein Skript versehentlich die Datei / etc / localtime überschreibt, überschreibt es die Pacific Timezone-Datei ... und es ist ein bisschen mühsam, sie zu ersetzen.

Kopieren Sie einfach die Pacific-Datei mit dem obigen Befehl über die localtime-Datei.


1
2017-07-18 20:04



Das hat wirklich für mich funktioniert. Ich denke, es gibt einen Fehler mit Docker, ansible (?). Timedatectl und dpkg-reconfigure tzdata fehlgeschlagen für mich. Nach dem Kopieren hat sich die Zeitzone von EST zu PDT geändert. - Sun