コンテンツへスキップ

VirtualBoxでゲストOSを自動起動させる

最近のVmwareはESXiやServer、Playerが無償で使用できるとはいえ、ダウンロードする際に企業情報を色々入力させられるので、やや面倒です。(昔は何も必要なかったような)

なので、Sun microsystems社のVirtualBoxを使うことが多くなってきました。

VirtualBoxは主に、デスクトップでの使用がメインになりそうですが、サーバ用としても使えそうです。

うちでは、普段使っていないCentOS 5.4のサーバにVirtualBoxをインストールして、そこにゲストOSとしてWindows環境を作りました。

Windowsで何をさせるかというと、ある時間に起動させて、あるソフトを起動させて、終わるとシャットダウンさせると。

しかも、ホストCentOS 5.4も自動起動させたいのです。

まとめると、

(1) ある時間にCentOS 5.4起動
(2) Windows起動
(3) ソフト処理
(4) Windowsシャットダウン
(5) CentOS 5.4シャットダウン

としたかったのです。

まず、(1)なんですけど、これにも方法がいくつかあって、思いついたのは、

(A) BIOSでタイマーセットをする
(B) 他のサーバからWOLで起動させる

なのですが、(A)だと柔軟性に欠けて必要無い日にも起動したりして微妙、今は常時起動させているノートPCがあるので、そこからWOLをさせる(B)にしました。
CentOSのWOLはこちら

次に、(2)ですが、ここが問題でした。

いくら探しても、VirtualBoxにはホストOSの起動時にゲストOSを自動起動させる設定が見当たらない。。。

Webで検索してもなさそう??(探し方が甘い??)

色々探していたら、コマンドラインから操作できることがわかりました。

コマンドラインに隠されたVirtualBoxのチューニング法

これを参考にして、VirtualBoxコマンドの使い方を調べてみるとありました、ゲストOSの起動コマンドが!

その前にディスプレイを指定しないとだめみたいです。
うちはvncserverが起動しているのでそこを指定しました。

export DISPLAY=localhost:1

$ VBoxManage startvm < ここにuuidまたはvm名>
VirtualBox Command Line Management Interface Version 3.0.12
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

Waiting for the remote session to open…
Remote session has been successfully opened.

uuidがわからない場合は以下のコマンドで確認できます。

$ VBoxManage list vms

このコマンドをLinuxの起動スクリプトや別のサーバから実行させることで、自動起動ができそうです。

後は(4)と(5)ですが、面倒なので、強引に(5)を実行してゲストごと落とすことに。
まだ、実施はしてませんが、適当な時間がたったら別サーバからshutdownコマンドで落とすことにしました。

Windowsの場合はどうなのかわかりません。コマンドプロンプトから同じことができるのか??

と思ったらありました。
こんな感じでできました。

C:\Program Files\Sun\VirtualBox>VBoxManage.exe startvm “CentOS 5.3”

といいながら、普通にGUIで設定できるのだったらこの努力は。。。

タグ:

「VirtualBoxでゲストOSを自動起動させる」への1件のフィードバック

  1. ピンバック: 真実を知ればおのれは自由になる » virtualBox ゲストOS 自動起動

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA