ケイマン諸島のタイムゾーン情報が正しくありません。
しかし、ケイマン諸島政府は、米国/東部標準時と効果的に一致する夏時間を実現するために時間帯の変更を検討しています。しかし、このようなことは起こりませんでした。
したがって、今週末(2016年3月13日)、US / ETで夏時間が始まりますが、ケイマン諸島がまだ夏時間を開始していない場合、ケイマン諸島の時間は1時間遅れます。
解決策として、タイムゾーンを「Cayman」から「Jamaica」に変更する必要があります。
sudo mv /etc/localtime /etc/localtime.bak
sudo ln -s /usr/share/zoneinfo/Jamaica /etc/localtime
これは明らかに永久的な解決策ではありません。
- この問題を永久に解決するにはどうすればよいですか?
- このバグをどのように/誰に報告しますか?
答え1
結局のところ、America / Caymanは今年の夏時間を遵守しません。私たちの疑いを裏返します。 (マットジョンソンに感謝します。)
今やるべきことは、ディストリビューションのタイムゾーンデータを更新することだけです。ディストリビューションのバグトラッカーにバグが送信されたことを確認し、必要に応じてバグを送信できます。
ダウンロードも可能です更新されたタルボールこれを使用してゾーン情報ファイルを更新します。
答え2
全員が使用するタイムゾーンデータベースIANAが管理。彼らはデータベースを更新しました。最善の解決策は、システムをアップグレードすることです。ほとんどのディストリビューションは、タイムゾーンデータベースが変更されたときに更新されたパッケージを提供する必要があります。
何らかの理由でシステムを簡単に更新して最新バージョンのタイムゾーンデータベースをインストールできない場合は、次のことができます。TZ
環境変数によるタイムゾーン宣言、どの種類のインストールも必要ないという利点がありますが、明示的な設定が必要なため、複数の時間帯で実行されるアプリケーションには役に立たないという欠点があります。
export TZ='EST+5'
Glibcを使用するシステム(つまり、組み込まれていないLinux)のもう1つのアプローチは、最新のタイムゾーンデータベースを検索し(つまり、前にコロンがあるファイルパス)TZ
に設定することです。:/path/to/zoneinfo/American/Cayman
これは、タイムゾーンデータベースが認識するすべての履歴変更を認識できるという利点がありますが、直接形式は現在のルールのみを認識しているため、記録時間エラーが発生する可能性があります。