3 10月, 2008
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!
1 7月, 2008
VMwareのゲストOSをコピーして2つ同時に立ち上げると?
あら不思議?ネットワークにどちらかが接続できなくなる。
これはVM系アプリ全般に存在するコピー後の処理が必要だからなのだぁ(バカボンか、^ ^;)
別にNat処理がうまくいっていないとかじゃなく、ネットワークカードのMACアドレスが同一のため
どちらか一方しかネットワーク上に存在できない!って状態になっている
リアルのNICであればチップにMACアドレスは埋め込まれているので気にすることはないが
VMはUUID(ホストのリアルNICのMACアドレスを元に生成するID、ActiveXなどレジストするときにも使用している)から
MACアドレスを生成していて、コピーによって本来存在してはいけない同一アドレスが存在してしまうと
いう、ネットワーク内にとっては?な状態になっているので「hogehoge.vmx」ファイルをエディタで開き
以下の箇所を修正すること!
uuid.bios = "56 4d b1 36 c4 da e4 db-16 69 40 4d 87 ff ff ff"
ethernet0.generatedAddress = "00:0c:29:ff:ff:ff"
「ff:ff:ff」の16進数部分を「ff:ff:f0」などに変更してあげる
ちなみにNIC製作会社に固定で割り振られているため、上位3バイトは絶対にいじらないこと!
(いじっても良いが、俺は知らん)
もちろん他にもVM上にNICを生成している場合はそれもやること!
P.S UUIDも究極にはダブル可能性がある・・・もちろん気が遠くなるくらいの確率だが♪
27 9月, 2007
VMwareでゲストOSを複製して使用するときWindows系OSの場合SIDの変更が必要になりますので
これを行わないとドメイン管理などで名前のバッティングが起こりIPやコンピュータ名の取得ができなくなります。
注意!この他にもhoge.vmx内の「uuid.bios」なども変更が必要!
VMwareから拝借↓方法は
質問:
Windows 2000/XP/2003のマシンを複製し、同一のネットワーク上で同時に利用する際の問題点を教えてください。
回答:
WindowsNT系OSでは、コンピュータ名とは別に、内部には「SID(Security ID)」と呼ばれる固有の数値情報を持っており、ドメインに参加している場合などにこのSIDを使ってコンピュータを識別しています。そのため、コンピュータ名の変更を行ってもSIDが同じ場合、SIDの重複が発生します。
SIDの重複を解消する方法といたしまして、Windowsに用意されております「sysprep」ツールを利用して頂く必要があります。
具体的な作業方法は以下の通りです。
Windows XP及び2003の場合
1.ゲストOSにAdministratorでログオンします。
2.Cドライブ内にsysprepフォルダを作成し、OSのインストールCDのDEPLOY.CAB内を全てコピーします。
※sysprepはSUPPORT\TOOLS\DEPLOY.CAB内に存在します。
3.手順2で作成したsysprepフォルダ内のsysprep.exeをクリックします。
4.「システム準備ツール」が表示されますので、画面内に表示されております。 「再シール」をクリックします。(再シールを選択して頂きますと、ゲストOSは自動的にシャットダウンされます。)
5.再度ゲストOSを起動して頂きますと、OSインストーラーのユーザ名及び、会社名の入力を行う画面より、開始されます。このタイミングでSIDが変更されます。
6.以降は通常のインストーラーと同様の作業を実施します。
7.管理情報が重複しなくなることをご確認願います。
※省力化のため、sysprepの「再シール」を実施した直後のデータを複製することをおすすめします。
詳細に関しましては、以下のマイクロソフトの技術情報をご参照願います。
http://support.microsoft.com/default.aspx?scid=kb;ja;299840
Windows 2000の場合
1.ゲストOSにAdministratorでログオンします。
2.Cドライブ内にsysprepフォルダを作成し、OSのインストールCDのDEPLOY.CAB内を全てコピーします。
※sysprepはSUPPORT\TOOLS\DEPLOY.CAB内に存在します。
3.手順2で作成したsysprepフォルダ内のsysprep.exeをクリックします。
4.以下のメッセージが表示されたPOPが表示されますので、「OK」を選択します。
「このアプリケーションを実行するとシステムのいくつかのセキュリティパラメータが変更される可能性があります。
このインストールを複製のために準備している場合以外は、[キャンセル]をクリックしてください。
このアプリケーションの実行後、コンピュータは自動的にシャットダウンします。」
5.再度ゲストOSを起動して頂きますと、OSインストーラーのユーザ名及び、会社名の入力を行う画面より、開始されます。このタイミングでSIDが変更されます。
6.以降は通常のインストーラーと同様の作業を実施します。
7.管理情報が重複しなくなることをご確認願います。
※省力化のため、sysprepの「再シール」を実施した直後のデータを複製することをおすすめします。
行けたかな?