このブログ記事「How To:2 Methods To Change TimeZone in Linux」をご覧ください。
Red Hatディストリビューション
Red Hatなどのディストリビューションを使用している場合、ファイルをコピーする方法はほとんど受け入れられます。
注:ディストリビューションに依存しないソリューションを探している場合、これはDebianでも機能しますが、Debianマシンにのみ関心がある場合は、以下の簡単なアプローチがあります。
$ ls /usr/share/zoneinfo/
Africa/ CET Etc/ Hongkong Kwajalein Pacific/ ROK zone.tab
America/ Chile/ Europe/ HST Libya Poland Singapore Zulu
Antarctica/ CST6CDT GB Iceland MET Portugal Turkey
Arctic/ Cuba GB-Eire Indian/ Mexico/ posix/ UCT
Asia/ EET GMT Iran MST posixrules Universal
Atlantic/ Egypt GMT0 iso3166.tab MST7MDT PRC US/
Australia/ Eire GMT-0 Israel Navajo PST8PDT UTC
Brazil/ EST GMT+0 Jamaica NZ right/ WET
Canada/ EST5EDT Greenwich Japan NZ-CHAT ROC W-SU
ただし、コピーするのではなく、リンクすることをお勧めします。
$ sudo unlink /etc/localtime
$ sudo ln -s /usr/share/zoneinfo/Etc/GMT+6 /etc/localtime
現在、日付は異なるタイムゾーンを示しています。
$ date -u
Thu Jan 23 05:40:31 UTC 2014
$ date
Wed Jan 22 23:40:38 GMT+6 2014
Ubuntu / Debianディストリビューション
これらのディストリビューションのタイムゾーンを変更するには、次のコマンドを使用できます。
$ sudo dpkg-reconfigure tzdata
$ sudo dpkg-reconfigure tzdata
Current default time zone: 'Etc/GMT-6'
Local time is now: Thu Jan 23 11:52:16 GMT-6 2014.
Universal Time is now: Thu Jan 23 05:52:16 UTC 2014.
今、それをチェックアウトするとき:
$ date -u
Thu Jan 23 05:53:32 UTC 2014
$ date
Thu Jan 23 11:53:33 GMT-6 2014
注: Ubuntu 14.04以降には、1つのコマンドでこのオプションがあります(ソース:Ubuntuに確認- ターミナルからタイムゾーンを設定):
$ sudo timedatectl set-timezone Etc/GMT-6
「Etc / GMT + 6」の使用について
SOに関する@MattJohnsonの回答からの抜粋
のようなゾーンEtc/GMT+6
は、POSIX標準との後方互換性のために意図的に逆にされています。このファイルのコメントを参照してください。
これらのゾーンを使用する必要はほとんどありません。代わりに、America/New_York
またはEurope/London
などの完全に名前が付けられたタイムゾーンを使用する必要があります。こちらのリストを参照してください。
echo $TZ
ますか(空の行以外のものが生成されますか)?また/etc/localtime
、実際のファイルをコピーするのではなく、へのシンボリックリンクを作成することをお勧めします(そうすれば、zoneinfoデータが変更される可能性が高く、ほとんど変更されない場合に安全です)。