Just use this instead to create the initial image. It is known to work.
#!/bin/bash
#
# Create an image which can be dd'ed onto
# a harddisk, and, after adding a boot loader
# using grub, be ready for consumption.
#
set -e
IMAGEFILE=`tempfile -p 1004`
dd if=/dev/zero of=$IMAGEFILE count=4 bs=1GB
mkfs.ext2 -F $IMAGEFILE
TEMPDIR=`mktemp -d 1004-dir.XXXXXXXXXX`
mount -o loop $IMAGEFILE $TEMPDIR
debootstrap --arch=i386 --include=mysql-server,rsync lucid $TEMPDIR
echo dcerouter > $TEMPDIR/etc/hostname
LC_ALL=C chroot $TEMPDIR mkdir -p /var/run/network /lib/plymouth/themes
cat <<EOF > $TEMPDIR/etc/apt/sources.list
deb http://deb.linuxmce.org/ubuntu/ lucid beta2
deb http://deb.linuxmce.org/ubuntu/ 20dev_ubuntu main
#deb http://packages.medibuntu.org/ lucid free non-free
EOF
cat <<EOF > $TEMPDIR/etc/apt/sources.list.d/ubuntu.org
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid-updates main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt lucid-security main restricted universe multiverse
deb http://debian.slimdevices.com/ stable main
EOF
cat <<EOF >$TEMPDIR/etc/apt/sources.list.d/fluffy.list
deb http://fluffybitch.org/builder-lucid/ ./
deb ftp://mirror.hetzner.de/ubuntu/packages lucid main restricted universe multiverse
deb ftp://mirror.hetzner.de/ubuntu/packages lucid-updates main restricted universe multiverse
deb ftp://mirror.hetzner.de/ubuntu/security lucid-security main restricted universe multiverse
EOF
#create preseed file
cat <<EOF | LC_ALL=C chroot $TEMPDIR debconf-set-selections
debconf debconf/frontend select Noninteractive
# Choices: critical, high, medium, low
debconf debconf/priority select critical
msttcorefonts msttcorefonts/http_proxy string
msttcorefonts msttcorefonts/defoma note
msttcorefonts msttcorefonts/dlurl string
msttcorefonts msttcorefonts/savedir string
msttcorefonts msttcorefonts/baddldir note
msttcorefonts msttcorefonts/dldir string
msttcorefonts msttcorefonts/blurb note
msttcorefonts msttcorefonts/accepted-mscorefonts-eula boolean true
msttcorefonts msttcorefonts/present-mscorefonts-eula boolean false
sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true
sun-java6-jre shared/accepted-sun-dlj-v1-1 boolean true
sun-java6-jre sun-java6-jre/jcepolicy note
sun-java6-jre sun-java6-jre/stopthread boolean true
debconf debconf/frontend select Noninteractive
# Choices: critical, high, medium, low
debconf debconf/priority select critical
EOF
mv $TEMPDIR/usr/sbin/invoke-rc.d $TEMPDIR/usr/sbin/invoke-rc.d.orig
cat <<EOF > $TEMPDIR/usr/sbin/invoke-rc.d
#!/bin/bash
exit 0
EOF
chmod +x $TEMPDIR/usr/sbin/invoke-rc.d
mount -o bind /dev $TEMPDIR/dev
mount -t proc none $TEMPDIR/proc
mount -t devpts none $TEMPDIR/dev/pts
LC_ALL=C chroot $TEMPDIR apt-get update
LC_ALL=C chroot $TEMPDIR apt-get dist-upgrade -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get install linux-image-generic libc-dev-bin linux-libc-dev libc6-dev linux-headers-generic manpages-dev screen -y
LC_ALL=C chroot $TEMPDIR apt-get clean
cat <<EOF > $TEMPDIR/usr/sbin/invoke-rc.d
#!/bin/bash
exit 0
EOF
chmod +x $TEMPDIR/usr/sbin/invoke-rc.d
mv $TEMPDIR/usr/bin/screen $TEMPDIR/usr/bin/screen.orig
cat <<EOF > $TEMPDIR/usr/bin/screen
#!/bin/bash
exit 0
EOF
chmod +x $TEMPDIR/usr/bin/screen
mysqldPID=`LC_ALL=C chroot $TEMPDIR mysqld --skip-networking&`
echo MySQL PID: $mysqldPID
chmod 755 $TEMPDIR/var/lib/mysql
LC_ALL=C chroot $TEMPDIR apt-get install lmce-hybrid -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean
# Add the minimal KDE meta package, which will also install Xorg.
LC_ALL=C chroot $TEMPDIR apt-get install kde-minimal -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean
#
LC_ALL=C chroot $TEMPDIR apt-get install pluto-x-scripts pluto-orbiter -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean
# Asterisk stuff
LC_ALL=C chroot $TEMPDIR apt-get install lmce-asterisk -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean
# Additional stuff wanted by l3top
LC_ALL=C chroot $TEMPDIR apt-get install ubuntu-standard casper lupin-casper discover1 laptop-detect os-prober linux-generic grub2 plymouth-x11 ubiquity-frontend-kde initramfs-tools -y --allow-unauthenticated
LC_ALL=C chroot $TEMPDIR apt-get clean
rm $TEMPDIR/usr/sbin/invoke-rc.d
mv $TEMPDIR/usr/sbin/invoke-rc.d.orig $TEMPDIR/usr/sbin/invoke-rc.d
rm $TEMPDIR/usr/bin/screen
mv $TEMPDIR/usr/bin/screen.orig $TEMPDIR/usr/bin/screen
# We now have the problem, that Pluto/LinuxMCEs startup scripts get executed WITHOUT the
# use of invoke-rc.d - instead, they use screen.
#
umount $TEMPDIR/dev/pts
umount $TEMPDIR/proc
kill `lsof $TEMPDIR|grep mysqld|cut -d" " -f3|sort -u` || :
sleep 3
# kill $mysqldPID || :
umount $TEMPDIR/dev
# Show the current usage
du -h --max-depth=1 $TEMPDIR |& grep -v "du: cannot access"
# Get rid of existing network assignments
rm -f $TEMPDIR/etc/udev/rules.d/70-persistent-net-rules
# Remove fluffy and our providers Ubuntu mirror from the sources.list
rm -f $TEMPDIR/etc/apt/sources.list.d/fluffy.list
# and no longer use the local ubuntu mirror.
cat $TEMPDIR/etc/apt/sources.list.d/ubuntu.org >> $TEMPDIR/etc/apt/sources.list
# Make sure fluffy is not in the list of available repositories
LC_ALL=C chroot $TEMPDIR apt-get update
# Clean up debconf back to dialog
echo debconf debconf/frontend select Dialog | LC_ALL=C chroot $TEMPDIR debconf-set-selections
# Let's unmount everything, and run fsck to make sure the image
# is nice and clean.
umount $TEMPDIR
fsck.ext2 $IMAGEFILE
#
# Let's do the stuff using l3top's mastermaker
#
exit 0