Difference between revisions of "VMware"
m (→3.4 kernels) |
(→VMware module patches and installation) |
||
Line 60: | Line 60: | ||
VMware Workstation 8 and Player 4 only support kernels up to 3.0. Any later requires patching of the VMware modules. These patches will also install the modules afterwards by executing {{ic|vmware-modconfig --console --install-all}}. | VMware Workstation 8 and Player 4 only support kernels up to 3.0. Any later requires patching of the VMware modules. These patches will also install the modules afterwards by executing {{ic|vmware-modconfig --console --install-all}}. | ||
{{Note|Due to different VMware versions, you may need to set the {{ic|vmreqver}} or {{ic|plreqver}} variable for VMware Workstation or Player respectively in the {{ic|patch-modules_3.X.0.sh}} script.}} | {{Note|Due to different VMware versions, you may need to set the {{ic|vmreqver}} or {{ic|plreqver}} variable for VMware Workstation or Player respectively in the {{ic|patch-modules_3.X.0.sh}} script.}} | ||
+ | {{Note|The latest [http://communities.vmware.com/community/vmtn/beta/workstationtp2012 Technology Preview] of VMware Workstation (July 2012) supports kernels up to 3.5.}} | ||
− | ====3.4 kernels==== | + | ====3.5 / 3.4 kernels==== |
The patch for 3.4 kernels is available [http://weltall.heliohost.org/wordpress/2012/04/01/vmware-workstation-8-0-2player-4-0-2-and-7-1-x3-1-x-fix-for-linux-kernel-3-4-0/ here]: | The patch for 3.4 kernels is available [http://weltall.heliohost.org/wordpress/2012/04/01/vmware-workstation-8-0-2player-4-0-2-and-7-1-x3-1-x-fix-for-linux-kernel-3-4-0/ here]: | ||
Revision as of 09:49, 27 July 2012
zh-CN:VMware Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end
This article is about installing VMware in Arch Linux; you may also be interested in Installing Arch Linux in VMware.
Contents
- 1 Installation
- 2 Configuration
- 3 Finishing up
- 4 Tips & Tricks
- 5 Troubleshooting
- 5.1 Could not open /dev/vmmon: No such file or directory.
- 5.2 Kernel headers for version 3.x-xxxx were not found. If you installed them[...]
- 5.3 USB devices not recognized
- 5.4 process XXXX: Attempt to remove filter function[...]
- 5.5 The installer fails to start
- 5.6 Incorrect login/password when trying to access VMware remotely
- 5.7 Issues with ALSA output
- 6 Uninstallation
Installation
1. Download the latest VMware Workstation or VMware Player (you may also try the testing (Beta/RC) versions).
2. Start the installation (--console
uses terminal instead of the GUI):
# chmod +x VMware-<edition>-<version>.<release>.<architecture>.bundle # ./VMware-<edition>-<version>.<release>.<architecture>.bundle --console
3. Read & accept the EULA to continue.
4. Set System service scripts directory
to /etc/rc.d
5. (Optional) If Eclipse is installed, enter the directory path to the Integrated Virtual Debugger.
6. You will now get an error about the "rc*.d style init script directories"
not being set. This can, however, be safely ignored.
7. Create links for the daemons:
# ln -s /etc/init.d/vmware /etc/rc.d/ # ln -s /etc/init.d/vmware-workstation-server /etc/rc.d/
Configuration
Module tool paths
8. To make use of the module tools of updated kmod
in VMware Workstation you need to either change the binary paths
of all the *mod*
stuff (excluding modprobe
) in /etc/init.d/vmware
and /usr/bin/vmware
from /sbin/
to /usr/bin/
:
# perl -p -i -e 's|/sbin/(?!modprobe)|/usr/bin/|g' /etc/init.d/vmware # sed -i "s|/sbin/|/usr/bin/|g" /usr/bin/vmware
with VMware Player you need to edit /usr/bin/vmplayer
instead:
# sed -i "s|/sbin/|/usr/bin/|g" /usr/bin/vmplayer
As a long-term solution you can also just create symlinks with:
# for i in {ins,ls,rm}mod modinfo; do ln -s /usr/bin/$i /sbin/$i; done
VMware module patches and installation
VMware Workstation 8 and Player 4 only support kernels up to 3.0. Any later requires patching of the VMware modules. These patches will also install the modules afterwards by executing vmware-modconfig --console --install-all
.
vmreqver
or plreqver
variable for VMware Workstation or Player respectively in the patch-modules_3.X.0.sh
script.3.5 / 3.4 kernels
The patch for 3.4 kernels is available here:
$ cd /tmp $ curl -O http://weltall.heliohost.org/wordpress/wp-content/uploads/2012/04/vmware802fixlinux340.tar.gz $ tar -xvf vmware802fixlinux340.tar.gz $ sed -i "s|0.2|0.4|g" patch-modules_3.4.0.sh # ./patch-modules_3.4.0.sh
3.3 / 3.2 kernels
The patch for both 3.2 and 3.3 kernels is available here and here:
$ cd /tmp $ curl -O http://weltall.heliohost.org/wordpress/wp-content/uploads/2012/01/vmware802fixlinux320.tar.gz $ tar -xvf vmware802fixlinux320.tar.gz # ./patch-modules_3.2.0.sh
The patches for older VMware Workstation 8 and Player 4 versions can be found here and here.
3.1 kernels
The patch for 3.1 kernels is available here:
$ cd /tmp $ curl -O http://weltall.heliohost.org/wordpress/wp-content/uploads/2011/09/vmware8linux31fix.tar.gz $ tar -xvf vmware8linux31fix.tar.gz # ./patch-modules_3.1.0.sh
Finishing up
9. (Optional) Add vmware
to the DAEMONS array in /etc/rc.conf
so that the service is started automatically on boot.
10. Now, open your VMware Workstation (vmware
in the console) or VMware Player (vmplayer
in the console) to configure & use!
# vmware-modconfig --console --install-allFailure to do so may result in a system crash upon powering up virtual machines.
Tips & Tricks
Entering the Workstation License Key from terminal
# /usr/lib/vmware/bin/vmware-vmx-debug --new-sn XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Where XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
is your license key.
Extracting the VMware BIOS
$ objcopy /usr/lib/vmware/bin/vmware-vmx -O binary -j bios440 --set-section-flags bios440=a bios440.rom.Z $ perl -e 'use Compress::Zlib; my $v; read STDIN, $v, '$(stat -c%s "./bios440.rom.Z")'; $v = uncompress($v); print $v;' < bios440.rom.Z > bios440.rom
Using the modified BIOS
If and when you decide to modify the extracted BIOS you can make your virtual machine use it by moving it to ~/vmware/<Virtual machine name>
:
$ mv bios440.rom ~/vmware/<Virtual machine name>/
then adding the name to the <Virtual machine name>.vmx
file:
~/vmware/<Virtual machine name>/<Virtual machine name>.vmx
bios440.filename = "bios440.rom"
Troubleshooting
Could not open /dev/vmmon: No such file or directory.
The full error is:
Could not open /dev/vmmon: No such file or directory. Please make sure that the kernel module `vmmon' is loaded.
This means that at least the vmmon
VMware service is not running. All VMware services can be started with:
# rc.d start vmware
Kernel headers for version 3.x-xxxx were not found. If you installed them[...]
Install them with:
# pacman -S linux-headers
USB devices not recognized
For some reason, some installations are missing the vmware-USBArbitrator
script. To readd it manually see this forum post.
You may also manually extract the VMware bundle and copy the vmware-USBArbitrator
script from <destination folder>/vmware-usbarbitrator/etc/init.d/
to /etc/rc.d/
(which seems to be its default installation folder instead of /etc/init.d/
):
$ ./VMware-<edition>-<version>.<release>.<architecture>.bundle --console --extract /tmp # cp /tmp/vmware-usbarbitrator/etc/init.d/vmware-USBArbitrator /etc/rc.d/
process XXXX: Attempt to remove filter function[...]
The full error is, for example:
process 6094: Attempt to remove filter function 0xadcc96f0 user data 0xb795aba0, but no such filter has been added D-Bus not built with -rdynamic so unable to print a backtrace Aborted
This means that the hal daemon is not running. Install halAUR from the AUR and start the daemon with:
# hald
The installer fails to start
If you just get back to the prompt when opening the .bundle
, then you probably have a deprecated or broken version of the VMware installer and you should remove it (you may also refer to the uninstallation section of this article):
# rm -r /etc/vmware-installer
Incorrect login/password when trying to access VMware remotely
VMware Workstation 8 provides the possibility to remotely manage Shared VMs through the vmware-workstation-server
service. However, this will fail with the error "incorrect username/password"
due to incorrect PAM configuration of the vmware-authd
service. To fix it, edit /etc/pam.d/vmware-authd
like this:
/etc/pam.d/vmware-authd
#%PAM-1.0 auth required pam_unix.so account required pam_unix.so password required pam_permit.so session required pam_unix.so
and restart VMware services with:
# rc.d restart vmware vmware-workstation-server
Now you can connect to the server with the credentials provided during the installation.
Issues with ALSA output
The following instructions from Bankim Bhavsar's wiki show how to manually adjust the ALSA output device in a VMware .vmx
file. This might help with quality issues or with enabling proper HD audio output:
- Suspend/Power off the VM.
- Run
aplay -L
- If you are interested in playing 5.1 surround sound from the guest, look for
surround51:CARD=vendor-name,DEV=num
. If you are experiencing quality issues, look out for a line starting with front. - Open the
<Virtual machine name>.vmx
config file of the VM in a text editor, located under~/vmware/<Virtual machine name>/
, and edit thesound.fileName
field, e.g.:sound.fileName="surround51:CARD=Live,DEV=0"
. Ensure that it also readssound.autodetect="FALSE"
. - Resume/Power on the VM.
Uninstallation
To uninstall VMware you need the product name (either vmware-workstation
or vmware-player
). To list all the installed products:
# vmware-installer -l
and uninstall with:
# vmware-installer -u <vmware-product>
Manually included symlinks have to be removed manually in /etc/rc.d/
and /sbin/
:
# rm /etc/rc.d/vmware /etc/rc.d/vmware-workstation-server /sbin/insmod /sbin/lsmod /sbin/modinfo /sbin/rmmod
Remember to also remove vmware
from the /etc/rc.conf
DAEMONS
array.