« Bodhi 1.4 | トップページ | XP上でViso 2000 をアンインストール方法 »

2012/04/04

VirtualBox

Arch Linux だと、VMWare Player はパッケージ管理がされていません。どうしても必要なら自前でパッケージ化する訳ですが、同等(以上)の機能を持つパッケージ化されたVirtual Box があるので、そちらを使います。

同等以上というのは、GPU のハードウェアアクセラレーションがVirtual Box なら使えることですね。VMWare Player に比べてLinux サポートも手厚い(少なくともデスクトップユースにおいては)ですし。唯一の不安点は開発元がOracle だということでしょうか。

VirtualBox の目的はWindows XP を動かすことです。
ちなみに、Windows アプリケーションを動かす目的でWINE をArch Linux で使うのは、自分の経験上止めた方が良い、と思います。なんとか動く環境を見つけるというのがおそろしく時間がかかる作業になり、しかもすぐに不安定になります。ハードウェアリソースがあるなら、VM を使った方が時間の無駄を防げます。

Windows XP をLuvbook S 上でレジューム状態から復帰させるのに、3~5秒程度しかかかりません。Luvobook S クラスのハードウェア(ただしSSD搭載時)ならWINEを苦労して使う意味はほぼないのではないでしょうか。

  1. インストール
  2. カスタムカーネル使っていない人は virtualbox-hook は不要なはず。代わりに、virtualbox-source を明示的にインストールするのかな。
    virtualbox-ext-oracle はUSB2.0 サポートのために必要です。
    sudo pacman -S sudo pacman -S virtualbox
    sudo gpasswd -a username vboxusers
    packer -S virtualbox-hook virtualbox-ext-oracle
    sudo vboxbuild
    sudo modprobe vboxdrv
    sudo modprobe vboxnetflt
    これでRun Everything から virtaulbox を起動できます。使用頻度が高くなる場合は、vboxdrv とvboxnetflt をいちいち手動でロードするのは面倒なので、rc.conf に登録します。
    gksu leafpad /etc/rc.conf &
    MODULES=します。
    MODULES=(acpi-cpufreq vboxdrv vboxnetflt)
  3. Windows XP のインストール
  4. 新規の仮想マシンを作った後、設定からシステム及びディスプレイタブにあるアクセラレーション系のチェックボックスにチェックを入れておけば他はあまりやることはないはずです。
    HDD はそれなりに使うなら20GByte 位あげるか、後でDドライブ追加でしょうか。
    ストレージのCD欄で、Windows XP のiso ファイルを指定してやります。
    Windows XP のCD に限らず、CD のiso 化は、Linux なら簡単で、
    dd if=/dev/cdrom of=Windows_xp.iso
    みたいに行えます。後々楽なのでOffice 等も全てiso 化しました。
    後は仮想マシンを再生して普通にインストールするだけ。

    無事起動したら、マイクロソフトのダウンロードセンターより、Windows XP Service Pack 3 - ISO-9660 CD イメージ ファイルをダウンロードして来てます。

    ※ネットワークインストールパッケージでも問題無いです。ネットワークインストールパッケージでインストールした場合には、C:\WINDOWS\ServicePackFiles\ServicePackCache\i386 以下のインストールされたファイルがバックアップされます。

    ダウンロードしてきたiso イメージを、virtualbox のデバイスメニューからマウントして、sp3 をインストールします。

    SP3 のインストール後の再起動が終わったら、スタートメニューよりWindows Update を。

    ウイルス対策ソフトのインストールをします。今回は以前から興味があったJustインターネットセキュリティーを入れてみました。動作は軽いですね。広告が表示されるのが嫌なら金払え、は悪くないシステムだと思います。

    Host +D で Virtualbox のGuest additions をインストールします。ホストとの共有フォルダが有効になることと、ディスプレイドライバがインストールされるのでほぼ必須と言っていいでしょうね。DirectX を有効化するためには、セーフモードで起動してインストールする必要があります。
    Virtualbox のマニュアルにはWindows を再起動してF8 押しっぱなしにしていればセーフモードに入れるという記述がありますが、押しっぱなしではダメでした。
    一旦電源断 → 起動時にF8 を連打 でセーフモードを選択する画面に行けました。

    DirectX エンド ユーザー ランタイム Web インストーラをダウンロードして来てインストールします。
    この状態だと、sp3 で入れたDirectX のファイルが古いファイルで上書きされてしまうのでdxdiag で一部ファイルが古いという警告状態になるのですが、

    sp3 のファイルに入れ替えるとDirect 3D は使えなくなります。

    一応Direct 3D が使えなくなってもいいやという人(Direct Draw は使えます)は以下の方法でsp3 のファイルに戻せます。
    1. Windows XP SP3 のiso(xpsp3_5512.080413-2113_jpn_x86fre_spcd.iso) を vitualbox の共有ドライブに置きます。
    2. Windows 側でiso を解凍できるソフトがあればそれを使ってもいいですけど、ない場合にはホストのLinux 使う方が速いので。

    3. ホスト側で、iso ファイルをfile-roller で開きます。
    4. 変な関連付けしていない場合には、ダブルクリックすれば勝手に立ち上がると思いますが。
      最初に、WINDOWSXP-KB936929-SP3-X86-JPN.exe を取り出します。
      取り出したWINDOWSXP-KB936929-SP3-X86-JPN.exe を再度file-roller で開き、
      i386/d3d8.dl_
      i386/d3d9.dl_
      の2つのファイルを取り出します。
      次に、ターミナルから、
      7za x d3d8.dl_
      7za x d3d9.dl_
      解凍された2つのファイルは、Windows XP 側で共有フォルダからローカルフォルダに移しておきます。

    5. Windows XP をセーフモードで起動します。
    6. 起動したら、上で解凍しておいたd3d8.dll とd3d9.dll の2つのファイルを
      C:\WINDOWS\system32
      C:\WINDOWS\system32\dllcache
      にコピーします。

    7. 再起動します。

  5. Direct X の動作確認
  6. スタート - ファイル名を指定して実行で、
    dxdiag
    を起動して、ディスプレイタブのDirect X の機能にあるDirect Draw とDirect 3D のアクセラレータ機能が共に利用可能になっていることを確認します。
    利用可能になっていない場合は、

    ・VM の設定でアクセラレータ機能が無効になっている。
    ・ホスト側のハードウェアがそもそもアクセラレータ機能をサポート出来ていない
    ・sp3 のファイルに戻してしまった(Direct 3D のみ使用出来ない場合)

    のいずれかだと思います。

  7. 使うアプリケーションのインストール
  8. 秀丸、steam、office xp の3つを入れましたが、特に問題なく動作しています。
    office がxp なのは単に手元に空いているライセンスがあっただけで、それ以上の深い意味はないです。
    steam で軽いゲームを動かしてみましたが、

    ・DirectX7 を使っているゲームはダメ。
    ・当然重い3Dはダメ。もっともホストでWindows を運用したとしてもIntel HD3000 で重い3Dなんて出来ないですが。

    という2点以外は問題なかったですね(ゲームに関しては問題大アリですけど)。持っているカジュアルゲームで意外にDirectX7 を使っているのが多いのが痛かったです・・・

ホストが優秀なので、A8-3850 + F1A75-V PRO + Windows 7 Home 64bit な環境に作ったWindows XP よりも圧倒的に軽くて全ての動作がサクサク進みます。 A8 環境はHDD なので、SSD な環境と比べるのは多少かわいそうですが、Enlightenmet の軽さとCore-i5 の優秀さが実感できます。
(ただし、Arch をホストに使ってVM 運用するのは本来最悪の選択の1つです。なんせホストがいつ何時不安定になるかわからない訳なのでw)

メモリも8GByte あるので、2GByte 位までなら安心してVM に割り当てれます。
これで消費電力がフルでも40W、アイドル状態だと12W ですからねぇ。A8 はVGA の能力が桁違いなので単純に比較は出来ないですけど、3DゲームさえしなければSandy-bridge は敵なしですね。

自分にとっては、もうしばらく前から

Geforce > Intel >>> 超えられない壁 >>> Radeon

(ただし、消費電力を重視する場合にはIntel 一択)だった訳ですが、これでCPU もIntel マンセーになっちゃうと、またIntel が油断して困ったちゃんな製品を出して来る未来が・・・。
AMD もIntel に多少は緊張感を与える位には頑張って欲しいです。

(NVIDIA はオープンソースなドライバを使わない場合ですが。プロプラなドライバを使うと非常に良いのがNVIDIA、オープンソースなドライバならAMDの方が多分上です。そのオープンソースなドライバが非常によろしくないという現実がある訳ですが。オープンソースなドライバならINTEL 最強です)

« Bodhi 1.4 | トップページ | XP上でViso 2000 をアンインストール方法 »

Arch Linux」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/28800/54289929

この記事へのトラックバック一覧です: VirtualBox:

« Bodhi 1.4 | トップページ | XP上でViso 2000 をアンインストール方法 »