VirtualBox · 1 min read · Dec 02, 2025
VBoxHeadless - VirtualBox 4.1を使用してヘッドレスOpenSUSE 12.1サーバーで仮想マシンを実行する
VBoxHeadless - VirtualBox 4.1を使用してヘッドレスOpenSUSE 12.1サーバーで仮想マシンを実行する
バージョン 1.0
著者: Falko Timme
Twitterでフォローしてください
このガイドでは、ヘッドレスOpenSUSE 12.1サーバーでVirtualBox 4.1を使用して仮想マシンを実行する方法を説明します。通常、仮想マシンを管理するためにVirtualBox GUIを使用しますが、サーバーにはデスクトップ環境がありません。幸いなことに、VirtualBoxにはVBoxHeadlessというツールが付属しており、リモートデスクトップ接続を介して仮想マシンに接続できるため、VirtualBox GUIは必要ありません。
これがあなたにとって機能するという保証はありません!
1 前提条件
私は、IPアドレス192.168.0.100のOpenSUSE 12.1サーバー(ホストシステム)でこれをテストしました。ここでは、rootではなく通常のユーザー(この例ではユーザー名admin)としてログインしています。
もしrootアカウントしか持っていないが、通常のユーザーアカウントがない場合は、次のように作成してください(ユーザーadmin、グループadmin)…
# groupadd admin
# useradd -d /home/admin -m -g admin -s /bin/bash admin…新しいユーザーのパスワードを作成します…
# passwd admin…そして、そのユーザーとしてログインします。
2 VirtualBoxのインストール
OpenSUSE 12.1サーバーにVirtualBox 4.1をインストールするには、root権限が必要です。したがって、次のように実行します。
$ suまず、インストールされているカーネルを確認する必要があります。
# uname -aserver1:/home/admin # uname -a
Linux server1 3.1.0-1.2-desktop #1 SMP PREEMPT Thu Nov 3 14:45:45 UTC 2011 (187dde0) x86_64 x86_64 x86_64 GNU/Linux
server1:/home/admin #ご覧のとおり、私はkernel-desktopパッケージをインストールしています。もしkernel-serverパッケージをインストールしている場合は、次のコマンドでdesktopをserverに置き換えてください。
次に、VirtualBox 4.1の依存関係を次のようにインストールします(kernel-desktop / kernel-serverパッケージを再インストールすることで、最新バージョンがインストールされていることを確認します)。
# yast -i kernel-desktop kernel-desktop-devel kernel-source kernel-syms Xerces-c gcc makeカーネルが更新されると、YaSTはシステムを再起動する必要があることを通知します。この場合は、次のように実行します。
# reboot再度通常のユーザーとしてログインし、次にrootになります。
$ su次に、VirtualBoxの公開rpmキーをダウンロードして登録します。
# wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
# rpm --import oracle_vbox.asc次に、システムでVirtualBox OpenSUSEリポジトリを有効にします(OpenSUSE 12.1用のリポジトリファイルはありませんが、11.4用のリポジトリファイルは12.1でも機能します)。
# cd /etc/zypp/repos.d/
# wget http://download.virtualbox.org/virtualbox/rpm/opensuse/11.4/virtualbox.repoこれで、次のようにVirtualBox 4.1を簡単にインストールできます。
# yast -i VirtualBox-4.1その後、vboxdrvカーネルモジュールがロードされていることを確認します。
# modprobe vboxdrv次のコマンドは、システムを起動するたびにvboxdrvカーネルモジュールが自動的にロードされることを確認します。
# insserv vboxdrvバージョン4.0以降、VirtualBoxは「拡張パック」と呼ばれるものを導入し、リモートデスクトップ接続サポート(VRDP)などの機能をバージョン4.0以前のVirtualBoxパッケージからこれらの拡張パックに移行しました。仮想マシンを制御するためにリモートデスクトップ接続が必要なため、適切な拡張パックを今すぐインストールする必要があります。http://www.virtualbox.org/wiki/Downloadsにアクセスすると、次の拡張パックへのリンクが見つかります。
VirtualBox 4.1.18 Oracle VM VirtualBox Extension Pack
USB 2.0デバイス、VirtualBox RDP、およびIntelカードのPXEブートのサポート。次のように拡張パックをダウンロードしてインストールします。
# cd /tmp
# wget http://download.virtualbox.org/virtualbox/4.1.18/Oracle_VM_VirtualBox_Extension_Pack-4.1.18-78361.vbox-extpack
# sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.1.18-78361.vbox-extpack(VirtualBoxのウェブサイトから最新バージョンを取得してください。)
次に、VirtualBoxを実行するユーザー(この例ではadmin)をvboxusersグループに追加する必要があります。
# /usr/sbin/usermod -G vboxusers admin(この変更を有効にするには、ログアウトして再度ログインする必要があるかもしれません。)
これでVirtualBoxがインストールされ、使用できる状態になりました。
# exitと入力してrootアカウントを離れ、再び通常のユーザー(admin)になります。
3 コマンドラインでのVirtualBoxの使用
3.1 VMの作成
コマンドラインでVMを作成するには、VBoxManageコマンドを使用できます。次を参照してください。
$ VBoxManage --help利用可能なスイッチのリストが表示されます(非常に推奨!)http://www.virtualbox.org/manual/ch08.htmlを見てください。
これから、512MBのメモリと10GBのハードドライブを持つUbuntu 12.04 Server VMを、/home/ubuntu-12.04-server-amd64.isoに保存したUbuntu 12.04 Server isoイメージから作成します。
$ VBoxManage createvm --name "Ubuntu 12.04 Server" --register
$ VBoxManage modifyvm "Ubuntu 12.04 Server" --memory 512 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 eth0
$ VBoxManage createhd --filename Ubuntu_12_04_Server.vdi --size 10000
$ VBoxManage storagectl "Ubuntu 12.04 Server" --name "IDE Controller" --add ide
$ VBoxManage storageattach "Ubuntu 12.04 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Ubuntu_12_04_Server.vdi
$ VBoxManage storageattach "Ubuntu 12.04 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/ubuntu-12.04-server-amd64.iso3.2 既存のVMのインポート
例として、examplevmというVMがあり、これをこのホストで再利用したいとします。古いホストには、VirtualBoxディレクトリ内にMachines/examplevmというディレクトリがあり、Machines/examplevmにはexamplevm.xmlファイルが含まれているはずです。examplevmディレクトリ(examplevm.xmlファイルを含む)を新しいMachinesディレクトリにコピーします(ユーザー名がadminの場合、これは/home/admin/.VirtualBox/Machinesで、結果は/home/admin/.VirtualBox/Machines/examplevm/examplevm.xmlになります)。
さらに、古いVDIディレクトリからexamplevm.vdiファイルを新しいものにコピーします(例:/home/admin/.VirtualBox/VDI/examplevm.vdi)。
その後、インポートしたVMを登録する必要があります。
$ VBoxManage registervm Machines/examplevm/examplevm.xml3.3 VBoxHeadlessでVMを起動
新しいVMを作成するか古いVMをインポートするかに関係なく、次のコマンドで起動できます。
$ VBoxHeadless --startvm "Ubuntu 12.04 Server"(Ubuntu 12.04 ServerをVMの名前に置き換えてください。)
VBoxHeadlessはVMを起動し、VRDP(VirtualBox Remote Desktop Protocol)サーバーを起動します。これにより、別のマシンでVMの出力をリモートで見ることができます。
VMを停止するには、次を実行します。
$ VBoxManage controlvm "Ubuntu 12.04 Server" poweroffVMを一時停止するには、次を実行します。
$ VBoxManage controlvm "Ubuntu 12.04 Server" pauseVMをリセットするには、次を実行します。
$ VBoxManage controlvm "Ubuntu 12.04 Server" resetVBoxHeadlessについて詳しく知りたい場合は、次を参照してください。
$ VBoxHeadless --help新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。