VMwareでLinuxの時間がずれるのをなんとかする(時刻同期)

まずはここを参考にLinuxのゲストOSで時計の進むスピードが狂うのをなんとかしときます。

さらにゲストOSをサスペンドしているとOS上の時計もサスペンドされるので、どんどんゲストOSの時計が狂ってきます。そういうときはntpとcronを使って時刻同期をします。

最初はntpdのサービスを起動して時刻同期しようと思いましたが、全く時刻同期してくれないので、cronでntpdateを実行することにしました。
(2008/08/05追記 NTPサーバのポートが開いてないのが原因でした)

crontabに次のように設定します。環境はCentOS
$ vi /etc/crontab

*/3 * * * * root ntpdate 192.168.0.19

これは3分ごとにLAN内のNTPサーバと時刻同期をします。

外部のNTPサーバに短い間隔で問い合わせを行うと迷惑になるのでLAN内にNTPサーバを構築しましょう。ここを参考に。

あとntpdが起動しているとntpdateできないので止めときましょう。
$ /etc/rc.d/init.d/ntpd stop
$ chkconfig ntpd off

<2009/01/19 追記>
VMware Toolsをインストールしても時刻同期してくれる。インストールの仕方はこの記事を参照。コメントで指摘があったので追記。

<2009/08/24 追記>
メールサーバーの設定をやっていて気付いた。cronが動くたびにrootにメール送信されるとうざい。ここでも書いたけど/etc/crontabを編集して
MAILTO=””
にする。

<2009/09/01 追記>
crontabに直接書くのはスマートでないので、/etc/cron.d/ディレクトリに次のような設定ファイルを作成して対応する。

# vi /etc/cron.d/ntp

#
# cron-jobs for ntp
#

MAILTO=""

*/3 * * * * root /usr/sbin/ntpdate 192.168.0.19

コメント

  1. VMware Toolsをインストールしているとサスペンドからレジュームした際に自動的に時刻が調整されるように感じます。スナップショットに戻った際も同じでした。

    返信削除
  2. cronで頑張るよりVMware Toolsをインストールした方がいいのかもしれないですね。コメントありがとうございます。

    返信削除
  3. 仮想な背中というHPは参考になります。
    ゲストのクロックについてPITとか細かく触れていてわかりやすいです。

    返信削除
  4. コメントありがとうございます。
    VMwareホストと仮想マシンとの通信方法などマニアックなことをやろうと思ったときに参考になりそうです。

    返信削除

コメントを投稿

このブログの人気の投稿

【.NET】DataGridViewを選択した際に背景色を変更しない

【PostgreSQL】ROWNUMのように行番号(現在行)を取得するROW_NUMBER

Can't open PID file /var/run/nginx.pid (yet?) after start: Too many levels of symbolic links