Installing VMware Server on Gentoo Linux (Version 2)

Submitted by Hannes Schmidt on Wed, 03/15/2006 - 09:17.

[This is an updated version of a previous article on the subject.]

VMWare is going to replace its GSX Server product with the new VMware Server. And it's going to be more than just a new name: the best thing about it is that VMware releases it free of charge. Being still in beta testing, there are currently no stable ebuilds available for it on Gentoo Linux. Fortunately, Mike Auty is working on one and he is doing a fine job. You should keep track of his progress on Gentoo Bugzilla bug #122500. For people with little Portage experience (author included) it can be a bit complicated to throw together an ebuild from bugzilla attachments. Here's what I did:

Download Ebuilds And Auxillary Files

Paul de Vrieze setup a Subversion repository of the VMware Server ebuild and Mike committed to using it. So from now on I recommend that you stick with that repository instead of downloading the Bugzilla attachments. Assuming that your portage overlay is in /usr/local/portage:

# mkdir -p /usr/local/portage
# cd /usr/local/portage
# wget --recursive --no-host-directories --cut-dirs=3 --no-parent 
--reject=index.html http://callisto.cs.kun.nl:81/svn/trees/vmware/

Alternatively, you might also use svn provided that Subversion is installed on your machine. If you like you could install it using

# emerge subversion

To get a working copy of the ebuild

# mkdir -p /usr/local/portage
# cd /usr/local/portage
# svn co http://callisto.cs.kun.nl:81/svn/trees/vmware/app-emulation

The advantage of using Subversion's svn utility is that you can easily check for updates using

# cd /usr/local/portage/app-emulation
# svn up

Prepare Your System

Follow the directions in HOWTO Installing 3rd Party Ebuilds in order to setup your Portage overlay. The directory layout should like as follows:

# ls -R1 /usr/local/portage
/usr/local/portage:
    app-emulation

/usr/local/portage/app-emulation:
    vmware-server
    vmware-server-console
    vmware-server-modules

/usr/local/portage/app-emulation/vmware-server:
    Manifest 1
    VMware-mui-e.x.p-20925.tar.gz 3
    VMware-server-e.x.p-20925.tar.gz 3
    files
    vmware-server-1.0.0.20925.ebuild

/usr/local/portage/app-emulation/vmware-server/files:
    90vmware-server
    digest-vmware-server-1.0.0.20925 2
    vmware-server-1.0.0.20925-config.patch
    vmware-server-1.0.0.20925-config2.patch
    vmware-server-1.0.0.20925-config3.patch
    vmware-server-1.0.0.20925-config4.patch
    vmware-server-1.0.0.20925-services.patch
    vmware-server-1.0.0.20925-vmware-authd-amd64
    vmware-server-1.0.0.20925-vmware-authd-x86
    vmware.rc
    vmware.xml

/usr/local/portage/app-emulation/vmware-server-console:
    Manifest 1
    files
    vmware-server-console-1.0.0.20925.ebuild

/usr/local/portage/app-emulation/vmware-server-console/files:
    99vmware-console
    digest-vmware-server-console-1.0.0.20925 2

/usr/local/portage/app-emulation/vmware-server-modules:
    Manifest 1
    files
    vmware-server-modules-1.0.0.20925.ebuild

/usr/local/portage/app-emulation/vmware-server-modules/files:
    digest-vmware-server-modules-1.0.0.20925 2
    vmware-server-modules-1.0.0.20925-makefile.patch

1 The Manifest files can be downloaded from the Subversion repository but they don't exist, they will be generated on-the-fly when you execute the ebuild … digest command as described in the above Gentoo article.

2 The digest-… files will be generated when you execute the ebuild … digest command as described in the above Gentoo article.

3 The source tarballs will be downloaded when you execute the ebuild … digest command as described in the above Gentoo article.

Add the following lines to /etc/portage/package.keywords. Depending on your machine's architecture, you might need to use ~x86 instead of ~amd64.

app-emulation/vmware-server ~amd64
app-emulation/vmware-server-modules ~amd64
app-emulation/vmware-server-console ~amd64

I recommend not using the emerge --digest method mentioned in the Howto. Instead, generate the digests using ebuild. That way you can install the ebuilds just like any other Gentoo package. To generate the digests, run

# ebuild /usr/local/portage/app-emulation/vmware-server/
vmware-server-1.0.0.22088.ebuild digest
# ebuild /usr/local/portage/app-emulation/vmware-server-console/
vmware-server-console-1.0.0.22088.ebuild digest
# ebuild /usr/local/portage/app-emulation/vmware-server-modules/
vmware-server-modules-1.0.0.22088.ebuild digest

Note that the actual version numbers in the above file names will most likely have changed by the time you read this. Once the digests are generated, the ebuilds will be ready for installation.

Installation

# emerge -a vmware-server

Obviously, this is the most crucial part. On my machine numerous rpath error messsages were displayed but these didn't seem to cause trouble. Note that VMware Server depends on xinetd. The default configuration of xinetd on Gentoo is empty but it doesn't hurt double checking that it didn't enable any unwanted services. Next, run

# /opt/vmware/server/bin/vmware-config.pl

If all goes well, the VMware daemons will be started.

XInetd Configuration

Follow the ebuild's post installation and add a only_from statement to /etc/xinetd.d/vmware-authd, for example

only_from = 192.168.0.0/24

VMware Console

The VMware Console can be installed using

# emerge -a vmware-server-console

VMWare Console Doesn't Connect

I had problems connecting the console to the server. The /var/log/vmware/vmware-serverd.log contained

app| SSL: Unknown SSL Error
app| SSL Error: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number
app| vmdbPipe_Streams: Couldn't read

When I examined a packet dump of the communication between server and console, ethereal reported a malformed SSL packet. The packet contained an error message in clear-text complaining about an MDNS entry in /etc/host.conf. When I removed that entry the problem was fixed. This is rather odd and I am quite sure it has nothing to do with VMware but rather with the fact that I used an earlier version of the ebuild which required a non-stable version of glibc (2.3.6). More recent version of the ebuild do not have that requirement anymore.

Stay Up-To-Date

Let's hear what Mike has to say about that:

Since I'm not doing revision bumps they'll have to manually re-emerge the vmware packages to see the updates, if they'd like to help test the installation procedures. Also for anyone that missed it, I am now exclusively updating the subversion repository and the attachments to this bug are no longer being updated. Any updates I make to the repository however, I will post mention of here.

This means that you should check the above Bugzillla bug and read the comments. Once a new version will be announced, you need to update your portage overlay using either wget or svn up as described above and then re-emerge the packages. Hopefully it won't take too long for this ebuild to be accepted by the Gentoo folks.

( categories: Unix | VMware | Administrator )
Submitted by Anonymous on Mon, 06/19/2006 - 18:33.

Well I suggested unmerging, because I'm classified as paranoid.

So this time around (after updating the svn dirs) I just did 'emerge vmware-modules vmware-server' (still got the sandbox error) and it updated fine. then I moved out my licence* files from /etc/vmware and ran the config (/opt/vmware/server/bin/vmware-config.pl), put in my key, and boom - worked like a charm. Much better now. You are right, Mike is on the ball - and even up to date now on vmware latest versions.

Submitted by Anonymous on Thu, 06/01/2006 - 22:54.

Yes, I have.
Just keep in mind that you'll need lib32 working since MUI need it.

Submitted by Anonymous on Thu, 06/01/2006 - 07:09.

Why you suggest to unmerge old versions?
Maybe it is possible to upgrade as usual:

merge -uDN vmware-server vmware-server-modules

or

merge -uDN world

???

Submitted by Hannes Schmidt on Sun, 05/14/2006 - 11:58.

Marker, thanks for your contributions. I will try to incorporate your suggestions into this article ASAP. Regarding your second post, I seriously suggest that you post to the bugzilla bug. Mike, the main dev behind this ebuild, is really on the ball. -- Hannes

Submitted by Anonymous on Sun, 05/14/2006 - 08:53.

another note to this -

after getting the latest build from the SVN, and installing, when connecting with the console, I get a message saying:

POST(no connection): Version mismatch with vmmon module: expecting 138.0, got 137.0.


I had to download the binary pack from vmware website, take out the source for the modules, and compile them. after doing that, moved them to the /lib/modules/*/misc/vmnet.ko and vmmon.ko and it works like a charm. I guess the svn has mixed up modules/vmserver versions?

-marker

Submitted by Anonymous on Sat, 05/13/2006 - 14:56.

a newer version is on the svn now - perhaps update the instructions above:
1. un-install the old version:
emerge -C vmware-server vmware-server-modules
and take care of /etc/init.d/vmware, /etc/vmware/*, and /lib/modules/*/misc/vm*.ko manually
(move to another dir or delete)


2. right after command:
svn co http://callisto.cs.kun.nl:81/svn/trees/vmware/app-emulation
run:
svn co http://callisto.cs.kun.nl:81/svn/trees/vmware/eclass


3. add this line to /etc/portage/package.keywords
app-emulation/vmware-modules ~x86
(or whatever dev build ~amd64, etc)


4. if you get the sandbox error (ACCESS DENIED open_wr: .__modpost.cmd) like I always get, I just turn off the sandbox feature when building the modules (which you shouldnt have to do, but just do it to get it installed )


FEATURES="-sandbox -usersandbox" ACCEPT_KEYWORDS="~x86" emerge vmware-modules


hope this helps someone, -marker

Submitted by Anonymous on Sat, 05/13/2006 - 10:16.

hi! is it possible to install the server without having an x-server?
i don't need x on a server, it is quite useless...

ciao,
der_flo

Submitted by Hannes Schmidt on Thu, 05/11/2006 - 14:54.

I haven't tried using it. I prefer using the VMware Console. Post to the aforemetioned bugzilla bug if it doesn't work for and you think it's a bug (which it might well be).

-- Hannes

Submitted by Anonymous on Thu, 05/11/2006 - 14:18.

Have you been able to install the VMWare Management Interface?

Submitted by Anonymous on Wed, 05/10/2006 - 07:31.

Hi,
Don't forget to get the eclass file (using Subversion)

svn co http://callisto.cs.kun.nl:81/svn/trees/vmware/eclass

Zainul.

Submitted by Anonymous on Fri, 05/05/2006 - 20:58.

Excellent work on the ebuild. Just wondering when you will update to the new beta version for vmware-server

Thanks