How To Install VMware Server On Debian 4.0 (Etch)

Version 1.0
Author: Till Brehm <t [dot] brehm [at] projektfarm [dot] de>, Falko Timme
Last edited 04/16/2007

This tutorial provides step-by-step instructions about how to install the free VMware Server (version 1.0.2) on a Debian Etch system.

With VMware Server you can create and run guest operating systems ("virtual machines") such as Linux, Windows, FreeBSD, etc. under a host operating system. This has the benefit that you can run multiple operating systems on the same hardware which saves a lot of money, and you can move virtual machines from one VMware Server to the next one (or to a system that has the VMware Player which is also free). In this article we use Debian Etch (4.0) as the host operating system.

I want to say first that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you!

 

1 Preliminary Note

I assume you have already set up a basic Debian Etch system. You can set up your system as described on the first two pages of this tutorial: The Perfect Setup - Debian Etch (4.0).

I use 192.168.0.100 as the IP address and server1.example.com as the hostname of my Debian Etch system in this tutorial. If your Debian Etch system does not have a static IP address you should now change its network configuration so that it will have a static IP address in the future:

vi /etc/network/interfaces

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback interface
auto lo
iface lo inet loopback

# The first network card - this entry was created during the Debian installation
# (network, broadcast and gateway are optional)
auto eth0
iface eth0 inet static
        address 192.168.0.100
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

(If you use a different gateway than 192.168.0.1, change the gateway IP address in /etc/network/interfaces.)

Then restart your network:

/etc/init.d/networking restart

Edit /etc/resolv.conf and add some nameservers:

vi /etc/resolv.conf

search server
nameserver 145.253.2.75
nameserver 193.174.32.18
nameserver 194.25.0.60

Edit /etc/hosts and add your new IP address:

vi /etc/hosts

127.0.0.1       localhost.localdomain   localhost
192.168.0.100   server1.example.com     server1


# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

 

2 Installing Required Packages

First we update our package database:

apt-get update

Now we install the packages required by VMware on our Debian Etch system by running

apt-get install linux-headers-`uname -r` libx11-6 libx11-dev x-window-system-core x-window-system xspecs libxtst6 psmisc build-essential

You will be asked a few questions to which you can answer as follows:

Please keep only the resolutions you would like the X server to use. Removing all of them is the same as removing none, since in both cases the X server will attempt to use the highest possible resolution.

Video modes to be used by the X server:

<--Accept the default values

The resolution values are not really important because we don't want to use the desktop on our Debian Etch system. We will connect to the VMware Server from our workstation later on which can be a Windows or Linux system which has the VMware Server client package installed.

Next we create the directory /var/vm where we want to install our virtual machines later. The virtual machines require much disk space, make sure you have enough free space on your /var partition for the virtual machines.

mkdir /var/vm

 

3 Getting VMware Server

The VMware server can be downloaded for free from the VMware website: http://www.vmware.com/download/server/
To run the VMware Server software you need a (free) serial number, that can be requested by clicking on the "Register now" button on the download page.

 

4 Downloading The Software

To setup VMWare Server on Debian Etch, we need the following packages from the VMware downloads page:

VMware Server for linux (Binary tar.gz)
Management Interface (Binary tar.gz)

We want to download the packages to our /tmp directory, therefore we go there:

cd /tmp

For downloading the software to your server, I recommend to use the Linux commandline program wget. The wget syntax is as follows:

wget [URL of the VMware Server for linux binary tar.gz package]
wget [URL of the Management Interface binary tar.gz package]

Unpacking the VMware-server tar.gz:

tar xvfz VMware-server-*.tar.gz

Running the installer script:

cd vmware-server-distrib
./vmware-install.pl

The installer asks you a few questions. Most of the time you can accept the default value:

Creating a new installer database using the tar3 format.

Installing the content of the package.

In which directory do you want to install the binary files?
[/usr/bin]
<-- /usr/bin

What is the directory that contains the init directories (rc0.d/ to rc6.d/)?
[/etc]
<-- /etc

What is the directory that contains the init scripts?
[/etc/init.d]
<-- /etc/init.d

In which directory do you want to install the daemon files?
[/usr/sbin]
<-- /usr/sbin

In which directory do you want to install the library files?
[/usr/lib/vmware]
<-- /usr/lib/vmware

The path "/usr/lib/vmware" does not exist currently. This program is going to
create it, including needed parent directories. Is this what you want?
[yes]
<-- yes

In which directory do you want to install the manual files?
[/usr/share/man]
<-- /usr/share/man

In which directory do you want to install the documentation files?
[/usr/share/doc/vmware]
<-- /usr/share/doc/vmware

The path "/usr/share/doc/vmware" does not exist currently. This program is
going to create it, including needed parent directories. Is this what you want?
[yes]
<-- yes

The installation of VMware Server 1.0.2 build-39867 for Linux completed
successfully. You can decide to remove this software from your system at any
time by invoking the following command: "/usr/bin/vmware-uninstall.pl".

Before running VMware Server for the first time, you need to configure it by
invoking the following command: "/usr/bin/vmware-config.pl". Do you want this
program to invoke the command for you now? [yes]
<-- yes

Making sure services for VMware Server are stopped.

Stopping VMware services:
Virtual machine monitor done

You must read and accept the End User License Agreement to continue.
Press enter to display it.
<-- [ENTER]

..... snip [LICENCE TEXT] ......

Do you accept? (yes/no) <-- yes

Configuring fallback GTK+ 2.4 libraries.

In which directory do you want to install the mime type icons?
[/usr/share/icons]
<-- /usr/share/icons

The path "/usr/share/icons" does not exist currently. This program is going to
create it, including needed parent directories. Is this what you want?
[yes]
<-- yes

What directory contains your desktop menu entry files? These files have a
.desktop file extension. [/usr/share/applications]
<-- /usr/share/applications

In which directory do you want to install the application's icon?
[/usr/share/pixmaps]
<-- /usr/share/pixmaps

Trying to find a suitable vmmon module for your running kernel.

None of the pre-built vmmon modules for VMware Server is suitable for your
running kernel. Do you want this program to try to build the vmmon module for
your system (you need to have a C compiler installed on your system)? [yes]
<-- yes

Using compiler "/usr/bin/gcc". Use environment variable CC to override.

What is the location of the directory of C header files that match your running
kernel? [/lib/modules/2.6.18-4-486/build/include]<-- /lib/modules/2.6.8-2-386/build/include

[...]

Do you want networking for your virtual machines? (yes/no/help) [yes] <-- yes

Configuring a bridged network for vmnet0.

The following bridged networks have been defined:

. vmnet0 is bridged to eth0

Do you wish to configure another bridged network? (yes/no) [no] <-- no

Do you want to be able to use NAT networking in your virtual machines? (yes/no)
[yes]
<-- yes

Configuring a NAT network for vmnet8.

Do you want this program to probe for an unused private subnet? (yes/no/help)
[yes]
<-- yes

Probing for an unused private subnet (this can take some time)...

The subnet 172.16.191.0/255.255.255.0 appears to be unused.

The following NAT networks have been defined:

. vmnet8 is a NAT network on private subnet 172.16.191.0.

Do you wish to configure another NAT network? (yes/no) [no] <-- no

Do you want to be able to use host-only networking in your virtual machines?
[yes]
<-- yes

Configuring a host-only network for vmnet1.

Do you want this program to probe for an unused private subnet? (yes/no/help)
[yes]
<-- yes

Probing for an unused private subnet (this can take some time)...

The subnet 172.16.98.0/255.255.255.0 appears to be unused.

The following host-only networks have been defined:

. vmnet1 is a host-only network on private subnet 172.16.98.0.

Do you wish to configure another host-only network? (yes/no) [no] <-- no

[...]

Please specify a port for remote console connections to use [902] <-- 902

Restarting internet superserver: inetd.
Configuring the VMware VmPerl Scripting API.

Building the VMware VmPerl Scripting API.

Using compiler "/usr/bin/gcc". Use environment variable CC to override.

Installing the VMware VmPerl Scripting API.

The installation of the VMware VmPerl Scripting API succeeded.

Generating SSL Server Certificate

In which directory do you want to keep your virtual machine files?
[/var/lib/vmware/Virtual Machines]
<-- /var/vm

Please enter your 20-character serial number.

Type XXXXX-XXXXX-XXXXX-XXXXX or 'Enter' to cancel: <-- your VMware Server serial number

Starting VMware services:
Virtual machine monitor done
Virtual ethernet done
Bridged networking on /dev/vmnet0 done
Host-only networking on /dev/vmnet1 (background) done
Host-only networking on /dev/vmnet8 (background) done
NAT service on /dev/vmnet8 done

The configuration of VMware Server 1.0.2 build-39867 for Linux for this running
kernel completed successfully.

That's it, the VMware Server is installed on our Debian Etch system. On to the next step...

Share this page:

18 Comment(s)

Add comment

Comments

From: iolaus at: 2009-05-15 11:15:34

Did this with the modified 2.6.28-1-amd64 from Kenshi Muto because of SATA cd-rom on Dell PowerEdge T100. Great resource: http://kmuto.jp/debian/d-i/. The list of packages i used:

linux-headers-`uname -r` libc6-dev gcc make psmisc x11-common libxau6 libxdmcp6 libx11-data libx11-6 libxrender1 libice6 libxext6 libxtst6 libsm6 libxt6 libxi6 ia32-libs g++ xinetd

Added g++ and xinetd to the list because of some problems with configuring.

From: at: 2007-04-27 16:20:49

You really should not mix applications managed by apt with applications that are not managed by apt. User installed apps should go into /usr/local, *not* /usr. Putting them into /usr is just asking for trouble down the line. Separate system apps from user installed apps.

From: at: 2007-05-29 20:07:41

Hi!


 Author's proposal is to install following packages:


apt-get install linux-headers-`uname -r` libx11-6 libx11-dev x-window-system-core x-window-system xspecs libxtst6 psmisc build-essential


 Well - in fact one doesn't need full x-window-system at all (!!!!). Only needed packages are:



  • linux-kernel-headers-`uname -r`

  • libc6-dev

  • gcc

  • make

  • psmisc

  • x11-common

  • libxau6

  • libxdmcp6

  • libx11-data

  • libx11-6

  • libxrender1

  • libice6

  • libxext6

  • libxtst6

  • libsm6

  • libxt6

  • libxi6

These are small X-related libs - no full X environment is needed. Last lib - libxi6 is only needed to install MUI - pure VMware Server works without it. Of course I only listed packages not present in "default" task-sel. One also need perl, binutils...


List of libriares may be obtained by typing `sudo ./vmware-install.pl` in vmware-server-distrib directory. Installer looks for specific libs and shows info which are not found. Just apt-get install them. The only one not listed is libxi6 - needed only in order to get MUI working. 

From: at: 2007-05-30 10:37:30

The package list in the howto is absolutely correct. It might be, that not the complete X enviroment is needed, but the package list in the howto includes all needed libraries and works.

From: at: 2007-05-31 13:09:33


Hi!


 In fact I have not tested but I believe that installing that:


libx11-dev x-window-system-core x-window-system xspecs libxtst6


will get me to environment prepared to install VMware Server.


 But once again: if I told to install all packages avaible in the world it probably also would get me to prepared environment. Your proposal is to download 50MB which will take 160MB of disk space - most of them are not needed packages. What do you need TTF Fonts for? Or  X.org drivers for video cards? Of course it will work - but please take a look on site title - it's HowTo's place - not place for "I'm not sure if it is best choice - I know it works".


 I suggest to install these:

x11-common libxau6 libxdmcp6 libx11-data libx11-6 libxrender1 libice6 libxext6 libxtst6 libsm6 libxt6 libxi6


it takes 1.3MB (not 50MB of download) and takes 5MB (not 160MB) of disk space. If you still insist Your method is good... well I _STRONGLY_ disagree.


 Tell me, what is the reason of installing really not needed stuff?

From: at: 2007-07-25 09:34:36

Debian 4 (Etch) ver netinstaller and VMWare Server 1.3

# [PL] Instalacja nowej wersji kernela wraz z nag?owkami:
# Install new kernel and headers

apt-get install linux-headers-2.6-686 linux-image-2.6-686

# [PL] Doinstalowanie pakietów (bibliotek) potrzebych do instalacji oprogramowania
# [PL] VMware Server:
# Install libs for VMware Server 1.3

apt-get install libc6 libxtst6 libxext6 libxt6 libice6 libxrender1 make gcc psmisc libxi6 libexpat1 libfontconfig1 libfreetype6 libxft2 libatk1.0-0 libpango1.0-0 libgtk2.0-0 libgtk2.0-0 libgtk2.0-0 libglibmm-2.4-1c2a libgtkmm-2.4-1c2a libart-2.0-2 libxml2 libgnomecanvas2-0 libgnomecanvasmm-2.6-1c2a librsvg2-2 libview2 libsexy2 libsexymm2

# [PL] Linkujemy dwie biblioteki
ln -s /usr/lib/libsexy.so.2 /usr/lib/libsexy.so.1
ln -s /usr/lib/libsexymm.so.2 /usr/lib/libsexymm.so.1


# END 

From: at: 2007-09-24 09:44:57

just extend the list of packages with ia32-libs:


apt-get install linux-headers-`uname -r` libx11-6 libx11-dev x-window-system-core x-window-system xspecs libxtst6 psmisc build-essential ia32-libs

From: at: 2007-10-15 07:54:29

I was getting rather confused about the missing libraries error until I realized that I needed the ia32-libs.

From: at: 2008-01-30 16:21:22

    I would like to just comment and say, if you setup a server using "The Perfect Setup - Debian Etch 4.0" tutorial your system will work very well.  I have a number of virtual servers running now where we had many individual servers before and I follow both these tutorials as a guide now when I set one up.  Always problem free.  (I use the current etch 4.0R2 net install and VMware 1.0.4)


Just sayin.... : )


Nim 

From: daviddelikat at: 2009-04-03 16:32:37

I just completed a vmware install using alien to convert my rpm to deb.  it worked very nicely, I did not test dependancies because I installed them in advence.  I did have to unzip the EULA file


 sudo gunzip /usr/share/doc/vmware/EULA.gz


before running the config


 sudo /usr/bin/vmware-config.pl


but everything went very smoothly.  I'll be using my new deb to  upgrade my other system after everything is up and running.  thanks for the HOWTO,  it was quite helpful.

From: Raoul at: 2008-10-22 19:15:58

Thanks for this howto. I haven't tried it yet, but I will soon .


The link The Perfect Setup - Debian Etch (4.0) points to http://www.howtoforge.com/perfect_setup_debian_sarge


However, it should point to http://www.howtoforge.com/perfect_setup_debian_etch


Greetings,
Raoul



From: kevinthecomputerguy at: 2010-02-10 06:58:19

Till-


Thanks for your help getting this working, its awesome!


I gave you some props in my Linux how-to


thanks again


http://t3.woodel.com/my-linux-how-to/debian_howto_start_to_finish_using_webmin.pdf


 

From: kevinthecomputerguy at: 2010-02-10 07:04:54

AdamLis


Thanks for the tip on the smaller install. I run my server without a GUI and it was a big help.


I gave you some props in the Linux how-to I made


thanks again


http://t3.woodel.com/my-linux-how-to/debian_howto_start_to_finish_using_webmin.pdf


 

From: at: 2007-05-01 15:11:40

I've got some stability problems with VMware's Console App. Old version gtklib included in VMware-Server fixed. 


Try this environment variable:


export VMWARE_USE_SHIPPED_GTK=force

From: at: 2007-08-15 03:12:44

These steps worked for me with vmware server v1.0.3 and Debian Etch:

1.    untar vmware server distribution.
2.    run vmware-install.pl, put stuff where you like (i.e. /usr/local) if you don't like the defaults.
3.    the first run should fail due to several libraries being unavailable so
    use aptitude to install just the necessary libraries.  other comments in this thread list the various libraries but the installer will tell you what is missing.
4.    use aptitude to install the linux-source-2.6.18 kernel source
5.    execute the following commands:

cd /usr/src
tar xvjf linux-source-2.6.18.tar.bz2
ln -s linux-source-2.6.18 linux
cd linux
make oldconfig
make prepare
make
echo "#define UTS_RELEASE \"`uname -r`\"" > include/linux/utsrelease.h

6.    re-run the vmware-server installer, everything should work now.

From: at: 2008-04-03 22:17:28

if we have problems to connect remotely to vmware-server we need to install xinetd.


 apt-get install xinetd


 

From: borderamigos at: 2008-09-24 19:54:02

In the procedure it says you don't want to use the Etch system desktop.  Will the above work if you do want to use it?


 

From: Hospitality IT guy at: 2009-02-04 04:03:45

STill pretty new to Linux.  Especially Debian.  I had a heck of a time getting vmware to install.  Problem with headers.  I found this site and gave it a shot.  OMG!!  Perfect.  I feel like a Linux Pro already.  Thanks HtF!