[System Environment] | |||||||||||||
仮想マシンの時刻同期機能を無効にする(Virtual PC編)
|
|||||||||||||
|
解説 |
Virtual PC 2004やVirtual PC 2007(以下まとめてVPC)、Virtual Server 2005(以下VS2005)上で実現される仮想マシン環境のシステム・クロック(時計)には、ホストOSのシステム・クロックと自動的に同期する機能が組み込まれている。この機能が有効になっていると、仮想マシンのシステム・クロックは常にホストOSのクロックと一致するように管理・制御される。そのため、ホストOSとゲストOSで時刻がずれたり、仮想マシンごとに時刻がずれたりするという問題は解消される。
だがこの自動的な時刻の同期機能は、わざと時間をずらして運用したい場合には不要なものである。例えばプログラム開発において、月末処理や期末処理などをテストする場合には、システム・クロックをわざと進めておき、特定の日時にプログラムが正しく実行されるかどうかを確認しなければならないからだ。また2000年問題のように、ある特定の日時になってもシステムが異常を起こさないかどうかを確認する場合にも、わざとクロックをずらしてテストする。だが自動的な時刻同期機能が有効になっていると、クロックをわざと進めておいても、すぐに(数秒〜十数秒程度)クロックが修正され、現在の時刻に戻されてしまう(デフォルトでは15秒ごとにずれていないかどうかがチェックされる)。
VPCの仮想マシン環境において、自動的な時刻同期機能を無効にするためには、「バーチャルマシン追加機能」をアンインストールするか、仮想マシンの構成ファイル(.VMCファイル)に対して特別な設定を行う必要がある。VS005の場合には、管理ツール上で簡単に設定を変更することができたが(TIPS「仮想マシンの時刻同期機能を無効にする(VS2005編)」参照)、VPCの場合は手動で構成ファイルを編集しなければならない。本TIPSでは、その方法について解説する。
操作方法 |
VPC上で仮想マシンを作成すると、仮想マシンの設定状態や構成情報を保存するために、「.VMCファイル(構成ファイル)」という設定ファイルが仮想マシンごとに作成される。このファイルは、デフォルトでは各ユーザーの「マイ ドキュメント\My Virtual Machines」フォルダ中に作成されるが、指定すれば別の場所に作成することも可能である。
この.VMCファイルはXML形式で記述されたテキスト・ファイルであり、文字コードとしてはUnicode(リトル・エンディアンのUTF-16)が使用されている。そのため、内容を編集するには、Unicodeをサポートしたメモ帳などを利用する(Windows 2000やWindows XP、Windows Server 2003、Windows Vistaなどのメモ帳はUnicodeに対応している)。メモ帳の[ファイル]−[開く]メニューで.VMCファイルを開いてもよいし、メモ帳を起動しておいてから、.VMCファイルをエクスプローラからドラッグ&ドロップしてもよい。
仮想マシンが停止している状態で.VMCファイルを開き、下の方へスクロールすると、ファイルの真中あたりに<integration><microsoft> …… </microsoft></integration>というセクションがある。
追加する前の.VMCファイルの例 | |||
.VMCファイルをメモ帳で開き、<integration> <microsoft>というセクションを探す。 | |||
|
このセクションの先頭に次のような要素を追加する。
<components> |
行の先頭の空白文字(インデント)は特に意味は持たないので、見やすくなるように適当に入れておけばよい(仮想マシンの設定を変更すると、このファイルはVPCによって上書きされるため、ユーザーがインデントしなくてもよい)。XPath形式でいうと、次のブール値をfalseに設定することになる。
preferences/integration/microsoft/components/host_time_sync/enabled |
追加した結果は次のようになっているはずである。
追加した後の.VMCファイルの例 | |||
自動的な時刻同期機能を無効にする設定を追加したところ。 | |||
|
これで設定は終了である。仮想マシンを起動し、システム・クロックを変更しても、自動的に同期されないことを確認しておこう。
注意:Virtual Server 2005の構成ファイルとは互換性がない
Virtual PC 2004/2007におけるこの設定は、VS2005における設定(TIPS「仮想マシンの時刻同期機能を無効にする(VS2005編)」参照)とは、互換性はない。.VMCファイルにおける設定は似てはいるが、場所が少し異なっている。そのため、VS2005で時刻同期を無効にしておき、その.VMCファイル(と.VHDファイル)をVPC環境へコピーしてきても、時刻同期は無効にはならない。VPC→VS2005もしくはVS2005→VPCという具合に.VMCファイルをコピーした場合は、設定をもう一度行う必要がある。なおVirtual PC 2004とVirtual PC 2007では、.VMCファイルに互換性があるので、そのまま利用できる。ただし念のため、VPC2004からVPC2007にアップグレードした場合は、時刻同期が無効になっているかどうかを確認してから、利用していただきたい。参考のために、VS2005の.VMCファイルにおける設定例を次に挙げておく。
注意:外部時刻サーバとの同期を無効にすること
なおTIPS「仮想マシンの時刻同期機能を無効にする(VS2005編)」でも述べているように、仮想マシンにおける自動的な時刻同期機能を無効にしても、OSによっては外部の時刻サーバと定期的に同期を取るようになっているものがある。必要に応じて、そのような同期設定も無効にしていただきたい(詳しくは先のTIPSを参照のこと)。
関連記事(Windows Server Insider) | ||
Windows TIPS:仮想マシンの時刻同期機能を無効にする(VS2005編) | ||
Windows TIPS:NTPでネットワーク全体のマシンの時刻を合わせる | ||
Windows TIPS:sysprepで環境複製用のマスタ・イメージを作成する | ||
Windows TIPS:仮想マシンにおける差分ディスクと復元ディスクの違い | ||
Windows TIPS:物理ディスクの内容を仮想ディスク・ファイルに変換する | ||
Windows TIPS:仮想ハードディスクのデフラグに注意 | ||
製品レビュー:デスクトップOSのマイグレーションを支援するVirtual PC 2004 | ||
製品レビュー:サーバ・システムの統合/マイグレーションを推進するVirtual Server 2005 | ||
[運用]Windowsネットワーク時刻同期の基礎とノウハウ | ||
この記事と関連性の高い別の記事
- 仮想マシンの時刻同期機能を無効にする(VS2005編)(TIPS)
- 仮想マシンの時刻同期機能を無効にする(Hyper-V編)(TIPS)
- WindowsでHyper-Vの仮想マシンを作成する(TIPS)
- Windows Virtual PCで新しい仮想マシンを作成する(TIPS)
- NTPでネットワーク全体のマシンの時刻を合わせる(TIPS)
このリストは、デジタルアドバンテージが開発した自動関連記事探索システム Jigsaw(ジグソー) により自動抽出したものです。
更新履歴 | |
|
「Windows TIPS」 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|