web-dev-qa-db-ja.com

Debianでタイムゾーンを変更すると、現地時間はUTCのままになります

私は自分の正気のためにプログラムが現地時間でログインできるようにしようとしています。

タイムゾーンを次のように更新しました:

 dpkg-reconfigure tzdata

しかし、そのコマンドの結果は次のとおりです。

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.

Local timeの-​​[〜#〜] utc [〜#〜]に注意してください

これが理由である可能性がある理由は何ですか?

私はグーグルをたくさんやったが、私の問題はそれらすべてとは異なるようです:(

ここにいくつかの詳細があります:

# 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

export TZ='Australia/Adelaide';/etc/profileを設定すると、デフォルトではbashセッションでdateが機能しますが、システムログの日付は変更されません(サービスの再起動後)。

編集:

# 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

回答:

ジャムズのおかげで解決しました。何らかの理由で/ etc/localtimeをシンボリックリンクとして使用していました...ここのIT担当者は、ターンキー12を使用してサーバーをセットアップしたので、それが問題だったのかもしれません。

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

この方法を試してください:

$ Sudo cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtime
22
jamzed

これを達成するための最良の方法は、以下を実行することです。

Sudo dpkg-reconfigure tzdata
32
Dimitrios