Hello everyone,
I'm trying to run a VirtualBox-based VM in headless mode, but
apparently running out of luck.
So far:
- Fedora 14 host
- libvirt 0.9.8 manually built from libvirt-0.9.8-1.fc14.src.rpm
(later tested with 0.10.0 built from libvirt-0.10.0-1.fc17.src.rpm to
the same effect)
- I have a VBox 4.1.20 installed with extension pack
- a virtual Windows XP guest
- can start this machine from VirtualBox GUI
- can start from "virsh -c vbox:///session start"
- VRDP enabled in VirtualBox GUI
The relevant entries in "virsh dumpxml" output are:
<graphics type='desktop' display=':0.0'/>
<graphics type='rdp' port='3388' multiUser='yes'/>
- can connect to the running XP from rdesktop
- can start the same machine using VBoxHeadless and connect from rdesktop
- can start from virsh and connect from rdesktop
All the above can be performed as a "su - otheruser", where otheruser
has been added to vboxusers group, AND with access to X display (of
the main, logged user) enabled by "xauth add ..."
However, when no xauth access is enabled, "virsh start" fails:
$ virsh --connect vbox:///session start vbox-windows-xp-32
error: Failed to start domain vbox-windows-xp-32
error: An error occurred, but the cause is unknown
And I cannot remove the desktop graphics from the xml (edit as shown
below, in vi remove the <graphics type='desktop'...> line, save,
quit):
$ virsh --connect vbox:///session edit vbox-windows-xp-32
error: internal error could not define a domain, rc=80bb0004
I set
export VIRSH_DEBUG=0
export VIRSH_LOG_FILE="virsh.log"
export LIBVIRT_DEBUG=1
export LIBVIRT_LOG_OUTPUTS="1:file:libvirt.log"
and collected two log-files (tarball attached; this has been done
using the older libvirt 0.9.8; upgrade to 0.10.0 did not solve the
issue).
Also, related or not, "virsh dumpxml" produces an xml file that is
rejected by virt-xml-validate (with or without the graphics line):
$ virsh --connect vbox:///session dumpxml vbox-windows-xp-32 >
vbox-windows-xp-32.xml
$ virt-xml-validate vbox-windows-xp-32.xml
Relax-NG validity error : Extra element devices in interleave
vbox-windows-xp-32.xml:20: element devices: Relax-NG validity error :
Element domain failed to validate content
vbox-windows-xp-32.xml fails to validate
When the second user is allowed access to my display:
$ xhost +SI:localuser:buildmaster
all starts to work (and the Windows XP window pops up on my display
whenever it wants).
Any ideas how to make it work on the background?
Many thanks for the wonderful and very useful library,
Dmitry