Build host vmware kernel modules: Difference between revisions
Jump to navigation
Jump to search
Build host vmware kernel modules (view source)
Revision as of 12:30, 12 October 2015
, 12 October 2015→Troubleshooting
mNo edit summary |
|||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
====Integrated modules build script sometimes fails==== | |||
The kernel modules script on linux hosts VMware Player version 2.5 and VMware Workstation 6.5.x has received a graphical user interface. | The kernel modules script on linux hosts VMware Player version 2.5 and VMware Workstation 6.5.x has received a graphical user interface. | ||
Because of this it provides a much smoother end user experience when the user upgrades to a newer version of the kernel. | Because of this it provides a much smoother end user experience when the user upgrades to a newer version of the kernel. | ||
Line 10: | Line 11: | ||
Lucky enough [http://communities.vmware.com/people/Noel Noel] on the vmware forums has created a script to resolve this which can be found here [http://communities.vmware.com/message/1088282#1088282 6.5 Segfault in 6.5 beta] | Lucky enough [http://communities.vmware.com/people/Noel Noel] on the vmware forums has created a script to resolve this which can be found here [http://communities.vmware.com/message/1088282#1088282 6.5 Segfault in 6.5 beta] | ||
====The solution==== | |||
You must run the following script with root privileges | You must run the following script with root privileges | ||
Line 30: | Line 32: | ||
service vmware restart | service vmware restart | ||
#If a new install, remove the not_configured tag or the error will keep coming back | #If a new install, remove the not_configured tag or the error will keep coming back | ||
rm /etc/vmware/not_configured | rm -f /etc/vmware/not_configured | ||
====Preconditions for the script to work==== | |||
You will have to get your kernel-headers before hand. | You will have to get your kernel-headers before hand. | ||
On Ubuntu or debian based systems execute this: | On Ubuntu or debian based systems execute this: | ||
Line 38: | Line 40: | ||
On fedora / Red Hat based systems: | On fedora / Red Hat based systems: | ||
su -c "yum install kernel-devel" | su -c "yum install kernel-devel" | ||
On SUSE / openSUSE use YaST to fetch the latest linux-kernel-headers | |||
====Troubleshooting==== | |||
After the manual compile your folder with kernel modules should look like this: | After the manual compile, your folder with kernel modules should look like this: | ||
$ ls -l /lib/modules/`uname -r`/misc | $ ls -l /lib/modules/`uname -r`/misc | ||
total 376 | total 376 | ||
Line 48: | Line 51: | ||
-rw-r--r-- 1 root root 79897 2008-12-07 01:07 vmnet.ko | -rw-r--r-- 1 root root 79897 2008-12-07 01:07 vmnet.ko | ||
-rw-r--r-- 1 root root 34834 2008-12-07 01:07 vsock.ko | -rw-r--r-- 1 root root 34834 2008-12-07 01:07 vsock.ko | ||
If you get error "Icon name must be set." then you can fix that by adding the parameter for that to vmware-modconfig: | |||
vmware-modconfig --icon="vmware-workstation" | |||
If you get error "Application name must be set" then you can fix that by adding the parameter to set that: | |||
vmware-modconfig --appname="VMware Workstation" | |||
If there are still problems then vmware-modconfig tells you where it writes out a log, it helps to read it for example: | |||
vmware-modconfig --icon="vmware-workstation" --appname="VMware Workstation" | |||
Logging to /root/tmp/vmware-root/modconfig-2221.log | |||
Check that file! | |||
In my case for example it says: | |||
failed to find /lib/modules/3.12.xx/build/include/linux/version.h | |||
That's because in later versions the version.h file has been moved (smart move!) to another location. | |||
So in order to get past that you have to add a symbolic link (replace) | |||
# ln -s /usr/src/`uname -r`/include/generated/uapi/linux/version.h /usr/src/`uname -r`/include/linux/version.h | |||
Note that your OS might just have the kernel-devel packages installed and in that case you might have to replace `uname -r` in the above with linux. | |||
Eg: | |||
# ln -s /usr/src/linux/include/generated/uapi/linux/version.h /usr/src/linux/include/linux/version.h | |||
====Alternative solution==== | |||
Of course there is still a vmware application available that you can use for this as well. | |||
[http://communities.vmware.com/people/birdie Birdie] came up with a smart alternative so you can keep things like they used to be by creating an alias for the modconfig with the correct parameters to run it in the console. | |||
alias vmware-config.pl='vmware-modconfig --console --install-all' | |||
[[Category: CLI]] [[Category: Bash]] |