VirtualPCでのCentOSの自動起動

前回VirtualPC上のCentOSSVN環境を作りましたが、何かの弾みでサーバが再起動した場合とか、ローカルで使っている場合のPC起動時に毎回自動起動はさせておきたいので、設定します。

VirtualPCオプション

まずは、どうすればVirtualPCの目当てのVMを起動出来るかという事で、VirutalPCの起動オプションは以下のものがあります。

引数 説明
-singlepc Virtual PC コンソールを起動しないで、バーチャルマシンを起動。
-pc 指定したバーチャルマシンを操作する。
-launch -pc 引数の後に指定したバーチャルマシンを起動する。
-fullscreen 実行中のバーチャルマシンを全画面表示にする。
例) VirtualPCコンソールを表示せずに Windows XP という名前のバーチャルマシンを起動
"C:\Program Files\Microsoft Virtual PC\Virtual PC.exe" -singlepc -pc "Windows XP" -launch

実行バッチの作成

"VirtualPC.bat"(任意の名前)を作成し、このバッチファイルを実行する事で、Virtual PCの起動処理を実行出来る事を確認します。

VirtualPC.bat
@echo off
rem Virtual PC(CentOS)を起動するバッチファイル

"C:\Program Files\Microsoft Virtual PC\Virtual PC.exe" -singlepc -pc "CentOS" -launch


さて、このバッチファイルをこのままスタートアップに置けば、目的は達成できるのですが、バッチ実行時のDOS窓が立ち上がりっぱなしになるので、見た目宜しく無いです。
という事で、DOS窓が表示しないようにしましょう。

VBScriptの作成

"VirtualPC.vbs"(任意の名前)を作成し、上記の実行バッチを呼び出す。~

VirtualPC.vbs
Dim WShell
Set WShell = WSCript.CreateObject("WScript.Shell")
WShell.Run "C:\bat\VirtualPC.bat",0 '非表示で実行

スタートアップに登録

上記、VBScriptファイルをスタートアップ(C:\Documents and Settings\{USERNAME}\スタート メニュー\プログラム\スタートアップ)に置けば、PC起動時に毎回実行される筈です。
ログインしなくても、必要なサービスは通常立ち上がっているので、VirtualPC、及び、CentOSを触る必要は無いです。

注意

昨今のセキュリティソフト等では、スタートアップでのvbsファイルの実行が制限される場合があるみたいです。
そういう場合は、面倒ですが、このVBScriptを実行するだけのバッチファイルを作成し、そちらをスタートアップに置くようにすれば回避出来ます。