読者です 読者をやめる 読者になる 読者になる

TenForward

技術ブログ。はてなダイアリーから移転しました

Plamo64-1.0 で VMware Player 4.0.2

最近 libvirt 経由の KVM で楽々,という感じでしかデスクトップで使っている Plamo Linux 上では仮想マシンは使っていませんでしたが,ML で質問があったのをきっかけに試してみました.ハマり所満載ですが,一応動きましたのでメモしておきます.

前提

  • Plamo64-1.0 + 2012/02/17 辺りまでの更新パッケージを適用.以下辺りは少し関係するのかも?
    • gtk+-2.24.10
    • gdk_pixbuf-2.25.0
  • 手元でカーネルを勝手に 3.2.5 に上げています.3.1.4 とか 3.1.5 だと,後述するパッチ当ての所のパッチが違うものになるのかもしれません.

インストール

インストーラをダウンロードしてきて,そのまま実行したらまずエラーが出ます.ここでのキーポイントは二つ

  • LANG=C で実行する
  • エラーを無視して強引にインストールする
# sh VMware-Player-4.0.2-591240.x86_64.bundle --ignore-errors

vmware の起動スクリプトが /etc/init.d にインストールされるので,

# cd /etc/rc.d/init.d
# ln -s /etc/init.d/vmware .

みたいにしておきます.もしくはインストーラ実行前に /etc/init.d -> /etc/rc.d/init.d というリンクを張っておいても良いのかも?

パッチ当て

パッチがありますので,適用します.以下のサイトに vmware802fixlinux320.tar.gz というのがありますので,それを持ってきます.

# tar xvf vmware802fixlinux320.tar.gz
# ./patch-modules_3.2.0.sh
  (延々モジュールの再コンパイルが始まります)
Starting VMware services:
   Virtual machine monitor                                             done
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Blocking file system                                                done
   Virtual ethernet                                                    done
   VMware Authentication Daemon                                        done
   Shared Memory Available                                             done


All done, you can now run VMWare Player.
Modules sources backup can be found in the '/usr/lib/vmware/modules/source-player4.0.2-2012-02-20-14:46:24-backup' directory

これで必要モジュールのコンパイルとロードが済んでいるはずです./etc/rc.d/init.d の vmware スクリプトのリンクを忘れたりした場合は

# /etc/init.d/vmware stop
# vmware-modconfig --console --install-all
# /etc/init.d/vmware start

こんな風にやれば同じです.

vmplayer起動

これで準備が済んだということで颯爽と vmplayer コマンドを実行しますが... (ここでも LANG=C じゃないとダメなのに注意!!)

$ LANG=C vmplayer
Logging to /tmp/vmware-karma/modconfig-16638.log

(vmware-modconfig:16638): Gtk-WARNING **: GModule (/usr/lib64/gtk-2.0/2.10.0/engines/libxfce.so) initialization check failed: Gtk+ version too old (micro mismatch)
  : (略: 延々 gtk+ のエラーが出る)
filename:       /lib/modules/3.2.5-plamo64/misc/vmmon.ko
supported:      external
license:        GPL v2
description:    VMware Virtual Machine Monitor.
author:         VMware, Inc.
depends:        
vermagic:       3.2.5-plamo64 SMP preempt mod_unload 
filename:       /lib/modules/3.2.5-plamo64/misc/vmnet.ko
supported:      external
license:        GPL v2
description:    VMware Virtual Networking Driver.
author:         VMware, Inc.
depends:        
vermagic:       3.2.5-plamo64 SMP preempt mod_unload 
filename:       /lib/modules/3.2.5-plamo64/misc/vmblock.ko
supported:      external
version:        1.1.2.0
license:        GPL v2
description:    VMware Blocking File System
author:         VMware, Inc.
srcversion:     2032DC4ED4145E9B11DDC0C
depends:        
vermagic:       3.2.5-plamo64 SMP preempt mod_unload 
parm:           root:The directory the file system redirects to. (charp)
filename:       /lib/modules/3.2.5-plamo64/misc/vmci.ko
supported:      external
license:        GPL v2
version:        9.1.18.0
description:    VMware Virtual Machine Communication Interface (VMCI).
author:         VMware, Inc.
srcversion:     F659B534EA5CC5FFD4A08BF
alias:          pci:v000015ADd00000740sv*sd*bc*sc*i*
depends:        
vermagic:       3.2.5-plamo64 SMP preempt mod_unload 
parm:           disable_host:Disable driver host personality - (default=0) (bool)
parm:           disable_guest:Disable driver guest personality - (default=0) (bool)
parm:           disable_msi:Disable MSI use in driver - (default=0) (bool)
parm:           disable_msix:Disable MSI-X use in driver - (default=0) (bool)
filename:       /lib/modules/3.2.5-plamo64/misc/vsock.ko
supported:      external
alias:          vmware_vsock
license:        GPL v2
version:        9.1.1.0
description:    VMware Virtual Socket Family
author:         VMware, Inc.
srcversion:     5A37036862692504058A712
depends:        vmci
vermagic:       3.2.5-plamo64 SMP preempt mod_unload 
filename:       /lib/modules/3.2.5-plamo64/misc/vmmon.ko
supported:      external
license:        GPL v2
description:    VMware Virtual Machine Monitor.
author:         VMware, Inc.
depends:        
vermagic:       3.2.5-plamo64 SMP preempt mod_unload 
process 16633: Attempt to remove filter function 0x7f3c62d6f420 user data 0x7f3c75e7b0a0, but no such filter has been added
  D-Bus not built with -rdynamic so unable to print a backtrace
アボートしました

がーん,なんか起動しません ^^;

すごく後ろ向きな解決な気がしますが,上記に従って,今は Plamo 公式パッケージとしては存在しない hal をインストールします.04_xapps/old 以下に一応古い hal パッケージがあって,それが動きます.

# /etc/rc.d/init.d/hal start

そこで再度 LANG=C vmplayer で実行すると,ハイ!

仮想マシンの起動までは確認してないので起動しなかったりして... :p

まあ kernel と vmware のバージョンが変わる度に苦労するんだったら,VirtualBox とか KVM でいいような気がします.VirtualBox がすんなり動くのかどうかはしりませんが.(どちらも vmdk ファイル読めますし)

(2012/03/12 追記)
plamo ML の方で無事 Window 8 consumer preview が起動したとの報告がありました.:)