VirtualBox 上の Debian で共有フォルダを使う

今までは VirtualBox 上の Debian とのファイルのやりとりには、
WindowsのVirtualBox上でubuntuサーバを動かしsshで接続する - 日記
とか
Blog in a Nutshell: VirtualBox on Mac OS X
を参考に、ssh でつないで scp とか使ってやってたんだけど、
うえちょこ@ぼろぐ» [VirtualBox]Fedora 7(Guest)にGuest Additionsをインストールする

うえちょこ@ぼろぐ» [VirtualBox]共有フォルダ機能 by Windows(Host)/Fedora 7(Guest)
なんてエントリを見つけたので、Debian でもやってみた。

Guest Addition のイメージをマウント

VirtualBox のゲスト OS が起動しているウィンドウのメニューを、デバイス (D)、CD/DVD-ROM のマウント (C)、CD/DVD-ROM イメージ (C)... とたどる。
すると仮想メディアマネージャウィンドウが立ち上がるので、追加 (A) をクリックし、VirtualBox のインストールパス*1にある VBoxGuestAdditions.iso を開くと、一覧に VBoxGuestAdditions.iso が出てくるので、それをクリックして選択 (S) ボタンを押す。
そして、Debian 側で

# mkdir /mnt/cdrom
# mount -r /dev/cdrom /mnt/cdrom

としてマウント完了。
とりあえず実行してみる*2

# /mnt/cdrom/VBoxLinuxAdditions-amd64.run vfs-module
Verifying archive integrity... All good.
Uncompressing VirtualBox 3.0.8 Guest Additions for Linux installation...........
................................................................................
................................................................................
.....................................................
VirtualBox 3.0.8 Guest Additions installation
Please install GNU make.
Please install the build and header files for your current Linux kernel.
The current kernel version is 2.6.26-2-amd64
Please install the GNU compiler.
Problems were found which would prevent the Guest Additions from installing.
Please correct these problems and try again.

ふむ・・・

必要なものをインストール

てことでインストールしてみる。

# aptitude install make
# aptitude install gcc
# aptitude install module-assistant
# m-a prepare

で、また実行。

# /mnt/cdrom/VBoxLinuxAdditions-amd64.run vfs-module
Verifying archive integrity... All good.
Uncompressing VirtualBox 3.0.8 Guest Additions for Linux installation...........
................................................................................
................................................................................
.....................................................
VirtualBox 3.0.8 Guest Additions installation
Building the VirtualBox Guest Addtions kernel module...
Building the shared folder support kernel module...
Installing the VirtualBox Guest Additions...

Successfully installed the VirtualBox Guest Additions.
You must restart your guest system in order to complete the installation.

インストールが完了したらしい。リブート。

# reboot

共有フォルダの作成・追加

ホスト側とゲスト側でファイルをやりとりするためのフォルダを、ホスト側に例えば C:\Users\bleis-tift\vbox_share という名前で作成する。
そして、VirtualBox のゲスト OS が起動しているウィンドウのメニューから、デバイス (D) → 共有フォルダ (S) とたどると、共有フォルダウィンドウが開く。
そのウィンドウの右上に、新規共有フォルダを追加するアイコンがあるので、クリックすると、共有フォルダの追加ウィンドウが開くので、フォルダのパスを入力し、永続化する (M) にチェックを入れて OK を押してこのウィンドウを閉じる。
これで共有フォルダが追加されたので、共有フォルダウィンドウも OK を押して閉じる。

共有フォルダのマウント

これで、あとはゲスト側の Debian

# mkdir /mnt/hostfs
# mount -t vboxsf vbox_share /mnt/hostfs

とマウントすれば、/mnt/hostfs に入れたファイルはホスト側の vbox_share から見え、逆に vbox_share フォルダに入れたファイルが /mnt/hostfs から見えるようになる。

*1:例えば、C:\Program Files\Sum\VirtualBox

*2:ここでは 64bit 版の Debian をインストールしたので VBoxLinuxAdditions-amd64 を使ったけど、32bit 版の場合は VBoxLinuxAdditions-x86 を使えばいい