これを修正する方法がわかりません。私の /etc/TIMEZONE ファイルでは、TZ 変数に正しい値 (カナダ/東部) がありますが、それでも -1 時間のラグが表示されています。他にどこを見ればいいですか?
4 に答える
ハードウェアクロックが何であるかを確認する必要があります。これを行うことをお勧めします:
- UTC 時刻を正しく設定してください。つまり (例では午前 5 時):
$ date -u -s "05:00"
2010 年 4 月 29 日木曜日 05:00:00 AM UTC
- それに応じてハードウェア クロックを設定します (SPARC の場合は tod、x86 の場合は rtc)。
$ rtc -c ('-c' 引数は DST を正しく設定します)
- 日付をもう一度確認します。
$日付
2010 年 4 月 29 日木曜日 02:00:11 AM ART
よろしく、
レアンドロ。
実際にホストにログインすると、シェル セッションでどのタイムゾーンが設定されますか?
シェル セッションのタイムゾーンが /etc/TIMEZONE と一致しない場合は、タイムゾーンの変更を有効にするためにおそらく再起動する必要があります。
シェル セッションのタイムゾーンは正しいが、実際の時刻が間違っている場合は、システム クロックがオフになっているか、タイムゾーン定義ファイルが何らかの形で間違っています。「date -u」を実行して UTC 時刻を取得できます。これは、実際の時計が間違っているかどうかを判断するのに役立ちます。
それが編集する正しいファイルです。他に必要な手順は、再起動だけです。再起動が必要な理由は、init
プロセスが開始時に TZ の値を読み取り、他のすべてのプロセスがこの値を継承するためです。私の知る限り、完全な再起動を行わずに変更を有効にする方法はありません。
また、/etc/TIMEZONE
が にシンボリック リンクされていることを確認してください/etc/default/init
。例えば:
[root@server:/etc]ls -l /etc/ | grep TIMEZONE
lrwxrwxrwx 1 root root 14 Jul 7 2008 TIMEZONE -> ./default/init