VirtualBoxとは、パソコンの中に仮想のパソコン環境を構築して他のOSをインストールすることができる仮想化ソフトです。
VirtualBoxをインストールしているホストOS(以下ホスト)とVirtualBoxにインストールしているOS(以下ゲスト)の間でファイルの共有ができるのですが、ホスト側では共有するフォルダを作成してVirtualBox側で指定すればいいのですが、ゲスト側ではGuest Additionsと言うものをインストールしなければいけないようです。
ここで躓いてしまったので、メモしておきます。
ちなみに私が以下に示すメモは、ホストOSがWindows7、ゲストOSがDebian6(squeeze)です。
また、ホストのフォルダ名は「Share」とします。
・Guest Additionsのインストーラディスクをゲストに表示する
インストーラディスクと書きましたが、これは仮装ディスクのことです。
まずゲストを開いてるウインドウのメニューの「デバイス」をクリックします。
(表示されてない場合は、Ctrl+Cで切り替えます)
一番下に「Guest Additionsのインストール」があるのでこれをクリック。
恐らく何も起こらないと思いますが、このまま進みます。
・Guest Additionsのインストーラディスクをマウントする
端末を開いて、suコマンドで管理者権限を取得します。
そしてmkdirコマンドで/mntディレクトリにディスクマウント用のファイルを作成します。
ここでは「cdrom」というファイルを作成します。
#mkdir /mnt/cdrom
今度は今作った「cdrom」ファイルにディスクをマウントします。
#mount -r /dev/cdrom /mnt/cdrom
これで/mnt/cdromがディスクとして扱われるようになります。
・Guest Additionsをインストールしてみる
以下のコマンドを打ってインストールします。
ただし、インストールしたての環境ではおそらくエラーがでて正しく完了しないと思いますが、今回は私のやってきたことの再現なのであえて実行してみます。
#/mnt/cdrom/VBoxLinuxAdditions.run
/mnt/cdromの中をlsコマンドとかで見てもらえれば分かると思いますが、いくつかインストールファイルが入っていますが実行するのは上記のファイル一つだけです。
さて、実行しましたが恐らく失敗していることでしょう。
これは必要なファイルが揃っていないことが原因のようです。
調べてみたところ以下が必要なようです。
make
gcc
module-assistant
build-essential
linux-headers
もしかしたらbuild-essentialをインストールすればmakeとgccは必要ないのかもしれませんが分からないので一応インストールします。
また、linux-headersは「uname -r」コマンドを使用して、カーネルのバージョンを調べて、そのバージョンを使用します。
私の場合は「2.6.32-5-686」でsした。
では、インストールです。
#aptitude install make
#aptitude install gcc
#aptitude install module-assistant
#aptitude install build-essential
#aptitude install linux-headers-2.6.32-5-686
以上をインストールが終わったらもう一度「VBoxLinuxAdditions.run」をインストールしてみましょう。
今度はうまくいくはずです。
・共有ファイルをマウントする
さて、上記でGuest Additionsのインストールは終わりました。
今度は共有ファイルのマウントをしてみます。
まずはマウントするファイルの作成です。
#mkdir /mnt/hostfs
ファイル名はなんでも構いませんが、ここでは「hostfs」とします。
そして、以下のコマンドでマウントします。
#mount -t vboxsf Share /mnt/hostfs
これでマウントしました。
試しに何かファイルを入れて、両方から見れるか確認してみましょう。
http://d.hatena.ne.jp/bleis-tift/20091012/1255344946
http://r2cedar.cocolog-nifty.com/blog/2009/04/vitualbox-guest.html
http://d.hatena.ne.jp/hirokiky/20110822/1314033552
VirtualBoxをインストールしているホストOS(以下ホスト)とVirtualBoxにインストールしているOS(以下ゲスト)の間でファイルの共有ができるのですが、ホスト側では共有するフォルダを作成してVirtualBox側で指定すればいいのですが、ゲスト側ではGuest Additionsと言うものをインストールしなければいけないようです。
ここで躓いてしまったので、メモしておきます。
ちなみに私が以下に示すメモは、ホストOSがWindows7、ゲストOSがDebian6(squeeze)です。
また、ホストのフォルダ名は「Share」とします。
・Guest Additionsのインストーラディスクをゲストに表示する
インストーラディスクと書きましたが、これは仮装ディスクのことです。
まずゲストを開いてるウインドウのメニューの「デバイス」をクリックします。
(表示されてない場合は、Ctrl+Cで切り替えます)
一番下に「Guest Additionsのインストール」があるのでこれをクリック。
恐らく何も起こらないと思いますが、このまま進みます。
・Guest Additionsのインストーラディスクをマウントする
端末を開いて、suコマンドで管理者権限を取得します。
そしてmkdirコマンドで/mntディレクトリにディスクマウント用のファイルを作成します。
ここでは「cdrom」というファイルを作成します。
#mkdir /mnt/cdrom
今度は今作った「cdrom」ファイルにディスクをマウントします。
#mount -r /dev/cdrom /mnt/cdrom
これで/mnt/cdromがディスクとして扱われるようになります。
・Guest Additionsをインストールしてみる
以下のコマンドを打ってインストールします。
ただし、インストールしたての環境ではおそらくエラーがでて正しく完了しないと思いますが、今回は私のやってきたことの再現なのであえて実行してみます。
#/mnt/cdrom/VBoxLinuxAdditions.run
/mnt/cdromの中をlsコマンドとかで見てもらえれば分かると思いますが、いくつかインストールファイルが入っていますが実行するのは上記のファイル一つだけです。
さて、実行しましたが恐らく失敗していることでしょう。
これは必要なファイルが揃っていないことが原因のようです。
調べてみたところ以下が必要なようです。
make
gcc
module-assistant
build-essential
linux-headers
もしかしたらbuild-essentialをインストールすればmakeとgccは必要ないのかもしれませんが分からないので一応インストールします。
また、linux-headersは「uname -r」コマンドを使用して、カーネルのバージョンを調べて、そのバージョンを使用します。
私の場合は「2.6.32-5-686」でsした。
では、インストールです。
#aptitude install make
#aptitude install gcc
#aptitude install module-assistant
#aptitude install build-essential
#aptitude install linux-headers-2.6.32-5-686
以上をインストールが終わったらもう一度「VBoxLinuxAdditions.run」をインストールしてみましょう。
今度はうまくいくはずです。
・共有ファイルをマウントする
さて、上記でGuest Additionsのインストールは終わりました。
今度は共有ファイルのマウントをしてみます。
まずはマウントするファイルの作成です。
#mkdir /mnt/hostfs
ファイル名はなんでも構いませんが、ここでは「hostfs」とします。
そして、以下のコマンドでマウントします。
#mount -t vboxsf Share /mnt/hostfs
これでマウントしました。
試しに何かファイルを入れて、両方から見れるか確認してみましょう。
http://d.hatena.ne.jp/bleis-tift/20091012/1255344946
http://r2cedar.cocolog-nifty.com/blog/2009/04/vitualbox-guest.html
http://d.hatena.ne.jp/hirokiky/20110822/1314033552