VMware-server 2.0.x Installation HOWTO for Karmic Koala (x86_64)

[UPDATE]This HOWTO works also for VMware-Server 2.0.2[/UPDATE], but after all I’ve migrated my VMs to KVM: Here’s a detailed HOWTO

I was trying to install the VMware server 2.0.1 x86_64 on my new Karmic Koala (Ubuntu 9.10, kernel 2.6.31-13) server, but I’ve got a bunch of errors. Looking for an any-any patch haven’t been successful, but I’ve found an discussion thread, where the problem was solved. Unfortunately it sucks a bit going through the links and threads. That’s why here is a short and clear HOWTO with an already fixed patch:

First time installation

  • Download or get VMware-server-2.0.1-156745.x86_64.tar.gz and unpack it.
  • go into vmware-server-distrib and run vmware-install.pl.
  • the process stops with an error. (... wait.h:78: error: conflicting types ... ).
  • Download and unpack this vmware-server.2.0.1_x64-modules-2.6.30.4-fix.tgz into the vmware-server-distrib directory.
    Invoke vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    This works for 2.6.31.14 kernel in spite of the patch being labelled vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh (thanks @cmg)
  • remove this directory: /usr/lib/vmware/modules/binary
  • start vmware-config.pl
  • This should leave you with a working VMware installation. Go now with your browser to https://localhost:8333 and enter your Serial Number under “Applications->Enter Serial Number“.

Reinstallation
If anything goes wrong, you can do the installation again. In order to do so, you need to do some steps manually on your console.

  • first, delete the vmware modules

    rm -rf /usr/lib/vmware/modules/

    and if necessary (you’ll be told, if so):

    rm -rf /lib/modules/2.6.31-13-server/misc/vm*

  • If the vmware-config.pl aborts, because it can’t accomplish to shut down all vmware processes, kill all vmware processes manually.

    kill -9 $( ps -ef | awk '/vm/ { print $2 }' )

  • run the ./vmware-install.pl again
  • if the installation process ask:

    /usr/bin/vmware-config.pl“. Do you want this
    program to invoke the command for you now? [yes]

    you should answer: no
    then run the patch vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh.
    After this you run /usr/bin/vmware-config.pl

Troubleshooting

  • vmnet refuses to build

  • check with lsmod | grep vm if vmware modules are loaded. If so, unload them with rmmod

    .

  • Mouse Does Not Work Properly
    Start your VM guests with this [vmware-client-start.sh] very useful script. You won’t even need a browser, because a login window, and a list with all available Vmware-guests will pop up. The trick is to set a environment variable, so the supplied VMware GTK version is used, because tKarmic’s does not work right for VMware. Read here for more
  • .

  • Empty Browser Remote Console Problem

    Sometime it happens, my Firefox 3.5.3 doesn’t show anything, if I try to start https://localhost:8333. If I should take a wild ass guess, this is all due to my multiple installation attempts of the VMware server itself. Or is it just buggy?
    I noticed, that actually three different approaches (sometimes in combination) lead to a relief.

    • Don’t use hostnames, but IPs only in your browser. E.g: https://127.0.0.1:8333/ui instead of https://localhost:8333/ui
    • Restart the vmware-hostd (your running VM’s won’t be affected <- bold statement, don’t you think?).

      /etc/initd.d/vmware-mgmt restart

      If the process number stays unchanged, and a log entry in /var/log/vmware/hostd-x.log indicates an already running vmware-hostd, kill the process manually, because it seams to hang:

      killall -9 vmware-hostd

    • Uninstall the VMware remote console Plug-in:

      Menu: Tools -> Add-ons -> Tag:Extentions -> “VMware remote console Plug-in” -> Button:Uninstall

      and reinstall it again. Perform the first step.

    • Remove the VMware’s SSL-Certificate:

      Menu: Edit -> Preferences -> Section:Advanced -> Tab:Security ->Tab:Encryption -> Button:View Cerfiticates -> Authorities.

      Scroll down, until VMware shows up. Select and delete all entries. Perform the first step

    • Or follow a completely different approach described here

You can read a more complete error log of the failed VMWare server installation here.

make[1]: Entering directory `/usr/src/linux-headers-2.6.31-13-server'
  CC [M]  /tmp/vmware-config1/vmmon-only/linux/driver.o
In file included from /tmp/vmware-config1/vmmon-only/linux/driver.c:31:
/tmp/vmware-config1/vmmon-only/./include/compat_wait.h:78: error: conflicting types for ‘poll_initwait’
include/linux/poll.h:70: note: previous declaration of ‘poll_initwait’ was here
In file included from /tmp/vmware-config1/vmmon-only/./include/vmware.h:38,

66 thoughts on “VMware-server 2.0.x Installation HOWTO for Karmic Koala (x86_64)

  1. Fran

    It works in 9.10-rc.

    I would like to publish this how-to in my blog but in Spanish version. Could I do this?

    I will put a reference to this site, of course.

    Regards.

  2. acmelab68 Post author

    Sure you can, but please have in mind that the “Empty Browser Remote Console Problem” will be updated some day, because I’ve found out, that my described solution above, has rather an esoteric nature, than something really seriously working and reproducible. Well – it works for me most of the time, at least.

    Regards

  3. Fran

    Yes, I have the same problem with console.

    I think that when official Karmic Koala will be launched, vmware server will be updated too (or I think that)

    Thank you

  4. Chris

    Works for 32-bit as well (on Lenovo T60)

    Make sure to have the package patch installed (apt-get install patch)

    Thanks

    /Chris

  5. Chris

    Additional Precision:

    Ubuntu Karmic Koala 9.10 RC
    Lenovo T60/ Intel Centrino T2500
    Fresh Ubuntu Install
    Fresh VMware Server 2.0.1 build-156745

    /Chris

  6. Jaroslav K.

    Thank You a lot!
    Works perfect on Ubuntu Karmic Koala (9.10) with 2.6.31-14-generic kernel.

    P.S.: don’t forget to install kernel headers before all:
    sudo apt-get install kernel-headers-`uname -r`

    If you kernel is 2.6.31-11-generic-pae (default on time of writing this comment) – install first 2.6.31-14 kernel:
    sudo apt-get install linux-image-2.6.31-14-generic

  7. Jaroslav K.

    .. ah, have forgotten: check the vmware page – there is vmware server 2.0.2 at this time.

    Have a nice day ;)

  8. acmelab68 Post author

    Very interesting. VMware verion 2.0.2. is also affected by this bug. But the good thing is, the patch from above applies also against the VMware verison 2.0.2 (VMware-server-2.0.2-203138.x86_64.tar.gz)
    Didn’t noticed any side-effect until now.

  9. acmelab68 Post author

    [update]Oops, sorry for the post below. I read “vmon” somehow. How can I check if vsock was built?[/update]

    @Radu
    As far as I can see it.
    Here’s the result from
    ls -l /lib/modules/2.6.31-14-server/misc/*.o

    -rw-r--r-- 1 root root 86686 2009-10-29 19:30 ./misc/vmci.o
    -rw-r--r-- 1 root root 73699 2009-10-29 19:30 ./misc/vmnet.o
    -rw-r--r-- 1 root root 111012 2009-10-29 19:30 ./misc/vmmon.o

    The all do have the same creation date.

  10. Radu

    You can use lsmod | grep vsock. But from what you have there it looks like it also failed. Nevertheless, the server can work without it. Not sure though on what’s the impact.

    Anyway, try the command from here and check for the module. The idea behind all this is that I am trying to build a script (around the one that already exists for patchin) that does a fresh install of the VMware Server on a 9.10 Ubuntu with kernel 2.6.31-14.

    Everything worked okay in the base script, except that module.

    Thank you, Andreas!

  11. Maathieu Beausoleil

    Good stuff, Internet is a better tool with people like you.. sharing working well stuff with complete documentation..

  12. Carl

    The fix worked great, but I can’t log into vmware. It continuously tells me bad name or password. Is this due to the fix? I’ve used vmserver before without it ever giving me password problems.

  13. Matthias

    It works, thanks a lot! But I’ve some problems with the VMware tools. In the VM’s console window I can use the minimum rectangle only, because the arrow behaves like having left the VM’s screen, when it leaves the inner rectangle. What about your VM screens, can you use larger screen solutions (e.g. 1024×800)?

  14. acmelab68

    Hi,
    couldn’t quite follow your explanation, but what I can say here, is that also here I had a strange behavior with my mouse.
    I’ve installed the latest VMware tools, and now all seems to be OK again. The only strange thing is, that I can’t remember having had to press Strg+Alt when leaving the WMware window. Now I have to.

  15. Matthias

    Today I installed VMware 2.02 to get the newest VMtools. But there is no difference in the mouse’s behaviour: moving the arrow out of an upper left rectangle of about 600×400 pixels, the lower left message flickers between “To grab..” and “To release..” while moving the mouse. No keyboard inputs are possible and mouse clicking ist obviously disturbed bei movement messages.
    To check the tool’s influence, I just deinstalled them. No change, I only can work an small virtual screens.
    @acmelab68: no Ctrl+Alt is necessary here..

  16. cmg

    Seems to work great for Ubuntu 9.10, 2.6.31-14-generic, vmware server 2.0.1. Thanks

    For anyone who was a bit confused reading this page:
    * This works for 2.6.31.14 kernel in spite of the patch being labelled vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    * I presume OP meant “rerun vmware-install.pl” instead of “rerun vmware-config.pl”.
    * I presume OP meant “ps -aux | grep -i vm | awk ‘{ print $2 }’” instead of “grep -i vm | awk ‘{ print $2 }’”

  17. acmelab68

    @cmg
    You are completely right! Thank’s a lot!
    I’ve corrected my mistakes.
    Especially the grep thingy is embarrassing. Silly me. *blush*

  18. ubuntu administrator

    Worked for me on Karmic 64bit with VMWare-Server 2.0.2. Thx for sharing it.

    Dont’ forget to rerun vmserver-install a second time to provide the user information and serial.

    ubuntu administrator

  19. Bajo

    I have same problem as Matthias :-(
    If I’m connecting from another win remote desktop, everything is ok, but if I connect to localhost from firefox, no keyboard inputs are possible and mouse still clicking.

  20. KarmicMike

    Thanks a lot!!! Your patch and instructions worked on VMware server 2.0.0 with Ubuntu 9.10 Karmic Koala – kernel 2.6.31-14 32-bit.

    Bookmarking your HOWTO… ;)

  21. Tsh3po

    Thank for the HOWTO…. My VM’s are now running perfectly on karmic

    KarmicMike here is how to solve ur problem

    edit the /etc/vmware/config file and at the end add:

    xkeymap.nokeycodeMap = true

  22. acmelabs

    @Diego
    Did the
    export VMWARE_USE_SHIPPED_GTK=yes
    or
    export GDK_NATIVE_WINDOWS=true

    work for you?
    I know understand Matthias’ problem, and my system is also affected. I can only use the mouse inside an small region in the upper left corner, and the exports ... stuff didn’t work for me. [UPDATE]Problem solved, and updated my article[/UPDATE]

    @Tsh3po:
    This is severe for systems, where non root uses have access to the Linux box. They can elevate their rights, and gain root privileges. And – yes – this is bad.

  23. Doc

    Not working for me :-( Running 64-bit karmic, I’ve gone through the instructions three times (with server 2.0.2), and each time the same thing happens: everything about the installation appears to be fine, until I try to actually power up one of my VMs. It stops at 95% and eventually says “Failed to initialize monitor device.”

    All my VMs behave the same way :-(

  24. Doc

    Aha!

    Apparently karmic silently and by default installs KVM support (at least it did here).

    If you suffer the same symptoms that I had (unable to power on completely), you need to remove the qemu-kvm package.

    Note that you also need to do that if you want to run VirtualBox.

  25. Peter Strotmann

    Hallo,

    I’m running karmic 64-Bit, 2.6.31-14
    and have the following problem with the patch

    peter@amd64Koala:~$ sudo /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    Found tar file for vmci module
    Found tar file for vsock module
    Found tar file for vmnet module
    Found tar file for vmmon module
    Using patch file: /home/peter/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.patch
    Using module directory: /usr/lib/vmware/modules/source
    Using backup directory: /usr/lib/vmware/modules/source-backup
    Backing up ./vmci.tar to /usr/lib/vmware/modules/source-backup/./vmci.tar
    Backing up ./vsock.tar to /usr/lib/vmware/modules/source-backup/./vsock.tar
    Backing up ./vmnet.tar to /usr/lib/vmware/modules/source-backup/./vmnet.tar
    Backing up ./vmmon.tar to /usr/lib/vmware/modules/source-backup/./vmmon.tar
    Untarring vmci.tar
    Untarring vsock.tar
    Untarring vmnet.tar
    Untarring vmmon.tar
    Testing patch
    /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh: 71: patch: not found
    Sorry, problem with the patch, I can’t apply it

  26. acmelabs

    @Peter Strotmann
    Could you change into the directory the patch resides in, so the invocation isn’t done full qualified. Then start the patch with a leading period followed by a slash: “./”

    Regards,
    Andreas

  27. dman

    Great help! Thank you so much. It does work on 2.0.2; I confirm it as well.

    I can’t understand why VMWare doesn’t support Ubuntu out of the box, so to speak.

    dman

  28. a-dawg

    same error as Peter S. for kernel 2.6.31.14

    @acmelabs : doesn’t matter the current directory, there is still the same error message !

    help me out please!!

  29. Peter Strotmann

    @acmelabs
    @a-dawg

    fixing from inside

    /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix

    results in

    ….
    ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh: 71: patch: not found
    Sorry, problem with the patch, I can’t apply it

    again

    peter

  30. acmelab68

    @a-dawg
    @Peter
    Do I get you right guys, untar vmware-server.2.0.1_x64-modules-2.6.30.4-fix.tgz in the vmware-server-distrib directory, and invoking ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh results in “patch: not found”?

    Looks really like wrong path.

  31. Peter Strotmann

    @acemelab68
    this is exactly where I am and what I did:

    peter@amd64Koala:/opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix$ ls
    vmware-server.2.0.1_x64-modules-2.6.30.4-fix.patch  vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    peter@amd64Koala:/opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix$ ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    You must run this script as root.
    peter@amd64Koala:/opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix$ sudo ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    [sudo] password for peter:
    Found tar file for vmci module
    Found tar file for vsock module
    Found tar file for vmnet module
    Found tar file for vmmon module
    Using patch file: /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.patch
    Using module directory: /usr/lib/vmware/modules/source
    Using backup directory: /usr/lib/vmware/modules/source-backup
    Untarring vmci.tar
    Untarring vsock.tar
    Untarring vmnet.tar
    Untarring vmmon.tar
    Testing patch
    ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh: 71: patch: not found
    Sorry, problem with the patch, I can't apply it
    peter@amd64Koala:/opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix$
  32. Peter Strotmann

    @acmelab68

    peter@amd64Koala:~$ cd /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix
    peter@amd64Koala:/opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix$ mv * ../
    peter@amd64Koala:/opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix$ cd ..
    peter@amd64Koala:/opt/vmware/vmware-server-distrib$ sudo ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    Found tar file for vmci module
    Found tar file for vsock module
    Found tar file for vmnet module
    Found tar file for vmmon module
    Using patch file: /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.patch
    Using module directory: /usr/lib/vmware/modules/source
    Using backup directory: /usr/lib/vmware/modules/source-backup
    Untarring vmci.tar
    Untarring vsock.tar
    Untarring vmnet.tar
    Untarring vmmon.tar
    Testing patch
    ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh: 71: patch: not found
    Sorry, problem with the patch, I can't apply it
    peter@amd64Koala:/opt/vmware/vmware-server-distrib$
  33. acmelab68 Post author

    change in line 71

    patch --dry-run -N -p1 < "$PATCHPATH"

    into

    patch --dry-run -N -p1 < /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.patch
    

    or just perform this line directly. If it goes away, supply in line 17 the path accordingly.

    I don’t really don’t know, what’s going on, but it seems your environment variables do something strange.

    Hope this helps.

  34. Peter Strotmann

    @acemelab68

    thats what line 71, 72 of the script look like now:
    ..
    #patch –dry-run -N -p1 < "$PATCHPATH"
    patch –dry-run -N -p1 < /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.patch

    thats what I get executing the script, followed by an ls, definetly showing the existence of the patchFile in that directory:

    peter@amd64Koala:/opt/vmware/vmware-server-distrib$ sudo ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    Found tar file for vmci module
    Found tar file for vsock module
    Found tar file for vmnet module
    Found tar file for vmmon module
    Using patch file: /opt/vmware/vmware-server-distrib/vmware-server.2.0.1_x64-modules-2.6.30.4-fix.patch
    Using module directory: /usr/lib/vmware/modules/source
    Using backup directory: /usr/lib/vmware/modules/source-backup
    Untarring vmci.tar
    Untarring vsock.tar
    Untarring vmnet.tar
    Untarring vmmon.tar
    Testing patch
    ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh: 72: patch: not found
    Sorry, problem with the patch, I can't apply it
    peter@amd64Koala:/opt/vmware/vmware-server-distrib$ ls
    bin etc installer man vmware-install.pl vmware-server.2.0.1_x64-modules-2.6.30.4-fix.patch vmware-vix
    doc FILES lib sbin vmware-server.2.0.1_x64-modules-2.6.30.4-fix vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh
    peter@amd64Koala:/opt/vmware/vmware-server-distrib$

    ok, we shouldn't waste our time and leave that problem as one of the unfixable in data Processing

  35. Peter Strotmann

    @acemelab68

    problem solved, just the patch command was not installed on my system,simple apt-get fixed that.

    vmware is running

    thanks a lot

    peter

  36. Peter Strotmann

    Now that I have got the server and the vm’s running I try to acces a vm.
    As console plugin does not work because of the karmic mouse problem,
    I try vmware-client.start.sh. But whatever server I try to enter, everything results in an aborting connection.
    I can connect via browser by entering http://localhost:8222.
    what is the correct input in the hostname field of the script ?
    The script offers a non working 192.168.1.2:8333, where 192.168.2.1 is the IP-Adress of my internet router

    peter

  37. acmelab68 Post author

    192.168.1.2:8333 is my vmware server here. If you’re vmware server is on the same machine your client is at, you should enter 127.0.0.1:8333 or localhost:8333, or your vmware server IP address. It’s definitely not possible for me to know your vmware server IP address, and the script doesn’t know that either. I propose to edit the script and change 192.168.1.2 into the IP address that suits for you.

  38. Giovanni

    The script vmware-client-start.sh was very very useful indeed. Thank you very much!

    The only modification I would suggest is to remove the -h host:port altogether so that the client can be used both for local and remote servers. Perhaps just drop a comment on how readding it if needed.

  39. Nick

    Just moved from VMware server 1.0 on CentOS to VMWare server 2.0 on Ubuntu 9.10

    This has been a great thread to help me iron out the niggles.

    I can now see my old VMs and the mouse is fixed – tanks to the script, but the keyboard mapping refuses to let me use CTRL or the arrow keys in my Windows box.

    As a serial keyboard shortcut user this is a royal pain. Are there any settings I may have missed?

  40. Nilson Chagas

    I have this messages in the server:
    INFO: Task vmware-vmx:6303 (this the last message I dont know if begining the number one) blocked for mor than 120 seconds.
    “echo 0> /proc/sys/kernel/hung_task_timeout_secs” disables this message.

    And my server is stopped.

    Can you help me?

  41. Dave Hay

    Thanks for a most excellent blog post. Once I cracked the problem with the patch script failing: -

    Testing patch
    ./vmware-server.2.0.1_x64-modules-2.6.30.4-fix.sh: 71: patch: not found
    Sorry, problem with the patch, I can’t apply it

    due to the lack of the patch command ( thanks to Peter Strotmann ) for that, I was good to go.

    I guess the script could have helped a little by saying “Dude, the patch command is just SOOO not found in your path, man” but that’s just me being cheeky :-)

    Have blogged my own experiences thus far here: -

    http://www.davehay.f2s.com/2010/01/patching-things-using-ubuntu-server-910.html

  42. fizassist

    Fantastic! Thanks so much for the patch and script. It worked perfectly for me with VMWare Server 2.0.2 under Fedora 12 x86_64.

  43. rhyden

    These instructions worked for me on Ubuntu 9.10 as host for VMWare 2.02. I made sure to linux-headers, build-essential, and xinetd packages were installed before I followed this article’s directions.

Comments are closed.