Wie ändere ich die Zeitzone in Centos 6.2?

32

Hier ist die Ausgabe meines dateBefehls:

[root@r1304 ~]# date
Wed Apr 18 15:43:28 GST 2012

Ich möchte die Zeitzone des Standardsystems auf Asia / Dubai ändern. Ich bin einem Tutorial gefolgt und habe folgendes gemacht:

ln -sf /usr/share/zoneinfo/Asia/Dubai /etc/localtime

Aber ohne Wirkung. Scheint, dass dies in CentOS 6 anders gemacht wird. Wie ändere ich die Zeitzone?

Temnovit
quelle
Dies sollte nicht so komplex sein ...
ewwhite

Antworten:

41

Es sieht so aus, als ob in CentOS 6.2 keine Hwclock-Zeile enthalten ist /etc/rc.sysinit, Änderungen /etc/sysconfig/clockwerden also nicht funktionieren.

versuchen tzselectoder verwenden ln -s /usr/share/zoneinfo/xxxx /etc/localtime

Caojun
quelle
5
Danke, das hat bei mir geklappt. Meine Lösung war rm /etc/localtime && ln -s /usr/share/zoneinfo/America/New_York /etc/localtime.
Banjer
Was ist besser dafür zu verwenden - lnoder cp?
XåpplI'-I0llwlg'I -
In diesem Fall ist die Verwendung eines Symlinks wahrscheinlich besser als das Kopieren der Datei
JDS
2
Tun Sie dies, aber stellen Sie auch sicher, dass Sie das /etc/sysconfig/clockmit der richtigen Zeitzone aktualisieren, da Aktualisierungen die Ortszeit auf das zurücksetzen können, was in der Uhr steht.
Justin
ln -sist besser als, cpweil, wenn das tzdata-Paket die Zonendatei für Ihre Region aktualisiert, Sie die Änderungen sehen, ohne sie erneut kopieren zu müssen.
David Purdue
9

Verwenden Sie zuerst tzselect, um herauszufinden, welche Zeitzone Sie haben. Die endgültige Ausgabe von tzselect wird ungefähr so ​​aussehen:

Here is that TZ value again, this time on standard output so that you
can use the /usr/bin/tzselect command in shell scripts:
America/New_York

Die allerletzte Zeile ist der Name Ihrer zoneinfo-Datei.

Erstellen Sie nun einen Symlink von / etc / localtime zur richtigen zoneinfo-Datei, zB:

ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime 

Das Flag -f wird benötigt, um die vorhandene / etc / localtime zu überschreiben.

Hinweis: Wenn Sie tzselect ausführen, wird nichts auf Ihrem System berührt, sondern nur Text ausgegeben. Das "oder" in der Antwort von caojun ist irreführend. Sie müssen tzselect AND ln verwenden. Auf der Manpage von tzselect: "[tzselect] gibt die resultierende Zeitzonenbeschreibung als Standardausgabe aus".

Luca Gibelli
quelle
4

Bearbeiten Sie die Datei /etc/sysconfig/clockentsprechend Ihren Anforderungen.

pkhamre
quelle
1
Das ist keine vollständige Lösung. Sie müssen den Zeitzonenversatz einstellen.
ewwhite
5
Obwohl dies keine vollständige Antwort ist, ist dieser Schritt sehr wichtig. Ohne Aktualisierung von sysconfig / clock (etwas, das wir beim Ändern der Zeitzonen nicht getan haben) ... Wenn Sie bestimmte yum-Aktualisierungen / -Installationen ausführen (nicht sicher, welche), wird die Zeitzone auf die in sysconfig / clock angegebene zurückgesetzt ... unabhängig davon, welche / etc / localtime wurde durch ersetzt. Also ja ... stellen Sie sicher, dass Sie sysconfig / clock aktualisieren, damit die Zeitzone geändert wird.
anonym-ein
1
Ein Yum-Update kann eine Katastrophe verursachen, wenn / etc / localtime und / etc / sysconfig / clock auf zwei verschiedene Zeitzonen verweisen. Das Aktualisieren von MySQL zum Beispiel kann eine schöne Zeitverschiebung in allen Daten verursachen.
Elbuild
2

Man sollte rsyslogd nach dem Ändern der Zeitzone neu starten, damit die neue Zeitzone in den Protokollen wiedergegeben wird.

Tun Sie dies mit: service rsyslog restart

Ed Greenberg
quelle
1

Einfaches Tutorial, versuchen Sie dies ..

[root@dlp ~]# vi /etc/sysconfig/clock

# change to your location
ZONE="Asia/Tokyo"

[root@dlp ~]# source /etc/sysconfig/clock # reload
# copy your timezone file under the "/usr/share/zoneinfo" like follows
[root@dlp ~]# cp -p /usr/share/zoneinfo
rail_id
quelle
Dies funktionierte für mich, andere Optionen nicht
Bokw
1
Wenn diese Anweisungen überhaupt funktionieren, wäre es gut zu erklären, warum ... Ich sehe keinen Grund, warum die Beschaffung /etc/sysconfig/clockAuswirkungen auf das nachfolgende cpProgramm (oder in der Tat auf jedes nachfolgende Programm) haben würde
1.