2010年12月27日月曜日

VirtualBox

Win でしか使えないハードを使う機会が増えてきたので、何度も再起動するハメになり面倒だ。そのへんをなんとかしてみようかと Virtualbox を試してみることにした。ホストは Win7 でゲストには ArchLinux と debian。
VirtualBox のインストールは簡単。インストール後はウィザードに従って設定、起動には USB CD を使ってもいいし CD-image を使ってもいい。どちらも試したが、まあ image のほうが楽かな。静かだし。

最初の難関は xorg。単に入れただけだと 800x600 (しかも遅い) で動く。メニューから "Guest Addition のインストール" を選ぶことで /dev/sr0 あたりにゲスト OS 用ツールの cd-image がセットされる。それをマウントして OS に合致したものを導入する (shell script)。Linux の場合は、カーネルモジュールをコンパイルするので、arch なら base-devel と kernel26-headers、debian なら build-essential あたりをあらかじめ入れておく。
スクリプトを動かすと、カーネルモジュールとツールがインストールされる。場所は /opt あたり。リンクも作成してくれる。vboxvideo あたりが上っている状態で xorg を動かすと、好きな解像度で GUI を使える。私の好みはフルスクリーンかな。

debian は問題なかったのだが、arch のほうは一般ユーザで xorg を起動しようとしても失敗する現象が発生.root では問題ないのでパーミッションかな?と思うがよく判らない。結局、/etc/skel に入っていた .xsession が「何もしない」設定になっていたためと判明。"exec openbox" を記載してやることで動くようになった。(まったくこんなことで時間を取られるなんざ... )

 使ってみたがなかなか速い。例の pdftoppm ベンチにしても、2 割ほど遅いぐらいで済んでいる。描画のほうも問題ないようだ。1280x764 とかの flv でもスムーズに再生する.

ところが usb メモリを読もうとしたら反応しなくなった.usb cdrom は問題ないのになあ.起動から終了まで付けていたからかな?
ファイルのやりとりには共有フォルダを使うのが良いようだ.Virtualbox の方で設定して,ゲストの Linux に入った後は "mount -t vboxsf DIRNAME /MOUNTPOINT" でマウントできる.

 後,気付いたのは,ネットの接続が遅いことか.速度が出ないというわけではなく,最初の接続に時間がかかる印象.これは設定が NAT になっているからかもしない.bridged にしてみるべきかも.

別にある Linux ホスト w2k ゲストの環境で共有フォルダを使ってみる.ホストのマネージャのほうを設定して,ゲストのほうでは「ネットワークドライブの設定」あたりで "\\vboxsrv\SHARE_NAME" みたいなかんじで割り付けしてやると使えるようになる.今迄は smbmount していたが,ずいぶん簡単だ.それに "smb 共有を解除する前に VirtulaBox を終了してしまったぁ" なんてこともおこらないし.