最新版はこちらです
VMware上でバーチャルにてLinuxを動かしているとntpdを使用しても一定期間後に時刻が狂ってくる?
しかも「ntpq -p」が一定時間後から不能に???
何故かと言うとCPU周波数が正常に捕らえられないことやLinux2.6カーネルからtimer.h内のdefine HZ値 が1000Hz になっており(2.4カーネルでは 100Hz )VM上では割り込めないということらしい。。。
いくつか解決方法がある、管理人がやっている方法が以下のとおり
(確認はCentOS5.2)
1.LinuxバーチャにVMware-Toolsをインスト
2.ntp設定はしておく「ntp.conf」
server ntp.nict.jp #など
3.起動時にLinux のカーネルオプションを設定する方法「/etc/grub.conf」内に
「clock=pit nosmp noapic nolapic」を追加
# kernel /vmlinuz-2.6.18-92.1.13.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
kernel /vmlinuz-2.6.18-92.1.13.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet clock=pit nosmp noapic nolapic
時計が早いときは、”clock=pit”
時計が遅いときは、”nosmp noapic nolapic”
両方入れても問題なし
4.バーチャOSを停止して「hoge.vmx」ファイル内に以下を追加
tools.syncTime = "TRUE"
これはホストOSの時刻をVMwareToolを使用の元バーチャOSの時刻を合わせるオプション
上記の設定で「ntpq -p」もまともに動いているみたいで、OK!