私は自分の正気のためにプログラムが現地時間でログインできるようにしようとしています。
タイムゾーンを次のように更新しました:
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
この方法を試してください:
$ Sudo cp /usr/share/zoneinfo/Australia/Adelaide /etc/localtime
これを達成するための最良の方法は、以下を実行することです。
Sudo dpkg-reconfigure tzdata