usage()
{
printf "USAGE: ${0}\t<xendom> <xen volume group>\n"
printf " \t\t[root part size] [swap part size]\n"
exit
}
if [ -z ${1} ]; then usage; else xendomu=${1}; fi
if [ -z ${2} ]; then usage; else xenvg=${2}; fi
if [ -z ${3} ]; then rootsize="8G"; else rootsize=${3}; fi
if [ -z ${4} ]; then swapsize="2G"; else swapsize=${4}; fi
I think we may be chasing the wrong problem by pursuing xen-tools for the fix.
This problem is also 100% reproducible using manual domain creation.
The only working fix I have found is to add extra=' xencons= tty1' to the xendomu config file.
This would be incorrect behaviour. It should work out-of-the-box.
My method for creating the xendomu was using a self-written script as follows:
#!/bin/sh ####### ####### ####### ####### ####### ####### ####### ####### ####### hosts/xen1/ root/mkxenvm# 3 $ ####### ####### ####### ####### ####### ####### ####### ####### #######
#######
# $Id: //depot/
# $DateTime: 2007/10/16 10:45:21 $
#######
usage()
{
printf "USAGE: ${0}\t<xendom> <xen volume group>\n"
printf " \t\t[root part size] [swap part size]\n"
exit
}
if [ -z ${1} ]; then usage; else xendomu=${1}; fi
if [ -z ${2} ]; then usage; else xenvg=${2}; fi
if [ -z ${3} ]; then rootsize="8G"; else rootsize=${3}; fi
if [ -z ${4} ]; then swapsize="2G"; else swapsize=${4}; fi
printf "Creating root volume /dev/${ xenvg}/ ${xendomu} _root with size ${rootsize}: "
lvcreate -L${rootsize} -n${xendomu}_root ${xenvg}
printf "done.\n"
printf "Creating swap volume /dev/${ xenvg}/ ${xendomu} _swap with size ${swapsize}: "
lvcreate -L${swapsize} -n${xendomu}_swap ${xenvg}
printf "done.\n"
printf "Creating ext3 filesystem on /dev/${ xenvg}/ ${xendomu} _root: " xenvg}/ ${xendomu} _root
mkfs.ext3 -L${xendomu}_root /dev/${
printf "done.\n"
printf "Creating swap partition on /dev/${ xenvg}/ ${xendomu} _swap: " xenvg}/ ${xendomu} _swap
mkswap /dev/${
printf "done.\n"
printf "Mounting /dev/${ xenvg}/ ${xendomu} _root on /tmp/${xendomu}: "
mkdir /tmp/${xendomu}
printf "Debootstrapping ${xendomu}: "
debootstrap gutsy /tmp/${xendomu}
printf "done.\n"
printf "Copying modules to ${xendomu}: " xendomu} /lib/modules/
cp -r /lib/modules/`uname -r` /tmp/${
printf "done.\n"
printf "Setting up fstab: " t/\t\text3\ trw,errors= remount- ro\t0\t1\ n" >> /tmp/${ xendomu} /etc/fstab tnone\t\ tswap\tdefaults \t0\t0\ n" >> /tmp/${ xendomu} /etc/fstab t/proc\ t\tproc\ trw,nosuid, noexec\ t0\t0\n" >> /tmp/${ xendomu} /etc/fstab
printf "/dev/sda1\
printf "/dev/sda2\
printf "none\t\
printf "done.\n"
printf "Setting up hostname: " xendomu} /etc/hostname
echo "${xendomu}" > /tmp/${
printf "done.\n"
printf "Setting up hosts: " 0.1\tlocalhost\ n" > /tmp/${ xendomu} /etc/hosts
printf "127.0.
printf "done.\n"
printf "Setting up network interfaces: " xendomu} /etc/network/ interfaces xendomu} /etc/network/ interfaces
printf "auto lo\n" >> /tmp/${
printf "iface lo inet loopback\n" >> /tmp/${
printf "done.\n"
printf "Setting up apt sources: " archive. ubuntu. com/ubuntu gutsy main universe" > /tmp/${ xendomu} /etc/apt/ sources. list
echo "deb http://
printf "done.\n"
printf "Updating apt: "
chroot /tmp/${xendomu} apt-get update
printf "done.\n"
printf "Disabling threads: " xendomu} /lib/tls /tmp/${ xendomu} /lib/tls. disabled
mv /tmp/${
printf "done.\n"