VMware PlayerをWindowsサービスとして実行する

WindowsコンピューターでVmwareをバックグラウンドプロセスとして実行しますか?

次のどれもVMwareによって承認されていません。 このガイドでは、VMware Playerの使用についてのみ説明します。



  1. 仮想マシンの作成
  2. VMware Playerをインストールする
  3. VMware Playerサービスを作成する
  4. Windowsの起動時に仮想マシンを起動する




翻訳者:次の段落は、なぜこれがすべて必要なのかという質問にコメントが出た後に追加されました。

この方法の利点は何でしょうか? 私はチェックしませんでしたが、ゲインはディスク容量とシステムリソースにあると思います(2番目のサーバーの分散は約600 MBで、最後のプレーヤーは3倍以上少なくなります)。 また、最近までサーバーが最新世代の仮想マシンのサポートに遅れをとっていたことも覚えています。







1.1仮想マシンの作成





VMWare製品を使用して仮想マシンを作成します。 第5世代の仮想マシンを作成するため、 Workstationバージョン5.5を使用しました。 別のVMware製品を使用している場合は、製品がVMWare Playerと互換性のある仮想マシンを作成することを確認してください。



(翻訳者のメモ:最も簡単な方法は、VMWare Playerと一緒に完全に無料のVMWare Server 2.0を使用することです。もちろん、最新バージョンのWorkstation 6.5で仮想マシンを作成することもできます)



(VMware Playerは仮想マシンの起動に使用されます(これは無料の製品です!)。

また、VMware ACEと同じ方法を使用して、VMware ACEをサービスとして実行します。



第5世代の仮想マシンでは、利用可能な物理メモリを考慮して、仮想ターゲットのRAMを自動的にスケーリングできます。これは、Vmxファイルにいくつかのパラメーターを追加するだけでよいためです。



memsize = "2048"

MemAllowAutoScaleDown = "TRUE"




この場合、V。M.(仮想マシン)は、もしあれば2 GBのRAMを破棄します。 RAMが2 GB未満のマシンでは、プレーヤーは使用可能なRAMに基づいて使用量を自動的に調整します。 Memsize 2048は制限ではありません。 2 GBを超えるメモリを取り付けている場合は、この数を増やすだけです。

私の知る限り、これは文書化されていない関数です。 これは、VMwareが提供する1つの仮想マシンの.vmxファイルで見つけました。



1.2 VMware Playerのインストール





サービスを実行するマシン(以下「ターゲットマシン」と呼びます)にVMware Playerをインストールします。 この例では、バージョン1.0.1を使用します。 Playerは同じコンピューター上で他のVMware製品と共存できないため、ターゲットマシンは、仮想マシンが作成されたときのマシンとは異なる必要があります。

(翻訳者のメモ:これは、プレイヤーを含むWorkstationがインストールされていない場合、プレイヤーの別個のインストールを意味します。また、仮想マシンの作成後にコンピューターからVMWareサーバーを削除することもできます)





1.3 VMWare Playerサービスの作成





対応するWindowsリソースキットからinstsrv.exeおよびSrvany.exeのコピーを検索します。 たとえば、Windows 2003リソースキットを使用しました。 instsrv.exeとSrvany.exeをターゲットマシンの%SYSTEMROOT%にコピーします。

仮想マシンファイルをターゲットコンピューターのディレクトリにコピーします。 すべてのファイルが必要なわけではありません。以下に示すようにファイルのみをコピーしました。

画像



VMware Playerがユーザーインターフェイスによって生成されるすべての「OK」メッセージを抑制し、ユーザーインターフェイスを表示しないように、Vmxファイルにフィールドを追加します。



server.vmx

... ...

hints.hideAll = "TRUE"

msg.noOk = "TRUE"

... ...




Hints.hideAllパラメーターは、VMwareの記事-At Your Serviceで言及されています! 2004年6月。 Msg.noOkパラメーターはVMwareフォーラムで見つかりました。

instsrv.exeを使用して、ターゲットマシンにVirtualServerサービスを作成します。

instsrv VirtualServer "%SYSTEMROOT%\ System32 \ srvany.exe"

Srvany.exeのレジストリキーを追加して、仮想マシンでvmplayer.exeを実行します。 Windowsでカスタムサービスを作成する詳細な説明については、ナレッジベースの記事「カスタムサービスを作成する方法」を参照してください。



VirtualServer.reg

Windowsレジストリエディターバージョン5.00

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ VirtualServer \パラメーター]

"アプリケーション" = "\" C:\\\\プログラムファイル\\\\ VMware \\\\ VMware Player \\\\ vmplayer.exe \ ""

"AppParameters" = "\" C:\\\\ VirtualServer \\\\ server.vmx \ ""

"AppDirectory" = "\" C:\\\\ VirtualServre \\\\\ "




ACEなどの別のVmware製品を使用するには、アプリケーションキーの値を変更します。

別の仮想マシンを使用するには、「AppParameters」の値を変更します。



start-vm.batという名前のバッチ仮想マシン起動ファイルを作成しますこのスクリプトは、最初に仮想マシンファイルがインストールされているか、サービスが実行されていないかを確認します。 次に、古いVMwareプロセスをすべて強制終了し、仮想マシンの最後の起動からさまざまな状態ファイルを削除します。 最後に-仮想マシンのサービスが開始されます。



::

:: start-vm.bat

::

::サーバーがインストールされていない場合は、起動しないでください

存在しない場合C:\ VirtualServer goto noServer

::サービスが既に実行されている場合は、開始をスキップします

ネットスタート| grep -q -i "VirtualServer"

if%ERRORLEVEL%== 0 goto noServer

::残留プロセスが確実に停止するようにするには、プロセスを強制終了します

taskkill / F / IM vmplayer.exe

taskkill / F / IM vmware-vmx.exe

::グリッドディレクトリから* .lck、* .vmssを削除します

del "C:\ VirtualServer \ *。lck"

del "C:\ VirtualServer \ *。vmss"

del "C:\ VirtualServer \ *。vmem"

::サーバーサービスを開始する

net start VirtualServer

:noServer




バッチファイルを作成して、stop-vm.batという仮想マシンを停止します。 仮想サービスシャットダウンスクリプトは、実行中の仮想マシンに関連付けられているすべてのVMwareプロセスを強制終了します。



::

:: stop-vm.bat

::

::サーバーがインストールされていない場合は、起動しないでください

存在しない場合C:\ VirtualServer goto noServer

::サービスを開始する

net stop VirtualServer

::プロセスを強制終了する

taskkill / F / IM vmplayer.exe

taskkill / F / IM vmware-vmx.exe

:noServer




重要:ハードシャットダウン後、仮想マシンは正常です。 仮想マシンのプロセスを破壊します。まるで物理コンピューターのソケットからコードを引き抜いたかのようです。 仮想マシンの状態が重要でない場合は、非永続ディスク機能を使用できます。 仮想マシンの実行中はディスクの内容が変わらないため、このようなプロセスの終了は仮想ディスクの状態に影響しません。



1.4 Windows起動時の仮想マシンの起動





スタートアップスクリプトを%SYSTEMROOT%\ System32 \ GroupPolicy \ Machine \ Scripts \ Startupに配置します。 この例では、起動スクリプトはstart-vm.batファイルです。



画像



ターゲットマシンで、システムの起動時にstart-vm.batを起動し、グループポリシーの自動実行のリストに追加します。 gpedit.mscはグループポリシーエディターです。 gpedit.mscコマンドを実行してグループポリシーエディターを開きます(翻訳者注:[スタート]メニュー-[実行])..





画像



グループポリシーエディターの[スクリプト(スタートアップ/シャットダウン)]セクションで、[スタートアップのプロパティ]ウィンドウを開き、[追加]ボタンをクリックして、仮想マシンのスタートアップスクリプトの名前を入力します。



画像



グループポリシーシャットダウンの手順1〜3に従いますが、完了スクリプトとしてstop-vm.batを使用します。 シャットダウングループポリシーの追加は厳密には必要ありませんが、仮想マシンプロセスを終了するだけでなく、より多くのコマンドが含まれている場合はstop-vm.batを実行することが重要です。

それだけです それを使用します。



All Articles