VirtualBox?に関するページです。

VirtualBox?とは

近畿大学の井口先生に教えてもらった仮想マシンの実装のひとつ。ドイツの企業であるInnoTek?社が開発を行っていたが、現在はSun Microsystemsに買収されたらしい。Sun Microsystems が Oracle に買収されたのに伴い、3.2.0 から Oracle VirtualBox? に名称変更された。

Ubuntu 10.04 AMDへのインストール

Lucid のβバージョン時には 3.1系列のパッケージが存在しなかったが、その後公開されたので簡単にインストールできるようになった。

Linux_Downloads - VirtualBoxに書かれているとおりにすればよい。

3.2.4 のインストール

APTラインの追加

/etc/apt/sources.list.d/virtualbox.list ファイルに VirtualBox? の情報を記述する。

deb http://download.virtualbox.org/virtualbox/debian lucid non-free

Oracle 公開鍵 の登録

apt-secure のための Oracle 公開鍵を登録する。

$ wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -

apt-get でインストール

$ sudo apt-get update
$ sudo apt-get install virtualbox-3.2

既に 3.1系列がインストールしてあった場合、いくつか不用なパッケージが残るので、 apt-get autoremove で削除する。

$ sudo apt-get autoremove

dkms パッケージのインストール

ホストのカーネルがバージョンアップされた際に、自動的に VirtualBox? 関連のドライバも自動更新されるようにするため、dkms パッケージをインストールしておくと幸せになれるらしい。

$ sudo apt-get install dkms

Ubuntu 9.04 AMD64へのインストール

3.1.2 へのアップグレード

Guest OS が Debian Lennyの時、Xが立ち上がらなくなってきた。Guest Additionsが設定する /etc/X11/xorg.conf に不具合があるみたいだ。とりあえず、他のLinux Guest OS(Ubuntu 9.04)から/etc/X11/xorg.conf をコピーして急をしのいだ。しかし、右CTRLを押さないと Guest OSから出られなくなった。

Ubuntu 8.04 AMD64へのインストール

2.1へのアップグレード

2.1ではブリッジ機能がサポートされるようになったので、下に書いてあるようなことはしなくてよくなった。(というか、むしろ設定したブリッジを解除しておいたほうがよい。)

vbox0など、以前のバージョンで作成したネットワークインタフェースが残って気になる場合は、/etc/vbox/interfaces に記述されている内容を消去して、再起動すればよい。

2.0.4へのアップグレード

aptラインにVirtualBox?のサイトを登録済であれば、aptitude upgradeするだけでよい。

2.0.2

必要なパッケージのインストール

インストールの際にモジュールをビルドするので、おそらくカーネルヘッダとかbuild-essentialとかも必要。(未確認)

$ sudo aptitude install libqt4-core scim-bridge-client-qt4

本体のインストール

  • aptを使って最新版をインストールする(参考:Linux_Downloads - VirtualBox 以下のURLをapt-lineに追加する。
    deb http://download.virtualbox.org/virtualbox/debian hardy non-free
    SUNの公開鍵をaptに登録する。
    $ wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -
    aptitudeでインストールする。
    $ sudo aptitude install virtualbox-2.0
    パッケージリストを読み込んでいます... 完了
    依存関係ツリーを作成しています                
    状態情報を読み取っています... 完了
    拡張状態情報を読み込んでいます      
    パッケージの状態を初期化しています... 完了
    タグのデータベースを構築しています... 完了  
    以下の新規パッケージが自動的にインストールされます:
      bridge-utils dkms libqt4-core libsdl-ttf2.0-0 uml-utilities 
    以下の新規パッケージがインストールされます:
      bridge-utils dkms libqt4-core libsdl-ttf2.0-0 uml-utilities 
      virtualbox-2.0 
    0 個のパッケージを更新、 6 個を新たにインストール、 0 個を削除予定、0 個が更新されていない。
    アーカイブ 32.8MB 中 32.8MB を取得する必要があります。 展開後に 79.6MB のディスク領域が新たに消費されます。
    続けますか? [Y/n/?] y
    拡張状態情報を書き込んでいます... 完了
    取得:1 http://download.virtualbox.org hardy/non-free virtualbox-2.0 2.0.2-36488_Ubuntu_hardy [32.7MB]
    取得:2 http://ftp.jaist.ac.jp hardy/main bridge-utils 1.2-2 [30.7kB]
    取得:3 http://ftp.jaist.ac.jp hardy-backports/universe dkms 2.0.20.4-0ubuntu1~hardy1 [55.3kB]
    取得:4 http://ftp.jaist.ac.jp hardy/main libsdl-ttf2.0-0 2.0.9-1 [16.4kB]
    取得:5 http://ftp.jaist.ac.jp hardy/universe uml-utilities 20070815-1 [63.3kB]
    32.8MB を 5min47s 秒でダウンロードしました (94.4kB/s)                           
    パッケージを事前設定しています ...
    未選択パッケージ libqt4-core を選択しています。
    (データベースを読み込んでいます ... 現在 177296 個のファイルとディレクトリがインストールされています。)
    (.../libqt4-core_4.4.0-1ubuntu5~hardy1_amd64.deb から) libqt4-core を展開しています...
    未選択パッケージ virtualbox-2.0 を選択しています。
    (.../virtualbox-2.0_2.0.2-36488%5fUbuntu%5fhardy_amd64.deb から) virtualbox-2.0 を展開しています...
    未選択パッケージ bridge-utils を選択しています。
    (.../bridge-utils_1.2-2_amd64.deb から) bridge-utils を展開しています...
    未選択パッケージ dkms を選択しています。
    (.../dkms_2.0.20.4-0ubuntu1~hardy1_all.deb から) dkms を展開しています...
    未選択パッケージ libsdl-ttf2.0-0 を選択しています。
    (.../libsdl-ttf2.0-0_2.0.9-1_amd64.deb から) libsdl-ttf2.0-0 を展開しています...
    未選択パッケージ uml-utilities を選択しています。
    (.../uml-utilities_20070815-1_amd64.deb から) uml-utilities を展開しています...
    libqt4-core (4.4.0-1ubuntu5~hardy1) を設定しています ...
    virtualbox-2.0 (2.0.2-36488_Ubuntu_hardy) を設定しています ...
    グループ `vboxusers' (GID 124) を追加しています...
    終了。
    Messages emitted during module compilation will be logged to /var/log/vbox-install.log.
    Success!
     * Starting VirtualBox? kernel module                                             *  done.
     * Starting VirtualBox? host networking                                           *  done.
    
    bridge-utils (1.2-2) を設定しています ...
    
    dkms (2.0.20.4-0ubuntu1~hardy1) を設定しています ...
    libsdl-ttf2.0-0 (2.0.9-1) を設定しています ...
    
    uml-utilities (20070815-1) を設定しています ...
     * Starting User-mode networking switch uml_switch                       [ OK ] 
    
    Processing triggers for libc6 ...
    ldconfig deferred processing now taking place
    パッケージリストを読み込んでいます... 完了
    依存関係ツリーを作成しています                
    状態情報を読み取っています... 完了
    拡張状態情報を読み込んでいます      
    パッケージの状態を初期化しています... 完了
    拡張状態情報を書き込んでいます... 完了        
    タグのデータベースを構築しています... 完了
  • パッケージをダウンロードしてからインストールする Ubuntuのパッケージでなく、Sun Microsystemsが提供している2.0.2をインストールする。
    $  dpkg -i virtualbox-2.0_2.0.2-36488_Ubuntu_hardy_amd64.deb
    何度か質問されるが、原則デフォルトでOK。

Bridgeインタフェースの作成

インストールしてなければ、bridge-utilsをインストールしておく。

/etc/network/interfacesの編集

どの物理インタフェースを使ってブリッジを作るかを記述する。

auto br0
iface br0 inet dhcp
  bridge_ports eth0

ネットワークの再起動

$ sudo /etc/init.d/network restart

Bridgeインタフェースの作成

$ sudo VBoxAddIF vbox0 ユーザ名 br0

/dev/net/tun

Failed to open '/dev/net/tun' for read/write access. Please check the
permissions of that node. Either run 'chmod 0666 /dev/net/tun' or change the
group of that node and make yourself a member of that group. Make sure that
these changes are permanent, especially if you are using udev.
VBox status code: -3100 (VERR_HOSTIF_INIT_FAILED).
itou-r@mx27:~$ ls -al /dev/net/tun
crw-rw---- 1 root root 10, 200 2008-04-23 03:04 /dev/net/tun

ゲストOSの設定

「ネットワーク」→「割り当て」を「ホストインタフェース」→「インタフェース名」に上で作成したインタフェース名(vbox0)を指定する。

1.6.0

必要なパッケージのインストール

インストールの際にモジュールをビルドするので、おそらくカーネルヘッダとかbuild-essentialとかも必要。(未確認)

$ sudo aptitude install libqt3-mt scim-bridge-client-qt

本体のインストール

Ubuntuのパッケージでなく、Sun Microsystemsが提供している1.6をインストールする。

$  dpkg -i virtualbox_1.6.0-30421_Ubuntu_hardy_amd64.deb

何度か質問されるが、原則デフォルトでOK。

ゲストOSでUSBが使えるようにする

Ubuntu 9.04 の場合

vboxusers グループに自分のアカウントを追加すればよい。

$ sudo usermod -a -G vboxusers hogehoge

Ubuntu 7.10 や 8.04 の場合

Get USB devices mounted on your Virtualbox XP machine in Gutsy (Ubuntu 7.10) | ArsGeek

ホストOS上で、以下の2つのファイルを書き換えて再起動する。

/etc/init.d/mountdevusbfs.sh

$ diff -Nur /etc/init.d/mountdevsubfs.sh.orig /etc/init.d/mountdevsubfs.sh
--- /etc/init.d/mountdevsubfs.sh.orig	2008-06-11 14:42:55.000000000 +0900
+++ /etc/init.d/mountdevsubfs.sh	2008-06-11 14:43:07.000000000 +0900
@@ -39,10 +39,10 @@
 	#
 	# Magic to make /proc/bus/usb work
 	#
-	#mkdir -p /dev/bus/usb/.usbfs
-	#domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
-	#ln -s .usbfs/devices /dev/bus/usb/devices
-	#mount --rbind /dev/bus/usb /proc/bus/usb
+	mkdir -p /dev/bus/usb/.usbfs
+	domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
+	ln -s .usbfs/devices /dev/bus/usb/devices
+	mount --rbind /dev/bus/usb /proc/bus/usb
 }
 
 case "$1" in

/etc/fstab

$ diff -Nur /etc/fstab.orig /etc/fstab
--- /etc/fstab.orig	2008-06-11 15:01:36.000000000 +0900
+++ /etc/fstab	2008-06-11 15:02:56.000000000 +0900
@@ -7,3 +7,4 @@
 # /dev/sda7
 UUID=eba2d4a4-3c78-4e45-8ea4-19be163cc960 none            swap    sw              0       0
 /dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec,utf8 0       0
+usbfs           /proc/bus/usb   usbfs   devgid=124,devmode=0666 0 0

ここでdevgidの値は、/etc/group中のvboxusersの値。

/etc/group

vboxusersに自分のアカウントを追加する。

ゲストOSとホストOSの間をシームレスに行き来する。

VirualBox? Guest Additions driverをインストールすればよい。ゲストOSがUbuntu 8.04の場合、「デバイス」→「Guest Additionsのインストール」でCD-ROMイメージがマウントされるので、ターミナルを開いて、以下のコマンドを実行する。

$ cd /cdrom
$ sudo ./VBoxLinuxAdditions?-x86.run

あとはゲストOSを再起動すればよい。

CentOS 5.3 の場合

Guest Additions driverをインストールには、カーネルヘッダと開発用ツールが必要なので、以下のコマンドを実行する。

# yum install gcc make kernel kernel-devel

あとは、上と同じ。

USB 2.0 isochronous support

2.2.4でもまだサポートされていないので、USB2.0の webcam は使えない。2年前に ticket が発行されているにもかかわらず、未だに対応されず。VMwareはサポートしているだけに、早急な対応が望まれる。

misc

リンク


トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-06-14 (月) 11:41:13 (88d)