I've been setting up this Debian Stable system with a dom0 and 3 domUs. It was working fine for several days, and I'm almost ready to deploy it to the rack. But last night I shut it down with all three domUs still running for the first time, and today when I started it up, xend won't start. In /var/log/messages, I have:
Apr 18 13:01:33 xen-test BLKTAPCTRL[4248]: blktapctrl: v1.0.0
Apr 18 13:01:33 xen-test BLKTAPCTRL[4248]: Found driver: [raw image (aio)]
Apr 18 13:01:33 xen-test BLKTAPCTRL[4248]: Found driver: [raw image (sync)]
Apr 18 13:01:33 xen-test BLKTAPCTRL[4248]: Found driver: [vmware image (vmdk)]
Apr 18 13:01:33 xen-test BLKTAPCTRL[4248]: Found driver: [ramdisk image (ram)]
Apr 18 13:01:33 xen-test BLKTAPCTRL[4248]: Found driver: [qcow disk (qcow)]
Apr 18 13:01:33 xen-test BLKTAPCTRL[4248]: couldn't find device number for 'blktap0'
Apr 18 13:01:33 xen-test BLKTAPCTRL[4248]: Unable to start blktapctrl
and in /var/log/xen/xend.log, I have this:
[2010-04-18 12:46:32 3523] INFO (SrvDaemon:219) Xend exited with status 1.
[2010-04-18 13:01:34 4255] INFO (SrvDaemon:331) Xend Daemon started
[2010-04-18 13:01:34 4255] INFO (SrvDaemon:335) Xend changeset: unavailable.
[2010-04-18 13:01:34 4255] INFO (SrvDaemon:342) Xend version: Unknown.
[2010-04-18 13:01:34 4255] ERROR (SrvDaemon:353) Exception starting xend (no element found: line 1, column 0)
Traceback (most recent call last):
File "/usr/lib/xen-3.2-1/lib/python/xen/xend/server/SrvDaemon.py", line 345, in run
servers = SrvServer.create()
File "/usr/lib/xen-3.2-1/lib/python/xen/xend/server/SrvServer.py", line 251, in create
root.putChild('xend', SrvRoot())
File "/usr/lib/xen-3.2-1/lib/python/xen/xend/server/SrvRoot.py", line 40, in __init__
self.get(name)
File "/usr/lib/xen-3.2-1/lib/python/xen/web/SrvDir.py", line 82, in get
val = val.getobj()
File "/usr/lib/xen-3.2-1/lib/python/xen/web/SrvDir.py", line 52, in getobj
File "/usr/lib/xen-3.2-1/lib/python/xen/xend/server/SrvNode.py", line 30, in _
_init__
self.xn = XendNode.instance()
File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendNode.py", line 709, in instance
inst = XendNode()
File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendNode.py", line 164, in __init__
saved_pifs = self.state_store.load_state('pif')
File "/usr/lib/xen-3.2-1/lib/python/xen/xend/XendStateStore.py", line 104, in load_state
dom = minidom.parse(xml_path)
File "/usr/lib/python2.5/xml/dom/minidom.py", line 1915, in parse
return expatbuilder.parse(file)
File "/usr/lib/python2.5/xml/dom/expatbuilder.py", line 924, in parse
result = builder.parseFile(fp)
File "/usr/lib/python2.5/xml/dom/expatbuilder.py", line 211, in parseFile
parser.Parse("", True)
ExpatError: no element found: line 1, column 0
[2010-04-18 13:01:34 4253] INFO (SrvDaemon:219) Xend exited with status 1.
Any clues as to what might be going wrong?
Ok,
rm -rf /var/lib/xend/*
fixed the problem. But I'd still like to know why and if it's likely to come back.....time passes....
And now I've discovered that I made my /var/lib partition too small, and it was filling up. A quick lvcreate, mkfs.ext3 and copying some files over and editing /etc/fstab, and I'm good to go.