VirtualBoxにLinuxなどをインストールしてsshによる接続で仮想OS(ゲストOS)を使用してる方が多いと思います。
以下にコマンドプロンプトまたはバッチファイル起動による仮想OS(ゲストOS)を起動する方法を以下に記します。
同様の記事をLinuxでも記述してます。Linuxで同様のことを実現するための資料は以下のリンクです。
\VBoxManage.exeコマンドを利用することにより、バックグランド(画面のウインドウなし)で起動することができます。
コマンドの構文は以下のようになります。
<VirtualBoxインストールパス>\VBoxManage.exe startvm "ゲストOS名" --type headless
VirtualBoxをデフォルトでインストールした場合は以下のようになります。(cドライブ想定)
"c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm "ゲストOS名" --type headless
VBoxManage.exeとゲストOS名をダブルクオーテーションで囲んでいます。
VBoxManage.exeにはProgram Filesのように間にスペースが含まれているからです。
また、ゲストOS名に半角スペースが含まれている場合も同様にダブルクオーテーションは必須です。
半角スペースが含まれていなのであればダブルクオーテーションは不要です。
ゲストOS名ですが、VirtualBoxマネージャーの以下の部分なります。
以下にCentOS6をバックグランドで起動した時の実行例を記します。
コマンドプロンプトを起動し以下のようにコマンドを入力し実行した時の出力です。
C:\Users\sakura>"c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm CentOS6 --type headless Waiting for VM "CentOS6" to power on... VM "CentOS6" has been successfully started.
バッチファイルを作成して動かす場合は、上記のコマンドプロンプトで実行したコマンドと引数をテキストエディタで入力し拡張子をbatと入力すれば出来上がりです。
デスクトップなどに保存してしまえばダブルクリックで起動できます。
"c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm "ゲストOS名" --type headless
あとはsshなどで接続して使用することができます。
尚、ホストOSとゲストOS間との通信には「ホストオンリーアダプタ」を指定してVM環境を構築すると簡単にホストOS、ゲストOS間の通信が可能になります。
ホストオンリーアダプタに関しては以下の資料を参照してみてください。
上記の方法で画面が常時されずバックグランドで仮想OSが起動できるようになります。
注意して欲しいのは、ホストOSをシャットダウンするまえにゲストOSもシャットダウンしてください。