[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:00524] [Q] clock(8) command say wrong time
- From: Masahiro Tanaka <tanaka@xxxxxxxxxxxxx>
- Subject: [debian-users:00524] [Q] clock(8) command say wrong time
- Date: Thu, 01 May 1997 02:43:27 +0900
- X-ml-count: 00524
- X-ml-driver: CMLD (Version 2.4.1-beta)
- X-ml-name: debian-users
- Message-id: <199704301746.CAA08626@xxxxxxxxxxxxxxxxxx>
- X-mailer: Mew version 1.69 on Emacs 19.34.1 / Mule 2.3
こんにちは。たなかです。
ゴールデンウィークで時間がとれたので、
自宅のメインのマシンにも晴れて debian をインストールしました。
まず、結論と言うか、結果から先に書きますと、
date, clock, timezone からみの所で悩んでます。
# 長文になるかも知れません。お許しください。
# また、現在自分自身が熱くなってます。
# まとまりの無い文になるかも知れません。
1) clock の動作がおかしい。時刻合わせができない。
まず、システム日付、CMOSクロックを読みだしてみると、
monkey:/home/tanaka# date ; clock -u -r
Thu May 1 01:13:43 JST 1997
Thu May 1 01:13:44 1997
と、なります。システム日付、CMOSクロックは
ほぼあってると思われます。
次に、システム日付を CMOSに書き込んで再度読みだしてみます。
monkey:/home/tanaka# clock -u -w ; date ; clock -u -r
Thu May 1 01:17:57 JST 1997
Thu May 1 01:17:38 1997
と、なり、date の出力と clock -r の出力に 約 20 sec程の
誤差が生じます。(clockの方が遅れている)
はて?とおもい、clock -w (CMOSへの書き込み)と、
clock -r (CMOSからの読みだし)のどちらで誤差が発生しているのか
おもい、-u オプション(UTC <-> ローカルタイムの変換)を
外してみると、
monkey:/home/tanaka# date ; clock -r
Thu May 1 01:21:37 JST 1997
Wed Apr 30 16:21:38 1997
と、なるので、-u を付けての読みだし時に誤差が生じるようです。
(-u なしだと、clock の出力は date の 9 時間前を指しているので。)
-u を付けての動作がどうも怪しいようで、-s (CMOSから読みだし、
カーネル時刻にセット)を実行すると、時間が戻ってしまいます。
monkey:/home/tanaka# date ; clock -u -s ; date
Thu May 1 01:31:51 JST 1997
Thu May 1 01:31:32 JST 1997
同様に /etc/init.d/boot で実行される clock -a $GMT の所でも
時刻がずれてしまっています。
clock -u -w をやると、どうも怪しいのですが、他の所でも
同様な現象は出てませんか?
私の所では debian rexが2台、今回インストールした bo が
1台あるのですが、その debian bo でしか現象が出ません。
この bo マシンですが、以前は slack で使ってまして、
slack では 問題無かったので、ハードの違いではなく、
bo 自身か 私のインストール or 設定が おかしいのでは?
と思っているのですが。
2) UTC/GMT を 使わなければいいじゃん。と思い、
/etc/init.d/bootの GMT変数を外して、
clock コマンドの -u オプションを使わないと、上記(1)の
象は無くなります。
ところが、今回、設定で悩んでいるマシン(ホスト名:monkey)で、
dateコマンド、隣にある rex のマシンで netdate コマンドを
同時に実行すると、(同時にリターンキーを押すだけ)
tanaka@monkey:~>date <--- 問題のマシンで date を実行
Thu May 1 01:51:00 JST 1997
^^^^^^^^
tanaka@funky:~>netdate monkey <-- 同時に隣のマシンでnetdate してみる
netdate: settimeofday: Operation not permitted
monkey -47.955 Thu May 1 01:51:20.000
^^^^^^^^
はたまた、20 秒程の誤差があるのです。
# settimeofday のエラーは su してないからです。
なんででしょう?
何がどう影響しているのか分からないので、私の環境&やったことを
ざっと書きます。
インストールした物
debian bo
# 4/23 から 4/24 ごろに at-m さんから FTP したもの
# お世話になってます。& ありがとうございます > at-m さま
1997/04/04 の disks-386 の イメージから クリアインストール
hammはちょっとまだ?って思ったので、
unstable と development の symlink を bo に はり直して、
dselectを行いました。
dselect の Access の Use unreleased development distribution ?
は、Y にしました。
タイムゾーン関係は Asia/Tokyo で、GMT を指定しました。
なお、他のOSは入れてません
dpkg -l も出力も添付しようかと思いましたが、既に長くなっている
かつ、何が悪いのか分からないので、付けませんでした。
行った事。
カーネルは、インストール時のオリジナルのもの、(2.0.29),
自分でコンパイルした 2.0.29, 2.0.30
APM周りのコードが悪さしてるの?とおもい、外してみましたが、
ダメでした。
clock コマンドを strace してみると、/dev/rtc をアクセスしに
いっているので、RTC をカーネルに組み込んで、 /dev/rtc を
mknod してみましたが、現象は変わりません。
/etc/adjtime を消したり、内容を"0.0 0 0.0 "に変えてみましたが、
ダメでした。
tzconfig で 再度 タイムゾーンの設定をしなおしたが、だめ。
(よく分からないながら、適当に) adjtimex をしてもだめ。
タイムゾーンを Asia/Tokyoから Etc/GMT+9 に変えてもだめ。
ソースコードは追ってません。
-----------------------------------------------
たなかまさひろ/Masahiro TANAKA
tanaka@xxxxxxxxxxxxxxx(Office)
tanaka@xxxxxxxxxxxxx (Home)