VirtualBox!! それは仮想的なPCをPCの上で動かすソフトウェア!
VirtualBoxについての説明はともかくとして、今回はWindowsでVirtualBox上のLinuxをしぜーんに使う方法です。
VirtualBoxは通常は、GUIのVirtualBoxマネージャーで起動や設定などを管理します。起動するとそのゲストOSを表現するウィンドウが表示されます。
通常利用において、VirtualBoxマネージャーのGUIは閉じても構わないのでデスクトップOSをゲストOSとして使う場合はこれで良いのですが、サーバーOSを使う場合などは、どのみちsshで接続するので、ゲストOSのウィンドウが邪魔だったりします。
Windowsは良いOSで使い続けたいのですが(もしくは諸般の事情でWindowsでなければならないなど) 、開発時にLinuxサーバーを使いたい時もあります。Windowsでも動くけどLinuxでの運用を想定してる時はやっぱり同じOSで動かしたいですよね。
ここで紹介するのは、ホストOSのWindowsの起動と共にいつも一緒にいるLinuxをサービスとして起動する方法です。VirtualBoxのゲストOSをサービスとして動作させるツールがこれです。
VBoxVmService – run your VirtualBox VMs from a native Windows service
VBoxVmSearviceでサービスとして動作させるためにいくつか、引っかかった点があったのでメモしときます。
サービスとして起動するとVirtualboxマネージャーが起動できなくなりました。そのへんはこちらを参考に、サービス起動用のユーザーを自分がログインするユーザーに変えれば動作するようになりました。
ただ、それでもほかのゲストOSの起動はできるのですが、ウィンドウがでてこなくなります。ご注意を。
コンポーネントサービスのIDと、VBoxVmSearviceのサービス起動ユーザを同じログインユーザにしました。
こうすることで、自分がVirtualBoxを起動したのと同じようにサービスとして起動し、他のゲストOSを起動するためにVirtualboxマネージャーも起動できました。
これで最新のOSSプロダクトの利用やビルドを、Windowsからでも (Linuxで) すぐに使えるようになりますね!欲しいときに起動するんでなくて、いつも一緒に起動してるとこが重要なんです。
(※Windowsがダメというのではありません)
もう一つ、vagrantというプロダクトがあってこれはVirtualBoxでのゲスト導入がもっと簡単になります。
vagrantはVirtualBoxをほとんど隠蔽しちゃってるので、「GUIでゲストOSの設定もしたいんだー」って時に少し困ります。サーバーOSをどんどん使い捨てしたり、OSインストールの手間を省くには便利かとおもいます。
とりあえず自分の管理下でVirtualBox起動を自動化したい場合には、VBoxVmSearviceが楽でいいと思います。