These instructions are vital in order to get a working copy of VMWare on Debian Squeeze. This information was originally available at http//:wiki.debian.org/VMware. Please check there first for any further updates or information. The document listed below is for my reference and in the event the wiki is unavailable.
Installing VMware Server 2 on Squeeze
In general the installation is similiar to that in Lenny, with the following differences:
- There are different versions of the linux kernel and gcc.
- Different patches are required for the installer and the modules.
Instructions:
- Get the VMWare Server archive (at least version 2.0.2) and your license. Hopefully the issues will be fixed in later versions.
- Install the prerequisites (including kernel-headers for your version, and gcc version 4.3).
- Get the patches archive from http://codebin.cotescu.com/vmware/vmware-server-2.0.x-kernel-2.6.3x-install.sh.
- Unzip the VMWare archive, install VMWare, but do not configure it yet, i. e. answer the question to run "vmware-config.pl" with "no".
- Patch vmware-config.pl using a file from the patch archive (choose the directory where you installed the binaries, if not "/usr/bin").
cd /usr/bin patch -p3 < vmware-config.patch
- Patch the module sources using another file from the patch archive (choose the directory where you installed the libraries, if not "/usr/lib").
cd /usr/lib/vmware/modules/source for i in *.tar ; do tar xpf $i ; done patch -p4 < vmware-server-2.0.2-203138-update.patch for i in vmci vmmon vmnet vsock ; do tar cpf $i.tar $i-only ; done
- Now run vmware-config.pl.
After that the installation is complete, but a bug related to Tomcat/Java may prevent the web admin interface at http://localhost:8222 from being operational. If you get the message "Error 503: Service unavailable", then continue patching.
[Note: If you want to learn more about this issue, see http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=572048. As Java is embedded in VMWare, switching to a current version is no option, neither should be disabling IPv6.]
- IPv6 must be disabled for the "WebAccess" service only. Create a patch file named "vmware.patch" (see the "Lenny" section for how to do this using an editor):
--- vmware.orig 2010-05-24 17:05:09.251864323 +0200 +++ vmware 2010-05-24 21:40:37.563871986 +0200 @@ -675,7 +675,7 @@ watchdog="${vmdb_answer_BINDIR}/vmware-watchdog" webAccessServiceName="VMware Virtual Infrastructure Web Access" CATALINA_HOME="${vmdb_answer_LIBDIR}/webAccess/tomcat/apache-tomcat-6.0.16" -webAccessOpts="-client -Xmx64m -XX:MinHeapFreeRatio=30 -XX:MaxHeapFreeRatio=30 -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=$CATALINA_HOME/common/endorsed -classpath $CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/commons-logging-api.jar -Dcatalina.base=$CATALINA_HOME -Dcatalina.home=$CATALINA_HOME -Djava.io.tmpdir=$CATALINA_HOME/temp org.apache.catalina.startup.Bootstrap" +webAccessOpts="-Djava.net.preferIPv4Stack=true -client -Xmx64m -XX:MinHeapFreeRatio=30 -XX:MaxHeapFreeRatio=30 -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=$CATALINA_HOME/common/endorsed -classpath $CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/commons-logging-api.jar -Dcatalina.base=$CATALINA_HOME -Dcatalina.home=$CATALINA_HOME -Djava.io.tmpdir=$CATALINA_HOME/temp org.apache.catalina.startup.Bootstrap" # # Utilities
- Patch /etc/init.d/vmware, and restart the daemon.
cd /etc/init.d patch < vmware.patch ./vmware-mgmt restartDone.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2013 - Squeeze Update
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
After running VMware install but BEFORE the configuration....
3. Patching vmware-server-2.0.2
At this point we need to patch vmware-config.pl file as well as vmware modules. First download and decompress patch provided by: Radu Cotescu:
# cd # wget http://linuxconfig.org/images/files/2.6.3x-vmware-patch.tar.bz2 # tar xjf 2.6.3x-vmware-patch.tar.bz2
Apply patch:
First apply patch to vmware-config:
# cd /usr/bin/ # patch -p3 < ~/2.6.3x-vmware-patch/config.patch 203138-update.patch config.patch LICENSE README start-VMware-console.sh vmware-server-2.0.x-kernel-2.6.3x-install.sh
Apply patch to all modules:
# cd /usr/lib/vmware/modules/source # for f in *.tar ; do tar pxf $f ; done # patch -p4 < ~/2.6.3x-vmware-patch/203138-update.patch patching file vmci-only/include/pgtbl.h patching file vmnet-only/vnetUserListener.c patching file vmci-only/Makefile patching file vmmon-only/common/vmx86.c patching file vmmon-only/include/compat_cred.h patching file vmmon-only/include/x86svm.h patching file vmmon-only/linux/driver.c patching file vmmon-only/linux/hostif.c patching file vmmon-only/Makefile patching file vmnet-only/Makefile patching file vmnet-only/netif.c patching file vsock-only/Makefile # for f in vmci vmmon vmnet vsock ; do tar pcf $f.tar $f-only ; done # rm -fr *-only
4. Set correct gcc version
The kernel on Debian squeeze was compiled with gcc 4.3 and this is the version of gcc we want to use. By default gcc is set to gcc version 4.4:
# ls -l `which gcc` lrwxrwxrwx 1 root root 7 Mar 20 11:15 /usr/bin/gcc -> gcc-4.4
Therefore, we need to change gcc compiler to match our kernel compiler version. The easiest way is to set CC environmental variable to point to gcc v4.3.
The second option is to create a new symlink ( when you finish do not forget to put everything where it belongs ) :
# ln -fs /usr/bin/gcc-4.3 /usr/bin/gcc # ls -l `which gcc` lrwxrwxrwx 1 root root 16 Mar 20 12:09 /usr/bin/gcc -> /usr/bin/gcc-4.3
5. Configure vmware-server-2.0.2
We are almost done. At this stage we need to configure vmware-server. Follow vmware-config.pl and change default values where appropriate. Start configuration with:
# vmware-config.pl
After successful build you should see:
Enjoy, --the VMware team Starting VMware services: Virtual machine monitor done Virtual machine communication interface done VM communication interface socket family: done Virtual ethernet done Bridged networking on /dev/vmnet0 done Host-only networking on /dev/vmnet1 (background) done DHCP server on /dev/vmnet1 done Host-only networking on /dev/vmnet8 (background) done DHCP server on /dev/vmnet8 done NAT service on /dev/vmnet8 done VMware Server Authentication Daemon (background) done Shared Memory Available done Starting VMware management services: VMware Server Host Agent (background) done VMware Virtual Infrastructure Web Access Starting VMware autostart virtual machines: Virtual machines done The configuration of VMware Server 2.0.2 build-203138 for Linux for this running kernel completed successfully.
No comments:
Post a Comment