VMware (简体中文)

From ArchWiki
Revision as of 09:34, 15 June 2012 by Kynikos.bot (Talk | contribs) (rm temporary i18n template)

Jump to: navigation, search

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary end


附注: please use the first argument of the template to provide more detailed indications.

本文关于在 Arch 中安装 VMware,你也许想寻找的是 在 VMware 中安装 Arch Linux.


VMware Workstation/Player

注意: VMware Workstation/Player 不会 被 pacman 管理,因为这些文件不是用它安装的。

想要在 Linux 中安装 Workstation 或者 Player 使用一个 bundle:

1. Download VMware Workstation (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 to:


5. (Optional) Enter the directory path to the Integrated Virtual Debugger for Eclipse, if it is installed.

6. You will now get an error about the "rc*.d style init script" not being set. This can, however, be safely ignored.

7. Create links for the daemons:

# ln -s /etc/init.d/vmware /etc/rc.d/vmware
# ln -s /etc/init.d/vmware-workstation-server /etc/rc.d/vmware-workstation-server

VMware Server

注意: VMware 在2011-06-30结束了对 VMware Server 的支持。

1. Install vmware-serverAUR from the AUR.

2. Install vmware-server-consoleAUR or bin32-vmware-server-consoleAUR, if on a 64-bit Arch.

3. Download the image from the VMware website.

4. Copy the image to the build directory.

5. Finish building.


VMware 补丁

注意: VMware Workstation 8 和 VMware Player 4 只需要对 3.1 内核或以上版本打补丁。
小贴士: 在 AUR 中有一个包 vmware-patchAUR 可以自动化打补丁的过程。

3.2/3.3 内核

The patch for 3.2 kernels is available here:

$ cd /tmp
$ curl -O http://weltall.heliohost.org/wordpress/wp-content/uploads/2011/11/vmware8linux32fix.tar.gz
$ tar -xvzf vmware8linux32fix.tar.gz
# ./patch-modules_3.1.0.sh

3.1 内核

With VMware Workstation 8 or VMware Player 4 you can use this script:

$ cd /tmp
$ curl -O http://weltall.heliohost.org/wordpress/wp-content/uploads/2011/09/vmware8linux31fix.tar.gz
$ tar -xvzf vmware8linux31fix.tar.gz
# ./patch-modules_3.1.0.sh

With older VMware versions you need to use this one instead:

$ cd /tmp
$ curl -O http://weltall.heliohost.org/wordpress/wp-content/uploads/2011/08/fullvmwarelinux310patch.tar.gz
$ tar -xvzf fullvmwarelinux310patch.tar.gz
# ./patch-modules_2.6.39.sh

VMware 模块

8. At this point you would want to install the modules. First you need to either change the lsmod binary path in /etc/rc.d/vmware from /sbin/lsmod to /bin/lsmod:

# sed -i "s|/sbin/lsmod|/bin/lsmod|g" /etc/rc.d/vmware

or create a symlink with:

# ln -s /bin/lsmod /sbin/lsmod

9. Now you can install the modules. You can do this by either launching VMware and letting it install the modules with the GUI or executing:

# vmware-modconfig --console --install-all

10. (Optional) Add vmware to the DAEMONS array in /etc/rc.conf so that the service is started automatically on boot.

11. Now, open your VMware Workstation (vmware in the console) or VMware Player (vmplayer in the console) to configure & use!

警告: 当升级内核时你需要使用下面命令重新编译 VMware 模块:
# vmware-modconfig --console --install-all


提取 VMware BIOS

To extract the VMware BIOS, which can be manipulated and later used with your virtual machines:

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

使用修改的 BIOS

If and when you decide to modify the extractd 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"


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


If printing from the guest OS is not working there may be a permission problem with the ThinPrint CUPS filter (thnucups), which is used by VMware. First make sure your /var/log/cups/error_log says something like:

E [22/Nov/2010:14:10:11 -0800] Unable to execute /usr/lib/cups/filter/thnucups: insecure file permissions (0104755)

In which case you may try:

# chmod u-sw /usr/lib/cups/filter/thnucups
# rc.d restart cupsd

The installer fails to start

If you just get back to the prompt when opening the .bundle, then you probably have an old 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

USB devices not recognized by VMware workstation 8

For some reason, some installations are missing vmware-USBArbitrator script. Adding the script back manually can solve the problem. See this forum post for more information



# vmware-installer -l


# vmware-installer -u <vmware-product>

/etc/rc.d 中手动加入的符号链接 需要手动删除:

# unlink /etc/rc.d/vmware
# unlink /etc/rc.d/vmware-workstation-server

记得在/etc/rc.conf DAEMONS 列表中同时删除 vmware.