Centos 6.2'de zaman dilimini nasıl değiştiririm?


32

İşte emrimin çıktısı date:

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

Varsayılan sistem saat dilimini Asya / Dubai olarak değiştirmek istiyorum. Bir öğreticiyi takip ettim ve bunu yaptım:

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

Ancak etkisi yok. Bunun CentOS 6'da farklı şekilde yapıldığı görülüyor. Saat dilimini nasıl değiştiririm?


Bu o kadar karmaşık olmamalıydı ...
yine de

Yanıtlar:


41

Görünüşe göre, CentOS 6.2'nin içinde herhangi bir hwclock hattı yok /etc/rc.sysinit, bu yüzden değişiklik /etc/sysconfig/clockişe yaramayacak.

dene tzselectya da kullan ln -s /usr/share/zoneinfo/xxxx /etc/localtime


5
Teşekkürler, bu benim için çalıştı. Benim çözümüm öyleydi rm /etc/localtime && ln -s /usr/share/zoneinfo/America/New_York /etc/localtime.
Banjer

Bunun için kullanmak daha iyi - lnya da cp?
Xåppl''-I0llwlg'I -

Bu durumda, bir sembolik bağlantı kullanmak dosyayı kopyalamaktan daha iyidir
JDS

2
Bunu yapın, ancak güncellemelerin /etc/sysconfig/clockyerel saati zaman içinde olana göre değiştirebileceği ve doğru şekilde değiştireceği için doğru zaman dilimiyle güncelleme yaptığınızdan emin olun .
Justin

ln -scptzdata paketi bölgenize ait bölge dosyasını güncellerse, değişiklikleri bir daha kopyalamak zorunda kalmadan göreceğinizden daha iyidir .
David Purdue

9

Hangi saat diliminin hangisi olduğunu bulmak için ilk önce tzselect'i kullanın. Tzselect'in son çıktısı şunun gibi olacaktır:

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

Son satır, zoneinfo dosyanızın adıdır.

Şimdi / etc / localtime 'den doğru zoneinfo dosyasına bir sembolik bağlantı oluşturun, örneğin:

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

-F bayrağı, mevcut / etc / localtime dosyasının üzerine yazmak için gereklidir.

Not: tzselect'i çalıştırmak sisteminizde hiçbir şeye dokunmaz, sadece bir miktar metin çıkarır. Caojun tarafından cevapta "veya" yanıltıcıdır. Tzselect AND ln kullanmalısınız. Tzselect manpage sayfasından: "[tzselect], elde edilen saat dilimi tanımını standart çıktıya verir".


4

Dosyayı /etc/sysconfig/clockihtiyaçlarınıza göre düzenleyin.


1
Bu tam bir çözüm değil. Saat dilimini ofset ayarlamanız gerekir.
ewwhite

5
Bu tam bir cevap olmasa da, bu adım oldukça önemlidir. sysconfig / clock güncellemesi yapmadan (saat dilimlerini değiştirirken yapmadığımız bir şey) ... bazı yum güncellemelerini / kurulumlarını (hangileri olduğundan emin olmazken) yapmak, saat diliminin sysconfig / clock içinde listelenen öğeye geri dönmesine neden olur ... / etc / localtime ile değiştirildi. yani evet ... saat diliminizi değiştirmek için sysconfig / clock komutunu güncellediğinizden emin olun.
anonim-bir

1
Yum güncellemesi, / etc / localtime ve / etc / sysconfig / clock noktasının iki farklı saat dilimine gelmesi durumunda felakete neden olabilir. Örneğin, mysql'i güncellemek, tüm tarihlerde güzel bir zaman kaymasına neden olabilir.
elbuild

2

Saat dilimini değiştirdikten sonra yeni saat diliminin kayıtlara yansıtılması için rsyslogd yeniden başlatılmalıdır.

Şunlarla yapın: service rsyslog restart


1

Basit öğretici, bunu deneyin ..

[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

bu benim için çalıştı, diğer seçenekler yoktu
Bokw

1
Bu talimatlar hiç işe yaramazsa, nedenini açıklamak iyi olur ... Kaynak kullanımının /etc/sysconfig/clocktakip eden cpprogram üzerinde (veya aslında herhangi bir program üzerinde) herhangi bir etkisinin olmasının bir nedeni göremiyorum
offby1
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.