Debian'da saat dilimini değiştirmek UTC'de Yerel Saati koruyor


27

Kendi akıl sağlığım için programları yerel saatte giriş yapmaya çalışıyorum.

Saat dilimimi şu şekilde güncelledim:

 dpkg-reconfigure tzdata

Ancak bu komutun sonucu:

Current default time zone: 'Australia/Adelaide'
Local time is now:      Mon May 20 03:09:52 UTC 2013.
Universal Time is now:  Mon May 20 03:09:52 UTC 2013.

Uyarı UTC içindeLocal time

Bunun olmasının bir nedeni var mı?

Çok fazla Googling yaptım ama sorunum hepsinden farklı görünüyor :(

İşte bazı detaylar:

# cat /etc/timezone
Australia/Adelaide

# date
Mon May 20 03:41:06 UTC 2013

# export TZ='Australia/Adelaide'; date
Mon May 20 13:16:11 CST 2013

Ayarlama export TZ='Australia/Adelaide';benim de /etc/profilemarkaları datebir bash oturumunda varsayılan olarak çalışması ancak (hizmetini başlatmadan sonra) sistem günlüğü tarihini değiştirmez

Düzenle:

# ls -l /etc/localtime
lrwxrwxrwx 1 root root 20 May 10 14:48 /etc/localtime -> /usr/share/zoneinfo/

# ls /etc/localtime/
Adelaide    Chile    GMT        Japan      PST8PDT    Universal
Africa      Cuba     GMT+0      Kwajalein  Pacific    W-SU
America     EET      GMT-0      Libya      Poland     WET
Antarctica  EST      GMT0       MET        Portugal   Zulu
Arctic      EST5EDT  Greenwich  MST        ROC        iso3166.tab
Asia        Egypt    HST        MST7MDT    ROK        localtime
Atlantic    Eire     Hongkong   Mexico     Singapore  localtime.dpkg-new
Australia   Etc      Iceland    Mideast    SystemV    posix
Brazil      Europe   Indian     NZ         Turkey     posixrules
CET         Factory  Iran       NZ-CHAT    UCT        right
CST6CDT     GB       Israel     Navajo     US         zone.tab
Canada      GB-Eire  Jamaica    PRC        UTC

Cevap:

Sıkışma sayesinde çalıştım. Bazı nedenlerden dolayı / etc / localtime'yi bir link olarak görmüştüm ... IT Guy burada sunucuyu Anahtar Teslim 12 kullanarak kurdu, bu yüzden belki de sorun buydu.

# mv /etc/localtime /etc/localtime.old
# cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtime
# date
Thu May 23 09:36:17 CST 2013

Yanıtlar:


22

Bu yolu dene:

$ sudo cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtime

cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtimedit benim için bir şey değişmez :( yerel saat hala UTC, ben eklemiş Ne ls -l /etc/localtimede söylüyor.

2
Neden orada sembolik bağlantı kurdun? Bir dosyayı kopyalamanız gerekir ... "rm / etc / localtime" sembolünü kaldırarak düzeltin ve "cp / usr / share / zoneinfo / Australia / Adelaide / etc / localtime" ;-)

symlink varsayılan olarak oradaydı .. belki anahtar teslimi bir şey ya da bir şey. mv /etc/localtime /etc/localtime.old cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtimesorunu düzeltti :) Teşekkürler!
— complistic

2
Kopyalamanın yanlış olduğunu düşünüyorum. Zoneinfo dosyası değişirse ne olur? Eğer / etc / localtime bir link ise (Debian'da), başka bir zoneinfo dosyasının üzerine yazarsınız.
— XTF

32

Bence bunu başarmanın en iyi yolu, şu şekilde uygulamaktır:

sudo dpkg-reconfigure tzdata

+1, bu kesinlikle debian sistemlerde yapmanın doğru yoludur.
— jhauris

2
Evet, dpkg-reconfigure tzdatailk denediğim şeydi. Benim için işe yaramadı çünkü /etc/localtimebir nedenden dolayı bir sembolik bağlantı vardı. Her iki yol da düzeltildikten sonra saat dilimini doğru şekilde değiştirir.
— tamamlayıcı

Evet! ppl öyle görünüyor, ama liman işçisi konteynırında debian kullanıyorum .. öyleyse ne?
— süper kahraman

-1

"Ağ Saati Protokolü" nü kullanarak saati otomatik olarak ayarlayın. Ntp'yi debian'a yüklemek için aşağıdaki komutu kullanın.

$ sudo apt-get install ntp

Detaylı bilgi için lütfen https://wiki.debian.org/DateTime belgelerini okuyun.


Buradaki adımları vermek ve bağlantıyı daha fazla ayrıntı için referans olarak kullanmak daha iyidir. Bu şekilde, bağlantı geçersiz olduğunda cevabınız tüm değerlerini kaybetmez.
— Anthon,
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.