lemoncube.com Search: (normal)


VMware daemon howto

Below is an old copy of the Vmware-Daemon howto I found. Trying this in 2004, I found I needed to run Xvfb with a -pixdepth 32 option as well.


Written and copyright 2002 by Jimmy Kaplowitz. All rights reserved.
Verbatim copying is permitted without restriction or fee, so long as the
whole mini-HOWTO, including the title and this copyright notice, is
included. In addition to this, the right to fair use, as defined by
applicable law, is hereby acknowledged and affirmed.


I have figured out how to run VMWare Workstation in the background, like a
daemon, without it showing up in my regular X server, and allowing me to
log out of X and still keep VMware running. Obviously this isn't good if
you need a GUI, but for remotely accessiblelike NetBSD (which I'm using as
my guest) it's very good.

First you need VMware, of course. I have only tested it with VMware
Workstation 3.0 for Linux, and so your mileage with other versions may vary.

Then, you need to set up your virtual machine so the guest OS boots
unattended and powers off the virtual machine when it shuts down. Most
UNIXes or Linuxes, or even Windows in some configurations, are easy to do
this with. I recompiled the NetBSD kernel and added APM support, and just
to be on the safe side I went into the VM's BIOS and changed "Power
Savings" from "Disabled" to "Customized." (I did not, however, change any
the timeouts from their default of "Off.") Also make sure you have some way
to access the machine from without, such as through ssh.

Lastly, you need Xvfb, the X virtual framebuffer server, installed. It is
included in the source distribution of XFree86, and it is also easily
accessible in binary form, but the exact method of getting it varies
depending on your host OS. For the woody/testing or sid/unstable
distributions of Debian GNU/Linux, which I use, one can just type 'apt-get
install xvfb' as root.

Then, add the following to your ~/.vmware/preferences or ~/.vmware/config
(whichever you have already):

xinfo.noDGA = "TRUE"
hint.xinfo.noDGA = "FALSE"
hint.mks.noXKB = "FALSE"
gui.fullScreenResize = "FALSE"
hint.svgax.noDGAisXFree86 = "FALSE"

With all this done, you just need to type the following commands, replacing
/home/jim/vmfb with a directory in which you want an always-current
screenshot of VMware running (or remove it, along with -fbdir, if you don't
want this), and replacing /usr/src/jim-vms/netbsd/netbsd.cfg with the
location of your VM's config file:

Xvfb :1012 -screen 0 640x480x8 -fbdir /home/jim/vmfb &
DISPLAY=:1012 vmware -qx /usr/src/jim-vms/netbsd/netbsd.cfg &

This will start the virtual X server and vmware. You can use this command
to check on the boot process of your machine:

xwud -in /home/jim/vmfb/Xvfb_screen0

(Of course, again replace /home/jim/vmfb with the appropriate directory.)
Clicking on the screenshot will make it go away, not update it, so you may
need to repeat this a few times until the machine is booted up enough to be
remotely accessible. Then just log in through your remote access mechanism
of choice and have fun! :-)

Acknowledgement: I figured out most of this on my own, using such
illustrious utilities as man, strings, and Debian's apt-cache, but Jeremy
from VMware gave me a little help with disabling DGA.

Feedback is welcome, to the following email address:
j i m m y @ k a p l o w i t z . o r g

pablo , 2004-12-07 16:23:34