← Older revision
Revision as of 22:16, 17 June 2013
Line 59:
Line 59:
VMware Workstation 9 and Player 5 both support kernels up to 3.9.
VMware Workstation 9 and Player 5 both support kernels up to 3.9.
+
+
==== Patch for fuseless systems (optional) ====
+
+
Systems that don't have {{pkg|fuse}} will not be able to use the {{ic|/usr/lib/vmware/bin/vmware-vmblock-fuse}} client. These systems will fall back to the original {{ic|vmblock.ko}} module, which won't load due to the symbol {{ic|putname}} being replaced by {{ic|__putname}}:
+
+
{{hc|# modprobe vmblock|
+
modprobe: ERROR: could not insert 'vmblock': Unknown symbol in module, or unknown parameter (see dmesg)
+
}}
+
{{hc|$ dmesg
|
tail -1|
+
[ 8896.222258] vmblock: Unknown symbol putname (err 0)
+
}}
+
+
The patch can be found [http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-emulation/vmware-modules/files/264-putname.patch?&view=markup here]:
+
+
$ cd /tmp
+
$ curl -O http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-emulation/vmware-modules/files/264-putname.patch
+
$ cd /usr/lib/vmware/modules/source
+
# tar -xvf vmblock.tar
+
# patch -p1 -i /tmp/264-putname.patch
+
# tar -cf vmblock.tar vmblock-only
+
# rm -r vmblock-only
+
# vmware-modconfig --console --install-all
+
{{Note|
{{Note|
−
*
This section
is
currently
useful only for VMware Workstation and Player lower than 9.0.2 and 5.0.2, respectively.
+
*
The following
is useful only for VMware Workstation and Player lower than 9.0.2 and 5.0.2, respectively.
* 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.
* 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.
}}
}}
Line 82:
Line 105:
# ./patch-modules_3.8.0.sh
# ./patch-modules_3.8.0.sh
−
==== 3.5 / 3.6 / 3.7 kernels ====
+
==== 3.5 / 3.6 / 3.7 kernels
(optional)
====
A change in the format of the kernel exception table introduced back in [http://repo.or.cz/w/linux-2.6.git/commit/706276543b699d80f546e45f8b12574e7b18d952 April] affecting the {{ic|vmmon}} module is known to cause crashes in [http://communities.vmware.com/thread/400616 Fedora guests]. The patch [http://communities.vmware.com/message/2092356#2092356 here] creates a portable exception table (packaged together with the script [http://communities.vmware.com/message/2103172#2103172 in here], which will also reload the {{ic|vmmon}} module):
A change in the format of the kernel exception table introduced back in [http://repo.or.cz/w/linux-2.6.git/commit/706276543b699d80f546e45f8b12574e7b18d952 April] affecting the {{ic|vmmon}} module is known to cause crashes in [http://communities.vmware.com/thread/400616 Fedora guests]. The patch [http://communities.vmware.com/message/2092356#2092356 here] creates a portable exception table (packaged together with the script [http://communities.vmware.com/message/2103172#2103172 in here], which will also reload the {{ic|vmmon}} module):
Line 266:
Line 289:
{{Note|Upgrading the kernel and the headers will require you to boot to the new kernel to match the version of the headers. This is a relatively common error.}}
{{Note|Upgrading the kernel and the headers will require you to boot to the new kernel to match the version of the headers. This is a relatively common error.}}
−
−
=== Host-guest interactions not working ===
−
−
Symptoms: no drag and drop between host and guest, Unity quirkiness, possibly others.
−
−
Current versions of Workstation and Player prefer a FUSE-based client, {{ic|vmware-vmblock-fuse}}, over the older kernel module {{ic|vmblock.ko}}. If the FUSE client fails to load, VMware falls back to the module. If the module failed to compile for some reason, the above symtoms will appear.
−
−
Although Player and Workstation ship with an included {{ic|libfuse.so.2}}, this library doesn't work. During startup, the following is called:
−
/usr/lib/vmware/bin/vmware-vmblock-fuse -o subtype=vmware-vmblock,default_permissions,allow_other /var/run/vmblock-fuse
−
−
Even though the directory exists, the call fails with this error, visible only if you invoke the above by hand:
−
fuse: failed to exec fusermount: No such file or directory
−
−
There is likely some kind of binary incompatibility here. Fortunately, a workaround exists: simply install Arch's current {{pkg|fuse}} library. In fact, it might be a good thing to ensure you've installed all of the requirements listed for {{pkg|open-vm-tools}} even if you're using VMware's tools instead.
−
−
I noticed in my testing that the fallback method fails as well. {{ic|vmblock.ko}} won't load:
−
# modprobe vmblock
−
modprobe: ERROR: could not insert 'vmblock': Unknown symbol in module, or unknown parameter (see dmesg)
−
# dmesg
−
[] vmblock: Unknown symbol putname (err 0)
−
−
Fixing this is not necessary if the FUSE client is working. However, if you wish to, you'll need to [http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-emulation/vmware-modules/files/264-putname.patch patch one file in VMware's source].
=== USB devices not recognized ===
=== USB devices not recognized ===