Mar 23, 2008

VMware 6.0.3 in Ubuntu Hardy 8.04 kernel 2.6.24

Hi, its me again with another howto VMware :), this time the task is harder :(. Based on Ubuntu Hardy 8.04 Beta

Steps:

1. Get VMware from www.vmware.com(I used VMware Workstation because I have the licence for that version) since we're using Ubuntu you should get the tar.gz file.

2. Install build-essential linux-kernel-devel and linux-headers-generic(or the one you're using), extract the vmware tar.gz file right click -> "extract here" or:

tar xvvzf dir/VMware-workstation-6.0.3-80004.i386.tar.gz
3. Run the installer:
cd vmware-distrib
sudo ./vmware-install.pl
follow all the instructions... but DO NOT RUN vmware-config.pl

4. Copy vmware drivers source code in a directory:
mkdir $HOME/temp
cd $HOME/temp
cp /usr/lib/vmware/modules/source/vmmon.tar .
cp /usr/lib/vmware/modules/source/vmnet.tar .


5. Get the patches, save them in $HOME/temp/:

vmmon-2.6.24.patch: http://pastebin.com/pastebin.php?dl=f58553c1f
vmnet-2.6.24.patch: http://pastebin.com/pastebin.php?dl=f681c5c13

File downloads: vmmon: http://www.mediafire.com/?zizfzmutmnp, vmnet: http://www.mediafire.com/?yign2immy0m

Also for the any-update: http://groups.google.com/group/vmkernelnewbies/files?hl=en

6. Apply the patches:
cd $HOME/temp

tar xf vmmon.tar
cd vmmon-only
patch -p1 < ../vmmon-2.6.24.patch
cd ..
mv vmmon.tar vmmon.tar.orig
tar cf vmmon.tar vmmon-only
sudo cp vmmon.tar /usr/lib/vmware/modules/source/

tar xf vmnet.tar
cd vmnet-only
patch -p1 < ../vmnet-2.6.24.patch
cd ..
mv vmnet.tar vmnet.tar.orig
tar cf vmnet.tar vmnet-only
sudo cp vmnet.tar /usr/lib/vmware/modules/source/
7. Run vmware-config.pl
sudo vmware-config.pl
Read the instructions and when it says "Compile drivers" you type yes to compile your patched modules.

54 comments:

Anonymous said...

Where are the patches ???

Igor said...

Men... click on the links!

Anonymous said...

Worked great! Thanks. One mistake, it's build-essential not build-essentials.

Igor said...

Thanks, fixed!

lukovszkil said...

Hello Igor,
I have stopped using VMWare under Linux because of not supporting USB 2.0 ports.
Do these patches solve this problem?
Best regards,
Lukovszkil

lukovszkil said...

I had a view on the code... Nothing about USB2.0 support...

Igor said...

USB 2.0 is supported a long time ago, since 6.0 beta though.

lukovszkil said...

Thanks for the info. However I had checked the release info for WS6.0, I was not very good at it.

Igor said...

So it did work for you?

lukovszkil said...

I have used Suse 9.x and then I updated to 10.x. Under 9.x there was an "anyany" patch that made the USB 2.0 working for the guest os: xp.
On suse 10.x I was unable to patch it and force it to work.
The xp guest was needed only because of my "special" remote working environment for my job.
On xp host the vmware player did well, so I started to use that (different software environment) to
play the virtual machine that was created under the suse host.
I have tried Debian and then I have been disappointed, not by Debian, but trying to synchronize the different USB usage by linux and vmware.
Then I read the new 6.0 vmware release info about usb2.0 support under linux host and found nothing good. Maybe I have to check it again under Ubuntu Hardy? I will when I have spare time and patiency.
(What is more: I found nothing really new and worthy to buy the 6.0 version of vmware ws.)
So the old 5.5 player (under xp) and 5.5 ws (under linux) working
good, I need no more at this moment.

Thanks for the question, I will report about trying the 6.0 ws under Ubuntu Hardy, at least I will convert my existing images.

Anonymous said...

Sweet! Debian Lenny+Sid AMD64. Worked like a charm, except for the fact that the vmnet patch gave an error (patch ended unexpectedly -- or something to that effect). But the patch took correctly (manually verified first), and the compile worked fine.

Thanks much for this.!!

For anyone out there that runs across this note that the current any-any will not work on 6.03. And 6.03 will not compile against 2.6.24 natively (although the release notes indicate it should).

andrejkw said...

Thanks a lot! Works perfectly =D

realityloop said...

I'm getting the following error after following your instructions also using Hardy 8.04 beta..

"Unable to change virtual machine power state: Failed to connect to peer process."

Any Ideas?

Igor said...

Looks like your virtual machine is corrupted, does VMware Workstation runs? What happens if you run(or create) another Virtual Machine?

realityloop said...

I'll try and create a normal VM and see how that goes, I'm trying to boot a VM from a physical drive as per: Running VMWare on a physical partition

Igor said...

@realityloop the link is broken :(

realityloop said...

Hrm.. it was working last night.. :/

Maybe try again in a few hours..

isarmstrong said...

This worked like a dream for Workstation but Server has some issues. The patches fail outright and using the Workstation versions of the files is fine up until a vmblock failure (allows drag & drop from the virtual client to the host).

Help? =(

Anonymous said...

Man, that's awesome work, thanks so much for the help.

Igor said...

Thanks!

Anonymous said...

Igor


You are the man! Thanks!

Fredrik said...

igor,

cd vmware-distrib
sudo ./vmware-install.pl
[sudo] passwaord for (user):

What do i do? i tryed pressing the password. and i tryed enter and then the password :S

nothing. :( yea, i am new to ubuntu, and i was changing from Xp to ubuntu, because of the vmWare in utuntu and all that.

mail : sunny90@gmail.com

hope for some help

Igor said...

Please, this is not a "how to" for newbies, if you want a out-of-the-box solution on Ubuntu you should try Virtualbox:

http://www.virtualbox.org/

You can install it in your "Add/Remove programs" menu option.

Fredrik said...

sorry, but cam you still help me with the
[sudo] password for ...:

thing?

Igor said...

sudo ask for your password, so you just have to type your password(no keys are displayed in this process)

Fredrik said...

one question:

can i open my preinstalled xp in that virtualbox program?

Igor said...

@Fredrik: no you can't neither with VMware or any other products...

As a matter of fact, es you can with VMware but you need to apply a very ugly and dangerous hack.

David Grant said...

The patches above didn't work for me.

There is a much easier solution available here:
http://groups.google.com/group/vmkernelnewbies/files?hl=en
I'm not sure why no one else found this.

Igor said...

@david grant: Nobody found it, because its not a topic direct? I'll add those files to this post too.

The patches works they show an error at the end but the patch is applyed.

Anonymous said...

thanks~

Derick said...

I got an error while patching and I ignored it but vmware-config.pl threw a whole lot of error when compiling.

This is what I got:
----------------------------------------
(Stripping trailing CRs from patch.)
patching file include/vcpuset.h
(Stripping trailing CRs from patch.)
patching file include/vm_basic_types.h
Hunk #1 FAILED at 163.
Hunk #2 succeeded at 187 with fuzz 1 (offset 10 lines).
Hunk #3 succeeded at 313 (offset 40 lines).
1 out of 3 hunks FAILED -- saving rejects to file include/vm_basic_types.h.rej
----------------------------------------

ChromeKaldra said...

When i get to the code : patch -p1 < ../vmmon-2.6.24.patch

I get:

bash: ../vmnet-2.6.24.patch: No such file or directory

But if it cut out the numbers, i get:

jason@JX:~/temp/vmnet-only$ patch -p1 < ../vmnet.patch
(Stripping trailing CRs from patch.)
patching file compat_wait.h
(Stripping trailing CRs from patch.)
patching file sk_alloc.c
(Stripping trailing CRs from patch.)
patching file vm_basic_types.h
patch unexpectedly ends in middle of line

help?

GarLeaf said...

Wow! Thank you!!!!
I'm success install vmware!. ㅠ..ㅠ.

Anonymous said...

did everything posted and still get this error

vmware is installed, but it has not been (correctly) configured
for this system. To (re-)configure it, invoke the following command:
/usr/bin/vmware-config.pl

Any help would be great

Anonymous said...

Works like a charm for me.

Thanks. You're a star!

Anonymous said...

Hey guys,
I am getting the following error while applying the patches. Please help.


Building the vmnet module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config6/vmnet-only'
make -C /lib/modules/2.6.24-16-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.24-16-generic'
CC [M] /tmp/vmware-config6/vmnet-only/driver.o
/tmp/vmware-config6/vmnet-only/driver.c: In function ‘cleanup_module’:
/tmp/vmware-config6/vmnet-only/driver.c:522: error: void value not ignored as it ought to be
make[2]: *** [/tmp/vmware-config6/vmnet-only/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config6/vmnet-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.24-16-generic'
make: *** [vmnet.ko] Error 2
make: Leaving directory `/tmp/vmware-config6/vmnet-only'
Unable to build the vmnet module.

For more information on how to troubleshoot module-related problems, please
visit our Web site at "http://www.vmware.com/download/modules/modules.html" and
"http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html".

Execution aborted.

Anonymous said...

It still says that the patch doesn't exist:

jason@JX:~/temp/vmmon-only$ patch -p1 < ../vmmon-2.6.24.patch
bash: ../vmmon-2.6.24.patch: No such file or directory

Please respond.

Anonymous said...

I have the same problem and I suspect it relates right back to the fact the links to the patches seems to be invalid. They do not point to patch files - only to text files containing the results of a diff. To quote an earlier question: Where are the patches?

Derick said...

I had problems with the patches too. I guess you guys can look at "vmware-any-any-update-116.tgz" at http://groups.google.com/group/vmkernelnewbies/files?hl=en as @david mentioned. It didn't work for me until I have xinetd installed. "sudo apt-get install xinetd"

Tamentis said...

This worked perfectly, thanks for the patches.

Chromekaldra said...

I got it working once i did this first:

aptitude install build-essential

Then the install was really nice. Fully fuctional. But you gotta re-install VM tools after though.

Jose said...

thanks guy
it works fine!!!

cheese master said...

Worked like a charm, but I cannot figure out how to incorporate the vmware-any-any-update-116-bridged-wireless patch into this method. I'm happy to have VMware running, but it would be even better if I could bridge wireless connections.

Gerard said...

WOW this is great! I tried a long time compiling without success! Now thanx 2 ur step by step explination I finnally was able 2 get it up and running. Many many many thanx

Marco said...

Hello,

When I tried to run the vmware after do this procedure I have the error below :

terminate called after throwing an instance of 'Gtk::IconThemeError'

Any idea ?

Igor said...

@Marco: Not really, but(it might sound stupid) try to change your theme to see what happen.

sbile said...

running vmware gave me this error message
/usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib/libcairo.so.2)
/usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6)
/usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib/libcairo.so.2)
/usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6)
/usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib/libcairo.so.2)
/usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6)
.
just do
cd /usr/lib/vmware/lib/libgcc_s.so.1
sudo mv libgcc_s.so.1 libgcc_s.so.1.old
ln -s /lib/libgcc_s.so.1 libgcc_s.so.1

and works!
Hope this helps somebody
sbelos

Edmund Laugasson said...

Kubuntu 8.04, KDE 3.5.9, kernel 2.6.24-16-generic and the following errors:

Patching gave errors:
$ patch -p1 < vmnet-2.6.24.patch
(Stripping trailing CRs from patch.)
patching file compat_wait.h
Hunk #1 succeeded at 38 (offset 4 lines).
(Stripping trailing CRs from patch.)
patching file sk_alloc.c
Hunk #1 succeeded at 12 (offset 4 lines).
Hunk #2 succeeded at 21 (offset 4 lines).
(Stripping trailing CRs from patch.)
patching file vm_basic_types.h
Hunk #1 FAILED at 163.
Hunk #2 succeeded at 187 with fuzz 1 (offset 10 lines).
patch unexpectedly ends in middle of line
Hunk #3 succeeded at 313 (offset 40 lines).
1 out of 3 hunks FAILED -- saving rejects to file vm_basic_types.h.rej


$ patch -p1 < vmmon-2.6.24.patch
(Stripping trailing CRs from patch.)
patching file include/vcpuset.h
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file include/vcpuset.h.rej
(Stripping trailing CRs from patch.)
patching file include/vm_basic_types.h
Hunk #1 FAILED at 163.
Hunk #2 succeeded at 187 with fuzz 1 (offset 10 lines).
Hunk #3 succeeded at 313 (offset 40 lines).
1 out of 3 hunks FAILED -- saving rejects to file include/vm_basic_types.h.rej


Now running sudo ./vmware-config.pl gave finally the following error after numerous of compiling errors (more than 1000 rows, so command line history did not fit them):

make[2]: *** [/tmp/vmware-config2/vmmon-only/linux/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config2/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.24-16-generic'
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config2/vmmon-only'
Unable to build the vmmon module.

Anonymous said...

great tutorial, it works perfectly!
thanks!

Karşıbalı said...

This tutorial worked perfectly for my Ubuntu system on my Dell laptop.
Thank you...

baley said...

It works perfectly! You saved my life!
Thank you!

Anonymous said...

Any help with the "Execution aborted." error?

Here's what I'm getting:

Building the vmmon module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config2/vmmon-only'
make -C /lib/modules/2.6.24-17-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.24-17-generic'
CC [M] /tmp/vmware-config2/vmmon-only/linux/driver.o
In file included from /tmp/vmware-config2/vmmon-only/linux/driver.h:20,
from /tmp/vmware-config2/vmmon-only/linux/driver.c:49:
/tmp/vmware-config2/vmmon-only/./include/compat_wait.h:37:5: warning: "VMW_HAVE_EPOLL" is not defined
/tmp/vmware-config2/vmmon-only/./include/compat_wait.h:43:5: warning: "VMW_HAVE_EPOLL" is not defined
In file included from /tmp/vmware-config2/vmmon-only/linux/driver.h:20,
from /tmp/vmware-config2/vmmon-only/linux/driver.c:49:
/tmp/vmware-config2/vmmon-only/./include/compat_wait.h:60: error: conflicting types for ‘poll_initwait’
include/linux/poll.h:65: error: previous declaration of ‘poll_initwait’ was here
/tmp/vmware-config2/vmmon-only/linux/driver.c:147: warning: initialization from incompatible pointer type
/tmp/vmware-config2/vmmon-only/linux/driver.c:151: warning: initialization from incompatible pointer type
/tmp/vmware-config2/vmmon-only/linux/driver.c: In function ‘LinuxDriver_Ioctl’:
/tmp/vmware-config2/vmmon-only/linux/driver.c:1659: error: ‘struct mm_struct’ has no member named ‘dumpable’
make[2]: *** [/tmp/vmware-config2/vmmon-only/linux/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config2/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.24-17-generic'
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config2/vmmon-only'
Unable to build the vmmon module.

For more information on how to troubleshoot module-related problems, please
visit our Web site at "http://www.vmware.com/download/modules/modules.html" and
"http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html".

Execution aborted.

Anonymous said...

It worked perfectly for me, thanks a lot!!!

DavidVT said...

Thank you so much. I spent hours today trying to figure out how to recover my vmware version 1 server after I upgraded to Hardy.

Download the two tar files and the reconfig finally worked!!! yeah!!

disclaimer



Things written in this blog are my personal thoughts or points of view, and do not represent at all the position of my employer.

Code in the website is licensed under The MIT License

Content of this blog is:
Creative Commons License
Licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.