wiki:TipAndDoc/VM/VMware/Workstation

Version 30 (modified by mitty, 13 years ago) (diff)

--

VMware Workstation for Linux without X

  • X11Forwardingを用いることで、Xが入っていないホストでも動作可能
  • インストーラをX11forward経由で起動する場合、root権限が必要となる関係からroot login via sshが必要となる
  • CygwinのX Serverでも十分実用に耐える
  • 以下のようなエラーが出て、ゲストを起動できないことがある
    Could not open /dev/vmmon: No such file or directory.
    
    • lsmod | grep vm で何も出ない場合は、sudo service vmware start

packages

  • X11forwardingでVMware WSを使用する際に必要となるパッケージ
  • Ubuntu 10.04.2 x86_64 (Linux hostname 2.6.32-31-generic #61-Ubuntu SMP Fri Apr 8 18:25:51 UTC 2011 x86_64 GNU/Linux)
  • build-essential
    • kernel moduleをbuildするために必要
  • gconf2
    bash: gconftool-2: command not found
    
  • x11-utils
    LOG NOT INITIALIZED | Unable to spawn xprop to determine whether accessibility is enabled or not.
    
  • libxrandr2
    /usr/lib/vmware/bin/vmware-vmx: error while loading shared libraries: libXrandr.so.2: cannot open shared object file: No such file or directory
    
    • /tmp/vmware-mitty/ui-4506.log
      May 26 02:19:44.284: vmui| VMHSHostConnectVMX: Failed to connect to pipe vmxcf80cfad64a6ae2f: No such file or directory
      
    • Unable to change VM power state

not required

  • 必須ではない(と思われる)パッケージ
    • 無くてもVMの起動そのものには支障がない模様
  • libglu-dev (Provided by: libglu1-mesa-dev)
    • Failed to load OpenGL utility (GLU) library.
    • もっとも、GLUを入れたからといって必ず3D対応になるわけではない模様
  • libasound2
    Failed to load Alsa sound library: libasound.so: cannot open shared object file: No such file or directory.
    Alsa sound will not be used.
    
    • Failed to load Alsa sound library

input underscore to Guest OS

  • 元々、次のような注意がゲスト起動のたびに表示される

  • アンダースコア以外の入力は正常
    • 半角全角等も問題ない
    • '_' (Shift+\) は '|' になる

.vmware/config

  • mitty@hades:~$ cat > .vmware/config
    xkeymap.language = jp106
    xkeymap.keycode.211 = 0x073
    
  • mitty@hades:~$ sudo service vmware restart

kernel update

  • ホストのカーネルがバージョンアップしバージョンナンバーが変わるとカーネルモジュールのリビルドが必要
  • vmwareコマンドでGUIを起動しようとすると、自動でリビルドが走る
    • rootで実行しないといけない場合がある模様

kernel.sched_compat_yield

  • マルチコア(マルチCPU)構成のゲストを起動しようとすると、以下の質問をされる

    The host's Linux kernel yield() functionality is disabled. Multiprocessor virtual machines exhibit degraded performance without yield(). Choose 'OK' to enable the sysctl 'kernel.sched_compat_yield' or 'Cancel' to continue without yield().

    • ここでOKとすると、一時的に /proc/sys/kernel/sched_compat_yield = 1 となるが、再起動するとこの設定は揮発する
    • /etc/sysctl.d/30-vmware-player
      kernel.sched_compat_yield=1
      
    • ファイル名に.confが付かないと読み込まれないので、ファイル名を変更する
    • $ sudo mv /etc/sysctl.d/30-vmware-player /etc/sysctl.d/30-vmware-player.conf

Promiscuous Mode

  • デフォルトではPromiscuous Modeは仮想NICに対して使用出来ない
  • vmware:287 Using Virtual Ethernet Adapters in Promiscuous Mode on a Linux Host

    VMware software does not allow the virtual Ethernet adapter to go into promiscuous mode unless the user running the VMware software has permission to make that setting. This follows the standard Linux practice that only root can put a network interface into promiscuous mode.

    One way to do this is to create a new group, add the appropriate users to the group, and give that group read/write access to the appropriate device. These changes need to be made on the host operating system as root (su). For example:

    chgrp newgroup /dev/vmnet0
    chmod g+rw /dev/vmnet0
    

    If you want all users to be able to set the virtual network adapter (/dev/vmnet0 in our example) to promiscuous mode, you can simply run the following command on the host operating system as root:

    chmod a+rw /dev/vmnet0
    
    • Hostを再起動すると元に戻るので注意(udevの設定をする必要があると書かれているが未検証)

Debian 6.0

  • 必要なパッケージ
    • build-essential gconf2 x11-utils ia32-libs libxrandr2 libgtkmm-2.4-1c2a libglu-dev libasound2 ttf-vlgothic linux-headers-$(uname -r)
  • VMware Workstation 8 on Debian 6.0 x86_64では、insservまわりでエラーが出る
    • aptitude install ... で次のようなエラー
    • $ sudo aptitude install -R mdadm
      (snip)
      
      insserv: warning: script 'S50vmware-USBArbitrator' missing LSB tags and overrides
      insserv: warning: script 'vmware' missing LSB tags and overrides
      insserv: warning: script 'vmware-workstation-server' missing LSB tags and overrides
      insserv: warning: script 'vmware-USBArbitrator' missing LSB tags and overrides
      insserv: There is a loop at service munin-node if started
      insserv: There is a loop between service vmware-USBArbitrator and checkroot if started
      
      (snip)
      
  • munin-nodeと干渉した
    • /etc/insserv/overrides$ sudo insserv -r vmware-workstation-server
      insserv: warning: script 'vmware-workstation-server' missing LSB tags and overrides
      insserv: There is a loop between service munin-node and vmware-workstation-server if stopped
      insserv:  loop involving service vmware-workstation-server at depth 2
      insserv:  loop involving service munin-node at depth 1
      insserv: Stopping vmware-workstation-server depends on munin-node and therefore on system facility `$all' which can not be true!
      insserv: exiting now without changing boot order!
      
    • いったんmunin-nodeをremoveしてからinsservするか(スマートには回避出来ず…)
    • munin-nodeをインストールする前にVMware WSをインストールしておくことが必要
  • |VMware||Debian| VMwarePlayerの影響がinsservが引っかかる - わんこ日記(2011-11-22)

3.2.0-0.bpo.2-amd64

  • $ wget http://weltall.heliohost.org/wordpress/wp-content/uploads/2012/01/vmware802fixlinux320.tar.gz
  • $ cd /usr/lib/vmware/modules/source/
  • /usr/lib/vmware/modules/source$ sudo tar xf vmnet.tar
  • /usr/lib/vmware/modules/source$ sudo tar xzf /home/mitty/vmware802fixlinux320.tar.gz
  • /usr/lib/vmware/modules/source$ sudo patch -p1 < vmware3.2.0.patch
    patching file vmnet-only/filter.c
    patching file vmnet-only/netif.c
    patching file vmnet-only/userif.c
    
  • /usr/lib/vmware/modules/source$ sudo tar cf vmnet.tar vmnet-only/
  • vmware を再起動 -> 自動でモジュールがビルドされる

Attachments (14)

Download all attachments as: .zip