1
0
mirror of synced 2026-02-20 13:55:16 +00:00

Compare commits

...

1 Commits

Author SHA1 Message Date
Axel Beckert
cc2a6d4e41 Change all occurrences of $prefix in hooks and roles with $TARGET
"target" is also the name used in the debian installer for the
installation target while "prefix" is too ambiguous.
2013-04-18 21:01:19 +02:00
50 changed files with 394 additions and 394 deletions

View File

@@ -3,7 +3,7 @@
# This script sets up the kernel and fstab for CentOS 5. # This script sets up the kernel and fstab for CentOS 5.
# #
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -21,16 +21,16 @@ fi
logMessage Script $0 starting logMessage Script $0 starting
# Make the console work # Make the console work
sed -i "/Cancelled/ {G;s/$/co:2345:respawn:\/sbin\/mingetty console/;}" ${prefix}/etc/inittab sed -i "/Cancelled/ {G;s/$/co:2345:respawn:\/sbin\/mingetty console/;}" ${TARGET}/etc/inittab
sed -i "s/^1:2345/#1:2345/" ${prefix}/etc/inittab sed -i "s/^1:2345/#1:2345/" ${TARGET}/etc/inittab
# MAKEDEV is needed at this point # MAKEDEV is needed at this point
chroot ${prefix} ln -s /sbin/MAKEDEV /dev/MAKEDEV chroot ${TARGET} ln -s /sbin/MAKEDEV /dev/MAKEDEV
chroot ${prefix} /sbin/MAKEDEV sda sdb sdc sdd chroot ${TARGET} /sbin/MAKEDEV sda sdb sdc sdd
# Create fstab # Create fstab
logMessage Create /etc/fstab logMessage Create /etc/fstab
cat > ${prefix}/etc/fstab << EOF cat > ${TARGET}/etc/fstab << EOF
# /etc/fstab: static file system information. # /etc/fstab: static file system information.
# #
# <file system> <mount point> <type> <options> <dump> <pass> # <file system> <mount point> <type> <options> <dump> <pass>
@@ -39,26 +39,26 @@ none /dev/pts devpts mode=0620 0 0
EOF EOF
for i in `seq 1 $NUMPARTITIONS`; do for i in `seq 1 $NUMPARTITIONS`; do
echo -n "/dev/xvde$i " >> ${prefix}/etc/fstab echo -n "/dev/xvde$i " >> ${TARGET}/etc/fstab
eval part=\$PARTITION$i eval part=\$PARTITION$i
if [ ! -z "`echo $part | grep swap`" ]; then if [ ! -z "`echo $part | grep swap`" ]; then
echo "none swap ws 0 0" >> ${prefix}/etc/fstab echo "none swap ws 0 0" >> ${TARGET}/etc/fstab
else else
echo $part | awk -F: '{print $4,$3,$5,0,1}' >> ${prefix}/etc/fstab echo $part | awk -F: '{print $4,$3,$5,0,1}' >> ${TARGET}/etc/fstab
fi fi
done done
# Install the kernel, grub and perl # Install the kernel, grub and perl
chroot ${prefix} yum clean expire-cache chroot ${TARGET} yum clean expire-cache
chroot ${prefix} yum -y install kernel-xen grub.x86_64 perl.x86_64 chroot ${TARGET} yum -y install kernel-xen grub.x86_64 perl.x86_64
KERNELVERSION=`ls ${prefix}/boot/vmlinuz-* | sed "s#$prefix/boot/vmlinuz-##"` KERNELVERSION=`ls ${TARGET}/boot/vmlinuz-* | sed "s#${TARGET}/boot/vmlinuz-##"`
logMessage "Kernel $KERNELVERSION found" logMessage "Kernel $KERNELVERSION found"
# Create grub's menu.list # Create grub's menu.list
logMessage "Creating /boot/grub/menu.lst" logMessage "Creating /boot/grub/menu.lst"
mkdir -p ${prefix}/boot/grub mkdir -p ${TARGET}/boot/grub
cat > ${prefix}/boot/grub/menu.lst << EOF cat > ${TARGET}/boot/grub/menu.lst << EOF
# WARNING : Don't forget to update this when you upgrade kernel ! # WARNING : Don't forget to update this when you upgrade kernel !
# You can also exclude kernel-xen from updates by putting # You can also exclude kernel-xen from updates by putting
# exclude=kernel-xen in in [main] in yum.conf # exclude=kernel-xen in in [main] in yum.conf

View File

@@ -3,7 +3,7 @@
# This script sets up the kernel and fstab for CentOS 5. # This script sets up the kernel and fstab for CentOS 5.
# #
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -21,16 +21,16 @@ fi
logMessage Script $0 starting logMessage Script $0 starting
# Make the console work # Make the console work
sed -i "/Cancelled/ {G;s/$/co:2345:respawn:\/sbin\/mingetty console/;}" ${prefix}/etc/inittab sed -i "/Cancelled/ {G;s/$/co:2345:respawn:\/sbin\/mingetty console/;}" ${TARGET}/etc/inittab
sed -i "s/^1:2345/#1:2345/" ${prefix}/etc/inittab sed -i "s/^1:2345/#1:2345/" ${TARGET}/etc/inittab
# MAKEDEV is needed at this point # MAKEDEV is needed at this point
chroot ${prefix} ln -s /sbin/MAKEDEV /dev/MAKEDEV chroot ${TARGET} ln -s /sbin/MAKEDEV /dev/MAKEDEV
chroot ${prefix} /sbin/MAKEDEV sda sdb sdc sdd chroot ${TARGET} /sbin/MAKEDEV sda sdb sdc sdd
# Create fstab # Create fstab
logMessage Create /etc/fstab logMessage Create /etc/fstab
cat > ${prefix}/etc/fstab << EOF cat > ${TARGET}/etc/fstab << EOF
# /etc/fstab: static file system information. # /etc/fstab: static file system information.
# #
# <file system> <mount point> <type> <options> <dump> <pass> # <file system> <mount point> <type> <options> <dump> <pass>
@@ -39,26 +39,26 @@ none /dev/pts devpts mode=0620 0 0
EOF EOF
for i in `seq 1 $NUMPARTITIONS`; do for i in `seq 1 $NUMPARTITIONS`; do
echo -n "/dev/sda$i " >> ${prefix}/etc/fstab echo -n "/dev/sda$i " >> ${TARGET}/etc/fstab
eval part=\$PARTITION$i eval part=\$PARTITION$i
if [ ! -z "`echo $part | grep swap`" ]; then if [ ! -z "`echo $part | grep swap`" ]; then
echo "none swap ws 0 0" >> ${prefix}/etc/fstab echo "none swap ws 0 0" >> ${TARGET}/etc/fstab
else else
echo $part | awk -F: '{print $4,$3,$5,0,1}' >> ${prefix}/etc/fstab echo $part | awk -F: '{print $4,$3,$5,0,1}' >> ${TARGET}/etc/fstab
fi fi
done done
# Install the kernel, grub and perl # Install the kernel, grub and perl
chroot ${prefix} yum clean expire-cache chroot ${TARGET} yum clean expire-cache
chroot ${prefix} yum -y install kernel-xen grub.x86_64 perl.x86_64 chroot ${TARGET} yum -y install kernel-xen grub.x86_64 perl.x86_64
KERNELVERSION=`ls ${prefix}/boot/vmlinuz-* | sed "s#$prefix/boot/vmlinuz-##"` KERNELVERSION=`ls ${TARGET}/boot/vmlinuz-* | sed "s#${TARGET}/boot/vmlinuz-##"`
logMessage "Kernel $KERNELVERSION found" logMessage "Kernel $KERNELVERSION found"
# Create grub's menu.list # Create grub's menu.list
logMessage "Creating /boot/grub/menu.lst" logMessage "Creating /boot/grub/menu.lst"
mkdir -p ${prefix}/boot/grub mkdir -p ${TARGET}/boot/grub
cat > ${prefix}/boot/grub/menu.lst << EOF cat > ${TARGET}/boot/grub/menu.lst << EOF
# WARNING : Don't forget to update this when you upgrade kernel ! # WARNING : Don't forget to update this when you upgrade kernel !
# You can also exclude kernel-xen from updates by putting # You can also exclude kernel-xen from updates by putting
# exclude=kernel-xen in in [main] in yum.conf # exclude=kernel-xen in in [main] in yum.conf
@@ -71,10 +71,10 @@ initrd /boot/initramfs-$KERNELVERSION.img
EOF EOF
# Some use lvm but mkinitrd will generate a wrong initrd when these are present. # Some use lvm but mkinitrd will generate a wrong initrd when these are present.
rm -f ${prefix}/etc/lvm/backup/* ${prefix}/etc/lvm/archive/* rm -f ${TARGET}/etc/lvm/backup/* ${TARGET}/etc/lvm/archive/*
# Generate a correct initrd. # Generate a correct initrd.
chroot ${prefix} mkinitrd --with=xenblk --with=xennet --preload=xenblk --preload=xennet\ chroot ${TARGET} mkinitrd --with=xenblk --with=xennet --preload=xenblk --preload=xennet\
-f /boot/initramfs-$KERNELVERSION.img $KERNELVERSION -f /boot/initramfs-$KERNELVERSION.img $KERNELVERSION
# #

View File

@@ -64,51 +64,51 @@ assert ()
# #
installDebianPackage () installDebianPackage ()
{ {
prefix=$1 TARGET=$1
shift shift
# #
# Log our options # Log our options
# #
logMessage "Installing Debian packages $@ to prefix ${prefix}" logMessage "Installing Debian packages $@ to target ${TARGET}"
# #
# We require a package + prefix # We require a package + target
# #
assert "$LINENO" "${prefix}" assert "$LINENO" "${TARGET}"
# #
# Prefix must be a directory. # Target must be a directory.
# #
assert "$LINENO" -d ${prefix} assert "$LINENO" -d ${TARGET}
# #
# Use policy-rc to stop any daemons from starting. # Use policy-rc to stop any daemons from starting.
# #
printf '#!/bin/sh\nexit 101\n' > ${prefix}/usr/sbin/policy-rc.d printf '#!/bin/sh\nexit 101\n' > ${TARGET}/usr/sbin/policy-rc.d
chmod +x ${prefix}/usr/sbin/policy-rc.d chmod +x ${TARGET}/usr/sbin/policy-rc.d
# #
# Disable the start-stop-daemon - this shouldn't be necessary # Disable the start-stop-daemon - this shouldn't be necessary
# with the policy-rc.d addition above, however leaving it in # with the policy-rc.d addition above, however leaving it in
# place won't hurt .. # place won't hurt ..
# #
disableStartStopDaemon ${prefix} disableStartStopDaemon ${TARGET}
# #
# Install the packages # Install the packages
# #
DEBIAN_FRONTEND=noninteractive chroot ${prefix} /usr/bin/apt-get --yes --force-yes --no-install-recommends install "$@" DEBIAN_FRONTEND=noninteractive chroot ${TARGET} /usr/bin/apt-get --yes --force-yes --no-install-recommends install "$@"
# #
# Remove the policy-rc.d script. # Remove the policy-rc.d script.
# #
rm -f ${prefix}/usr/sbin/policy-rc.d rm -f ${TARGET}/usr/sbin/policy-rc.d
# #
# Re-enable the start-stop-daemon # Re-enable the start-stop-daemon
# #
enableStartStopDaemon ${prefix} enableStartStopDaemon ${TARGET}
} }
@@ -118,7 +118,7 @@ installDebianPackage ()
# #
generateDebianGrubMenuLst () generateDebianGrubMenuLst ()
{ {
prefix="$1" TARGET="$1"
DOMU_ISSUE="$2" DOMU_ISSUE="$2"
DOMU_KERNEL="$3" DOMU_KERNEL="$3"
DOMU_RAMDISK="$4" DOMU_RAMDISK="$4"
@@ -126,27 +126,27 @@ generateDebianGrubMenuLst ()
# #
# Log our options # Log our options
# #
logMessage "Generating a legacy GRUB menu.lst into prefix ${prefix}" logMessage "Generating a legacy GRUB menu.lst into target ${TARGET}"
# #
# We require at least 3 parameters # We require at least 3 parameters
# #
assert "$LINENO" "${prefix}" assert "$LINENO" "${TARGET}"
assert "$LINENO" "${DOMU_ISSUE}" assert "$LINENO" "${DOMU_ISSUE}"
assert "$LINENO" "${DOMU_KERNEL}" assert "$LINENO" "${DOMU_KERNEL}"
# #
# Prefix must be a directory, kernel a file # Target must be a directory, kernel a file
# #
assert "$LINENO" -d ${prefix} assert "$LINENO" -d ${TARGET}
assert "$LINENO" -f "${prefix}/boot/${DOMU_KERNEL}" assert "$LINENO" -f "${TARGET}/boot/${DOMU_KERNEL}"
# #
# Generate a menu.lst for pygrub # Generate a menu.lst for pygrub
# #
mkdir -p ${prefix}/boot/grub mkdir -p ${TARGET}/boot/grub
cat << E_O_MENU > ${prefix}/boot/grub/menu.lst cat << E_O_MENU > ${TARGET}/boot/grub/menu.lst
default 0 default 0
timeout 2 timeout 2
@@ -256,10 +256,10 @@ E_O_MENU
# #
disableStartStopDaemon () disableStartStopDaemon ()
{ {
local prefix="$1" local TARGET="$1"
assert "$LINENO" "${prefix}" assert "$LINENO" "${TARGET}"
for starter in start-stop-daemon initctl; do for starter in start-stop-daemon initctl; do
local daemonfile="${prefix}/sbin/${starter}" local daemonfile="${TARGET}/sbin/${starter}"
mv "${daemonfile}" "${daemonfile}.REAL" mv "${daemonfile}" "${daemonfile}.REAL"
echo '#!/bin/sh' > "${daemonfile}" echo '#!/bin/sh' > "${daemonfile}"
@@ -277,10 +277,10 @@ disableStartStopDaemon ()
# #
enableStartStopDaemon () enableStartStopDaemon ()
{ {
local prefix=$1 local TARGET=$1
assert "$LINENO" "${prefix}" assert "$LINENO" "${TARGET}"
for starter in start-stop-daemon initctl; do for starter in start-stop-daemon initctl; do
local daemonfile="${prefix}/sbin/${starter}" local daemonfile="${TARGET}/sbin/${starter}"
# #
# If the disabled file is present then enable it. # If the disabled file is present then enable it.
@@ -301,28 +301,28 @@ enableStartStopDaemon ()
# #
removeDebianPackage () removeDebianPackage ()
{ {
prefix=$1 TARGET=$1
shift shift
# #
# Log our options # Log our options
# #
logMessage "Purging Debian package ${package} from prefix ${prefix}" logMessage "Purging Debian package ${package} from target ${TARGET}"
# #
# We require a prefix # We require a target
# #
assert "$LINENO" "${prefix}" assert "$LINENO" "${TARGET}"
# #
# Prefix must be a directory. # Target must be a directory.
# #
assert "$LINENO" -d ${prefix} assert "$LINENO" -d ${TARGET}
# #
# Purge the packages we've been given. # Purge the packages we've been given.
# #
chroot ${prefix} /usr/bin/apt-get remove --yes --purge "$@" chroot ${TARGET} /usr/bin/apt-get remove --yes --purge "$@"
} }
@@ -332,29 +332,29 @@ removeDebianPackage ()
# #
installRPMPackage () installRPMPackage ()
{ {
prefix=$1 TARGET=$1
package=$2 package=$2
# #
# Log our options # Log our options
# #
logMessage "Installing RPM ${package} to prefix ${prefix}" logMessage "Installing RPM ${package} to target ${TARGET}"
# #
# We require a package + prefix # We require a package + target
# #
assert "$LINENO" "${package}" assert "$LINENO" "${package}"
assert "$LINENO" "${prefix}" assert "$LINENO" "${TARGET}"
# #
# Prefix must be a directory. # Target must be a directory.
# #
assert "$LINENO" -d ${prefix} assert "$LINENO" -d ${TARGET}
# #
# Install the package # Install the package
# #
chroot ${prefix} /usr/bin/yum -y install ${package} chroot ${TARGET} /usr/bin/yum -y install ${package}
} }
# Backwards Compatibility Function # Backwards Compatibility Function
@@ -373,7 +373,7 @@ isYum() ( [ -x $1/usr/bin/yum ] )
# #
installPackage () installPackage ()
{ {
prefix=$1 TARGET=$1
package=$2 package=$2
if isDeb ; then if isDeb ; then
@@ -396,13 +396,13 @@ installPackage ()
# #
installGentooPackage () installGentooPackage ()
{ {
prefix=$1 TARGET=$1
package=$2 package=$2
# #
# Log our options # Log our options
# #
logMessage "Installing Gentoo package ${package} to prefix ${prefix}" logMessage "Installing Gentoo package ${package} to target ${TARGET}"
logMessage "NOTE: Not doing anything - this is a stub - FIXME" logMessage "NOTE: Not doing anything - this is a stub - FIXME"

View File

@@ -8,7 +8,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -30,20 +30,20 @@ logMessage Script $0 starting
# #
# Make sure we have a directory. # Make sure we have a directory.
# #
if [ ! -d "${prefix}/usr/sbin" ]; then if [ ! -d "${TARGET}/usr/sbin" ]; then
mkdir -p "${prefix}/usr/sbin" mkdir -p "${TARGET}/usr/sbin"
logMessage "created missing directory: ${prefix}/usr/sbin" logMessage "created missing directory: ${TARGET}/usr/sbin"
fi fi
# #
# Add the script. # Add the script.
# #
echo '#!/bin/sh' > ${prefix}/usr/sbin/policy-rc.d echo '#!/bin/sh' > ${TARGET}/usr/sbin/policy-rc.d
echo 'exit 101' >> ${prefix}/usr/sbin/policy-rc.d echo 'exit 101' >> ${TARGET}/usr/sbin/policy-rc.d
chmod 755 ${prefix}/usr/sbin/policy-rc.d chmod 755 ${TARGET}/usr/sbin/policy-rc.d

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -29,9 +29,9 @@ logMessage Script $0 starting
# #
# Enable the shadow passwords if the command is found. # Enable the shadow passwords if the command is found.
# #
if [ -x ${prefix}/sbin/shadowconfig ]; then if [ -x ${TARGET}/sbin/shadowconfig ]; then
chroot ${prefix} /sbin/shadowconfig on chroot ${TARGET} /sbin/shadowconfig on
else else
logMessage "/sbin/shadowconfig not found. skipping." logMessage "/sbin/shadowconfig not found. skipping."

View File

@@ -8,7 +8,7 @@
prefix=$1 TARGET=$1
# #
@@ -37,8 +37,8 @@ if [ "`uname -m`" = "x86_64" ]; then
else else
logMessage "Disabling TLS" logMessage "Disabling TLS"
mv ${prefix}/lib/tls ${prefix}/lib/tls.disabled mv ${TARGET}/lib/tls ${TARGET}/lib/tls.disabled
mkdir ${prefix}/lib/tls mkdir ${TARGET}/lib/tls
fi fi

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -29,7 +29,7 @@ logMessage Script $0 starting
# #
# Disable the startup scripts from all runlevels. # Disable the startup scripts from all runlevels.
# #
chroot ${prefix} /usr/sbin/update-rc.d -f hwclock.sh remove chroot ${TARGET} /usr/sbin/update-rc.d -f hwclock.sh remove
# #
# Log our finish # Log our finish

View File

@@ -8,7 +8,7 @@
# #
prefix=$1 TARGET=$1
# #
@@ -33,17 +33,17 @@ logMessage Script $0 starting
# the setting to the proxy guess file. # the setting to the proxy guess file.
# #
if [ ${apt_proxy} ]; then if [ ${apt_proxy} ]; then
echo "Acquire::http::Proxy \"${apt_proxy}\";" > ${prefix}/etc/apt/apt.conf.d/01proxy echo "Acquire::http::Proxy \"${apt_proxy}\";" > ${TARGET}/etc/apt/apt.conf.d/01proxy
else else
logMessage The use of a proxy detected. logMessage The use of a proxy detected.
apt-config dump | grep -i Acquire::HTTP::Proxy > ${prefix}/etc/apt/apt.conf.d/01proxy apt-config dump | grep -i Acquire::HTTP::Proxy > ${TARGET}/etc/apt/apt.conf.d/01proxy
fi fi
# #
# Setup the sources.list file for new installations of Ubuntu GNU/Linux. # Setup the sources.list file for new installations of Ubuntu GNU/Linux.
# #
cat <<E_O_APT > ${prefix}/etc/apt/sources.list cat <<E_O_APT > ${TARGET}/etc/apt/sources.list
# #
# /etc/apt/sources.list # /etc/apt/sources.list
# #
@@ -66,7 +66,7 @@ E_O_APT
# #
# Now that the sources have been setup make sure the system is up to date. # Now that the sources have been setup make sure the system is up to date.
# #
chroot ${prefix} /usr/bin/apt-get update chroot ${TARGET} /usr/bin/apt-get update
# #
@@ -76,7 +76,7 @@ chroot ${prefix} /usr/bin/apt-get update
if [ "$arch" = 'i386' -a "$dist" != 'dapper' ]; then if [ "$arch" = 'i386' -a "$dist" != 'dapper' ]; then
logMessage "Installing libc6-xen" logMessage "Installing libc6-xen"
installDebianPackage ${prefix} libc6-xen installDebianPackage ${TARGET} libc6-xen
fi fi

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -29,12 +29,12 @@ logMessage Script $0 starting
# #
# Update yum # Update yum
# #
if [ ! -d ${prefix}/proc ]; then if [ ! -d ${TARGET}/proc ]; then
mkdir -p ${prefix}/proc mkdir -p ${TARGET}/proc
fi fi
mount -o bind /proc ${prefix}/proc mount -o bind /proc ${TARGET}/proc
chroot ${prefix} /usr/bin/yum update chroot ${TARGET} /usr/bin/yum update
umount ${prefix}/proc umount ${TARGET}/proc
# #

View File

@@ -7,7 +7,7 @@
prefix=$1 TARGET=$1
# #
@@ -31,7 +31,7 @@ logMessage Script $0 starting
# #
# NOTE: Failure to support your favourite language is *not* a bug. # NOTE: Failure to support your favourite language is *not* a bug.
# #
installDebianPackage ${prefix} language-pack-en installDebianPackage ${TARGET} language-pack-en
# #

View File

@@ -6,7 +6,7 @@
# #
prefix=$1 TARGET=$1
# #
@@ -30,20 +30,20 @@ logMessage Script $0 starting
# #
# Upstart on Ubuntu newer than 8.04 # Upstart on Ubuntu newer than 8.04
rm -f ${prefix}/etc/init/tty[!1].conf rm -f ${TARGET}/etc/init/tty[!1].conf
[ -f ${prefix}/etc/init/tty1.conf ] && { [ -f ${TARGET}/etc/init/tty1.conf ] && {
sed -i -e s/tty1/hvc0/ ${prefix}/etc/init/tty1.conf sed -i -e s/tty1/hvc0/ ${TARGET}/etc/init/tty1.conf
mv ${prefix}/etc/init/tty1.conf ${prefix}/etc/init/hvc0.conf mv ${TARGET}/etc/init/tty1.conf ${TARGET}/etc/init/hvc0.conf
} }
# Upstart on Ubuntu 8.04 or older # Upstart on Ubuntu 8.04 or older
rm -f ${prefix}/etc/event.d/tty[!1] rm -f ${TARGET}/etc/event.d/tty[!1]
[ -f ${prefix}/etc/event.d/tty1 ] && { [ -f ${TARGET}/etc/event.d/tty1 ] && {
sed -i -e s/tty1/hvc0/ ${prefix}/etc/event.d/tty1 sed -i -e s/tty1/hvc0/ ${TARGET}/etc/event.d/tty1
mv ${prefix}/etc/event.d/tty1 ${prefix}/etc/event.d/hvc0 mv ${TARGET}/etc/event.d/tty1 ${TARGET}/etc/event.d/hvc0
} }
# Inittab # Inittab
[ -f ${prefix}/etc/inittab ] && sed -i -e 's/^\([2-6].*:respawn*\)/#\1/' -e 's/^T/#\t/' -e 's/tty1$/hvc0/' ${prefix}/etc/inittab [ -f ${TARGET}/etc/inittab ] && sed -i -e 's/^\([2-6].*:respawn*\)/#\1/' -e 's/^T/#\t/' -e 's/tty1$/hvc0/' ${TARGET}/etc/inittab
# #
@@ -59,21 +59,21 @@ if [ ! -z "${serial_device}" ]; then
# replace existing device. # replace existing device.
# Upstart on Ubuntu newer than 8.04 # Upstart on Ubuntu newer than 8.04
[ -f ${prefix}/etc/init/hvc0.conf ] && { [ -f ${TARGET}/etc/init/hvc0.conf ] && {
mv ${prefix}/etc/init/hvc0.conf ${prefix}/etc/init/${serial_device}.conf mv ${TARGET}/etc/init/hvc0.conf ${TARGET}/etc/init/${serial_device}.conf
sed -i -e s/hvc0/${serial_device}/ ${prefix}/etc/init/${serial_device}.conf sed -i -e s/hvc0/${serial_device}/ ${TARGET}/etc/init/${serial_device}.conf
} }
# Upstart on Ubuntu 8.04 or older # Upstart on Ubuntu 8.04 or older
[ -f ${prefix}/etc/event.d/hvc0 ] && { [ -f ${TARGET}/etc/event.d/hvc0 ] && {
mv ${prefix}/etc/event.d/hvc0 ${prefix}/etc/event.d/${serial_device} mv ${TARGET}/etc/event.d/hvc0 ${TARGET}/etc/event.d/${serial_device}
sed -i -e s/hvc0/${serial_device}/ ${prefix}/etc/event.d/${serial_device} sed -i -e s/hvc0/${serial_device}/ ${TARGET}/etc/event.d/${serial_device}
} }
# Inittab # Inittab
[ -f ${prefix}/etc/inittab ] && sed -i -e s/hvc0/${serial_device}/ ${prefix}/etc/inittab [ -f ${TARGET}/etc/inittab ] && sed -i -e s/hvc0/${serial_device}/ ${TARGET}/etc/inittab
# make sure that it is allowed to login. # make sure that it is allowed to login.
echo $serial_device >> ${prefix}/etc/securetty echo $serial_device >> ${TARGET}/etc/securetty
fi fi

View File

@@ -8,7 +8,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -29,7 +29,7 @@ logMessage Script $0 starting
# #
# Make sure we have an /etc/network directory. # Make sure we have an /etc/network directory.
# #
mkdir -p ${prefix}/etc/network mkdir -p ${TARGET}/etc/network
# #
@@ -40,7 +40,7 @@ setupDynamicNetworking ()
# #
# The host is using DHCP. # The host is using DHCP.
# #
cat <<E_O_DHCP > ${prefix}/etc/network/interfaces cat <<E_O_DHCP > ${TARGET}/etc/network/interfaces
# This file describes the network interfaces available on your system # This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5). # and how to activate them. For more information, see interfaces(5).
@@ -88,7 +88,7 @@ setupStaticNetworking ()
# #
# We have a static IP address # We have a static IP address
# #
cat <<E_O_STATIC >${prefix}/etc/network/interfaces cat <<E_O_STATIC >${TARGET}/etc/network/interfaces
# This file describes the network interfaces available on your system # This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5). # and how to activate them. For more information, see interfaces(5).
@@ -122,7 +122,7 @@ E_O_STATIC
logMessage Adding etho:${interface} logMessage Adding etho:${interface}
cat <<E_O_STATIC >>${prefix}/etc/network/interfaces cat <<E_O_STATIC >>${TARGET}/etc/network/interfaces
auto eth0:${interface} auto eth0:${interface}
iface eth0:${interface} inet static iface eth0:${interface} inet static
address ${value} address ${value}
@@ -139,12 +139,12 @@ E_O_STATIC
# will be restored after hooks are run. # will be restored after hooks are run.
# #
if [ '' != "$nameserver" ]; then if [ '' != "$nameserver" ]; then
rm -f ${prefix}/etc/resolv.conf.old rm -f ${TARGET}/etc/resolv.conf.old
for ns in $nameserver; do for ns in $nameserver; do
echo "nameserver $ns" >>${prefix}/etc/resolv.conf.old echo "nameserver $ns" >>${TARGET}/etc/resolv.conf.old
done done
else else
cp /etc/resolv.conf ${prefix}/etc/resolv.conf.old cp /etc/resolv.conf ${TARGET}/etc/resolv.conf.old
fi fi
} }

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -29,7 +29,7 @@ logMessage Script $0 starting
# #
# Make sure we have an /etc/sysconfig/network-scripts directory. # Make sure we have an /etc/sysconfig/network-scripts directory.
# #
mkdir -p ${prefix}/etc/sysconfig/network-scripts/ mkdir -p ${TARGET}/etc/sysconfig/network-scripts/
# #
@@ -40,7 +40,7 @@ if [ -z "${dhcp}" ]; then
# #
# Setup the initial interface # Setup the initial interface
# #
cat <<E_O_STATIC >${prefix}/etc/sysconfig/network-scripts/ifcfg-eth0 cat <<E_O_STATIC >${TARGET}/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 DEVICE=eth0
ONBOOT=yes ONBOOT=yes
BOOTPROTO=static BOOTPROTO=static
@@ -62,7 +62,7 @@ E_O_STATIC
logMessage Adding etho:${interface} logMessage Adding etho:${interface}
cat <<E_O_STATIC >${prefix}/etc/sysconfig/network-scripts/ifcfg-eth0:${interface} cat <<E_O_STATIC >${TARGET}/etc/sysconfig/network-scripts/ifcfg-eth0:${interface}
DEVICE=eth0:${interface} DEVICE=eth0:${interface}
ONBOOT=yes ONBOOT=yes
BOOTPROTO=static BOOTPROTO=static
@@ -79,27 +79,27 @@ E_O_STATIC
# will be restored after hooks are run. # will be restored after hooks are run.
# #
if [ '' != "$nameserver" ]; then if [ '' != "$nameserver" ]; then
rm -f ${prefix}/etc/resolv.conf.old rm -f ${TARGET}/etc/resolv.conf.old
for ns in $nameserver; do for ns in $nameserver; do
echo "nameserver $ns" >>${prefix}/etc/resolv.conf.old echo "nameserver $ns" >>${TARGET}/etc/resolv.conf.old
done done
else else
cp /etc/resolv.conf ${prefix}/etc/resolv.conf.old cp /etc/resolv.conf ${TARGET}/etc/resolv.conf.old
fi fi
else else
cat <<E_O_DHCP >${prefix}/etc/sysconfig/network-scripts/ifcfg-eth0 cat <<E_O_DHCP >${TARGET}/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 DEVICE=eth0
BOOTPROTO=dhcp BOOTPROTO=dhcp
ONBOOT=yes ONBOOT=yes
E_O_DHCP E_O_DHCP
chroot ${prefix} /usr/bin/yum -y install dhclient chroot ${TARGET} /usr/bin/yum -y install dhclient
fi fi
# #
# Don't forget to setup the default route. # Don't forget to setup the default route.
# #
cat <<EOF >${prefix}/etc/sysconfig/network cat <<EOF >${TARGET}/etc/sysconfig/network
NETWORKING=yes NETWORKING=yes
GATEWAY=${gateway} GATEWAY=${gateway}
HOSTNAME=${hostname} HOSTNAME=${hostname}

View File

@@ -9,7 +9,7 @@
prefix=$1 TARGET=$1
# #
@@ -43,8 +43,8 @@ umask 022
# #
# Setup the mailname + hostname files. # Setup the mailname + hostname files.
# #
echo $GUEST_HOSTNAME > ${prefix}/etc/hostname echo $GUEST_HOSTNAME > ${TARGET}/etc/hostname
echo $GUEST_FQDN > ${prefix}/etc/mailname echo $GUEST_FQDN > ${TARGET}/etc/mailname
# #
@@ -55,7 +55,7 @@ if [ -z "${copyhosts}" ]; then
# #
# Copy localhost # Copy localhost
# #
cat > ${prefix}/etc/hosts <<EOF cat > ${TARGET}/etc/hosts <<EOF
127.0.0.1 localhost 127.0.0.1 localhost
EOF EOF
# #
@@ -65,21 +65,21 @@ EOF
# #
# If dhcp is diabled, FQDN should resolve to our IP # If dhcp is diabled, FQDN should resolve to our IP
# #
cat >> ${prefix}/etc/hosts <<EOF cat >> ${TARGET}/etc/hosts <<EOF
${ip1} $GUEST_FQDN $GUEST_HOSTNAME ${ip1} $GUEST_FQDN $GUEST_HOSTNAME
EOF EOF
else else
cat >> ${prefix}/etc/hosts <<EOF cat >> ${TARGET}/etc/hosts <<EOF
127.0.1.1 $GUEST_FQDN $GUEST_HOSTNAME 127.0.1.1 $GUEST_FQDN $GUEST_HOSTNAME
EOF EOF
fi fi
cat >> ${prefix}/etc/hosts <<EOF cat >> ${TARGET}/etc/hosts <<EOF
# The following lines are desirable for IPv6 capable hosts # The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback ::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix ff00::0 ip6-mcastTARGET
ff02::1 ip6-allnodes ff02::1 ip6-allnodes
ff02::2 ip6-allrouters ff02::2 ip6-allrouters
ff02::3 ip6-allhosts ff02::3 ip6-allhosts
@@ -88,23 +88,23 @@ EOF
else else
# Non-IPv6 stuff. # Non-IPv6 stuff.
grep -v '\(::\|IPv6\)' /etc/hosts > ${prefix}/etc/hosts grep -v '\(::\|IPv6\)' /etc/hosts > ${TARGET}/etc/hosts
# New entry. # New entry.
if [ -z "${dhcp}" ]; then if [ -z "${dhcp}" ]; then
cat >> ${prefix}/etc/hosts <<EOF cat >> ${TARGET}/etc/hosts <<EOF
${ip1} $GUEST_FQDN $GUEST_HOSTNAME ${ip1} $GUEST_FQDN $GUEST_HOSTNAME
EOF EOF
else else
cat >> ${prefix}/etc/hosts <<EOF cat >> ${TARGET}/etc/hosts <<EOF
127.0.1.1 $GUEST_FQDN $GUEST_HOSTNAME 127.0.1.1 $GUEST_FQDN $GUEST_HOSTNAME
EOF EOF
fi fi
# IPv6 stuff. # IPv6 stuff.
grep '\(::\|IPv6\)' /etc/hosts >> ${prefix}/etc/hosts grep '\(::\|IPv6\)' /etc/hosts >> ${TARGET}/etc/hosts
fi fi

View File

@@ -9,7 +9,7 @@
prefix=$1 TARGET=$1
# #
@@ -37,8 +37,8 @@ umask 022
# #
# Setup the mailname + hostname files. # Setup the mailname + hostname files.
# #
echo ${hostname} | sed 's/^\([^\.]*\)\..*/\1/' > ${prefix}/etc/hostname echo ${hostname} | sed 's/^\([^\.]*\)\..*/\1/' > ${TARGET}/etc/hostname
echo ${hostname} > ${prefix}/etc/mailname echo ${hostname} > ${TARGET}/etc/mailname
# #
@@ -48,21 +48,21 @@ echo ${hostname} > ${prefix}/etc/mailname
if [ -z "${dhcp}" ]; then if [ -z "${dhcp}" ]; then
# Non-IPv6 stuff. # Non-IPv6 stuff.
grep -v '\(::\|IPv6\)' /etc/hosts > ${prefix}/etc/hosts grep -v '\(::\|IPv6\)' /etc/hosts > ${TARGET}/etc/hosts
# New entry. # New entry.
echo "${ip1} ${hostname}" >> ${prefix}/etc/hosts echo "${ip1} ${hostname}" >> ${TARGET}/etc/hosts
echo " " >> ${prefix}/etc/hosts echo " " >> ${TARGET}/etc/hosts
# IPv6 stuff. # IPv6 stuff.
grep '\(::\|IPv6\)' /etc/hosts >> ${prefix}/etc/hosts grep '\(::\|IPv6\)' /etc/hosts >> ${TARGET}/etc/hosts
else else
# #
# Stub /etc/hosts for DHCP clients. # Stub /etc/hosts for DHCP clients.
# #
cat >> ${prefix}/etc/hosts <<EOF cat >> ${TARGET}/etc/hosts <<EOF
127.0.0.1 localhost 127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts # The following lines are desirable for IPv6 capable hosts

View File

@@ -8,7 +8,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -32,8 +32,8 @@ logMessage Script $0 starting
MAKEDEV='' MAKEDEV=''
MAKEDEV_PATHS="/sbin/MAKEDEV /dev/MAKEDEV" MAKEDEV_PATHS="/sbin/MAKEDEV /dev/MAKEDEV"
for MAKEDEV_PATH in ${MAKEDEV_PATHS}; do for MAKEDEV_PATH in ${MAKEDEV_PATHS}; do
if [ -x "${prefix}${MAKEDEV_PATH}" ]; then if [ -x "${TARGET}${MAKEDEV_PATH}" ]; then
MAKEDEV="${prefix}${MAKEDEV_PATH}" MAKEDEV="${TARGET}${MAKEDEV_PATH}"
break break
fi fi
done done
@@ -44,11 +44,11 @@ if [ -n "${MAKEDEV}" ]; then
# Early termination if we have a couple of common devices present # Early termination if we have a couple of common devices present
# should speed up installs which use --copy/--tar # should speed up installs which use --copy/--tar
# #
if ( test `ls -1 ${prefix}/dev | wc -l` -gt 10 ); then if ( test `ls -1 ${TARGET}/dev | wc -l` -gt 10 ); then
# #
# We still need to make sure the basic devices are present # We still need to make sure the basic devices are present
# #
cd ${prefix}/dev cd ${TARGET}/dev
${MAKEDEV} std ${MAKEDEV} std
${MAKEDEV} hda ${MAKEDEV} hda
${MAKEDEV} sda ${MAKEDEV} sda
@@ -62,7 +62,7 @@ fi
# #
# Make the device nodes. # Make the device nodes.
# #
cd ${prefix}/dev cd ${TARGET}/dev
${MAKEDEV} generic ${MAKEDEV} generic
${MAKEDEV} std ${MAKEDEV} std

View File

@@ -5,7 +5,7 @@
# #
prefix=$1 TARGET=$1
# #
@@ -27,8 +27,8 @@ logMessage Script $0 starting
# #
# Copy "required" files from our host. # Copy "required" files from our host.
# #
cp /etc/timezone ${prefix}/etc cp /etc/timezone ${TARGET}/etc
cp /etc/localtime ${prefix}/etc cp /etc/localtime ${TARGET}/etc
# #

View File

@@ -5,7 +5,7 @@
# #
prefix=$1 TARGET=$1
# #
@@ -32,7 +32,7 @@ if [ -d /etc/xen-tools/skel ]; then
logMessage Copying files from /etc/xen-tools/skel logMessage Copying files from /etc/xen-tools/skel
(cd /etc/xen-tools/skel; tar -cf - . ) | (cd ${prefix}/; tar -xpf -) (cd /etc/xen-tools/skel; tar -cf - . ) | (cd ${TARGET}/; tar -xpf -)
logMessage Finished logMessage Finished

View File

@@ -10,7 +10,7 @@
# -- # --
# http://nedos.net/ # http://nedos.net/
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -31,13 +31,13 @@ logMessage Script $0 starting
# #
# First, create an ssh directory # First, create an ssh directory
# #
mkdir -p ${prefix}/etc/ssh mkdir -p ${TARGET}/etc/ssh
# #
# Second, Generate the Host RSA Key # Second, Generate the Host RSA Key
# #
if [ ! -f ${prefix}/etc/ssh/ssh_host_rsa_key ]; then if [ ! -f ${TARGET}/etc/ssh/ssh_host_rsa_key ]; then
if ssh-keygen -t rsa -N "" -f ${prefix}/etc/ssh/ssh_host_rsa_key -C "root@${hostname}"; then if ssh-keygen -t rsa -N "" -f ${TARGET}/etc/ssh/ssh_host_rsa_key -C "root@${hostname}"; then
logMessage "successfully generated RSA host key" logMessage "successfully generated RSA host key"
else else
logMessage "failed to generate RSA host key" logMessage "failed to generate RSA host key"
@@ -47,8 +47,8 @@ fi
# #
# Third, Generate the Host DSA Key # Third, Generate the Host DSA Key
# #
if [ ! -f ${prefix}/etc/ssh/ssh_host_dsa_key ]; then if [ ! -f ${TARGET}/etc/ssh/ssh_host_dsa_key ]; then
if ssh-keygen -t dsa -N "" -f ${prefix}/etc/ssh/ssh_host_dsa_key -C "root@${hostname}"; then if ssh-keygen -t dsa -N "" -f ${TARGET}/etc/ssh/ssh_host_dsa_key -C "root@${hostname}"; then
logMessage "successfully generated DSA host key" logMessage "successfully generated DSA host key"
else else
logMessage "failed to generate DSA host key" logMessage "failed to generate DSA host key"
@@ -58,7 +58,7 @@ fi
# #
# Install ssh # Install ssh
# #
installDebianPackage ${prefix} openssh-server installDebianPackage ${TARGET} openssh-server
# #
# Log our finish # Log our finish

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -28,12 +28,12 @@ logMessage Script $0 starting
# #
# Install the OpenSSH server. # Install the OpenSSH server.
# #
if [ ! -d ${prefix}/proc ]; then if [ ! -d ${TARGET}/proc ]; then
mkdir -p ${prefix}/proc mkdir -p ${TARGET}/proc
fi fi
mount -o bind /proc ${prefix}/proc mount -o bind /proc ${TARGET}/proc
chroot ${prefix} /usr/bin/yum -y install openssh-server passwd chroot ${TARGET} /usr/bin/yum -y install openssh-server passwd
umount ${prefix}/proc umount ${TARGET}/proc
# #

View File

@@ -8,7 +8,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -29,7 +29,7 @@ logMessage Script $0 starting
# #
# If the file doesn't exist exit early. # If the file doesn't exist exit early.
# #
if [ ! -e ${prefix}/etc/securetty ]; then if [ ! -e ${TARGET}/etc/securetty ]; then
logMessage /etc/securetty not found. logMessage /etc/securetty not found.
exit exit
fi fi
@@ -43,13 +43,13 @@ for i in xvc0 hvc0 ; do
# #
# Only append if not presnt. # Only append if not presnt.
# #
if ( grep $i ${prefix}/etc/securetty > /dev/null ) ; then if ( grep $i ${TARGET}/etc/securetty > /dev/null ) ; then
logMessage Host already has $i entry logMessage Host already has $i entry
else else
echo $i >> ${prefix}/etc/securetty echo $i >> ${TARGET}/etc/securetty
fi fi
done done

View File

@@ -12,7 +12,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
@@ -50,16 +50,16 @@ if [ -n "${modules}" -a -d "${modules}" ]; then
# #
logMessage "Copying modules from ${modules}" logMessage "Copying modules from ${modules}"
mkdir -p ${prefix}/lib/modules mkdir -p ${TARGET}/lib/modules
cp -au ${modules} ${prefix}/lib/modules cp -au ${modules} ${TARGET}/lib/modules
elif chroot ${prefix} /usr/bin/apt-cache show ${linux_modules_package} >/dev/null 2>/dev/null; then elif chroot ${TARGET} /usr/bin/apt-cache show ${linux_modules_package} >/dev/null 2>/dev/null; then
logMessage "Package '${linux_modules_package}' is available - installing" logMessage "Package '${linux_modules_package}' is available - installing"
# #
# If it worked then we can install the package. # If it worked then we can install the package.
# #
installDebianPackage ${prefix} ${linux_modules_package} installDebianPackage ${TARGET} ${linux_modules_package}
else else
# #
@@ -69,8 +69,8 @@ else
logMessage "Package '${linux_modules_package}' is not available" logMessage "Package '${linux_modules_package}' is not available"
logMessage "Copying modules from /lib/modules/$(uname -r)" logMessage "Copying modules from /lib/modules/$(uname -r)"
mkdir -p ${prefix}/lib/modules mkdir -p ${TARGET}/lib/modules
cp -au /lib/modules/$(uname -r) ${prefix}/lib/modules cp -au /lib/modules/$(uname -r) ${TARGET}/lib/modules
fi fi
fi # if pygrub fi # if pygrub

View File

@@ -12,7 +12,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
@@ -36,8 +36,8 @@ logMessage Script $0 starting
# Copy the modules from the host to the new system - we should only # Copy the modules from the host to the new system - we should only
# really copy the *correct* modules, but we don't know what they are. # really copy the *correct* modules, but we don't know what they are.
# #
mkdir -p ${prefix}/lib/modules mkdir -p ${TARGET}/lib/modules
cp -au /lib/modules/*/ ${prefix}/lib/modules cp -au /lib/modules/*/ ${TARGET}/lib/modules
# #

View File

@@ -6,7 +6,7 @@
# can't really do anything bad; just waste a bit of space. # can't really do anything bad; just waste a bit of space.
# #
prefix=$1 TARGET=$1
@@ -28,14 +28,14 @@ logMessage Script $0 starting
# #
# Install either kmod or module-init-tools package. # Install either kmod or module-init-tools package.
# #
if chroot ${prefix} /usr/bin/apt-cache show module-init-tools >/dev/null 2>/dev/null; then if chroot ${TARGET} /usr/bin/apt-cache show module-init-tools >/dev/null 2>/dev/null; then
if chroot ${prefix} /usr/bin/apt-cache show module-init-tools | fgrep -qi transitional; then if chroot ${TARGET} /usr/bin/apt-cache show module-init-tools | fgrep -qi transitional; then
installDebianPackage ${prefix} kmod installDebianPackage ${TARGET} kmod
else else
installDebianPackage ${prefix} module-init-tools installDebianPackage ${TARGET} module-init-tools
fi fi
else else
installDebianPackage ${prefix} kmod installDebianPackage ${TARGET} kmod
fi fi
# #

View File

@@ -7,7 +7,7 @@
# really do anything bad; just waste a bit of space. # really do anything bad; just waste a bit of space.
prefix=$1 TARGET=$1
@@ -31,16 +31,16 @@ if [ ${pygrub} ]; then
# #
# Install the grub 0.9x package ("grub-legacy" on Debian, "grub" on Ubuntu) # Install the grub 0.9x package ("grub-legacy" on Debian, "grub" on Ubuntu)
# #
if chroot ${prefix} /usr/bin/apt-cache show grub-legacy 2>/dev/null | egrep -qi 'GRand Unified Bootloader.*Legacy'; then if chroot ${TARGET} /usr/bin/apt-cache show grub-legacy 2>/dev/null | egrep -qi 'GRand Unified Bootloader.*Legacy'; then
installDebianPackage ${prefix} grub-legacy installDebianPackage ${TARGET} grub-legacy
else else
installDebianPackage ${prefix} grub installDebianPackage ${TARGET} grub
fi fi
if [ ! -e ${prefix}/boot/grub/default ]; then if [ ! -e ${TARGET}/boot/grub/default ]; then
echo default > ${prefix}/boot/grub/default echo default > ${TARGET}/boot/grub/default
fi fi
chroot ${prefix} /usr/sbin/update-grub chroot ${TARGET} /usr/sbin/update-grub
else else
logMessage "pygrub not set, skipping grub-legacy installation" logMessage "pygrub not set, skipping grub-legacy installation"

View File

@@ -12,7 +12,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -62,7 +62,7 @@ logMessage "Root device is /dev/$device"
has_xfs=0 has_xfs=0
has_reiserfs=0 has_reiserfs=0
has_btrfs=0 has_btrfs=0
cat <<E_O_FSTAB > ${prefix}/etc/fstab cat <<E_O_FSTAB > ${TARGET}/etc/fstab
# /etc/fstab: static file system information. # /etc/fstab: static file system information.
# #
# <file system> <mount point> <type> <options> <dump> <pass> # <file system> <mount point> <type> <options> <dump> <pass>
@@ -93,9 +93,9 @@ for part in `seq 1 ${NUMPARTITIONS}`; do
esac esac
if [ "${partdata2}" = "swap" ]; then if [ "${partdata2}" = "swap" ]; then
echo "/dev/${device}${part} none swap sw 0 0" >> ${prefix}/etc/fstab echo "/dev/${device}${part} none swap sw 0 0" >> ${TARGET}/etc/fstab
else else
echo "/dev/${device}${part} ${partdata3} ${partdata2} ${partdata4} 0 1" >> ${prefix}/etc/fstab echo "/dev/${device}${part} ${partdata3} ${partdata2} ${partdata4} 0 1" >> ${TARGET}/etc/fstab
fi fi
done done
@@ -106,7 +106,7 @@ logMessage Checking for filesystem tools to install
# Install any required packages for the given root filesystem # Install any required packages for the given root filesystem
# #
if [ "$has_xfs" -eq 1 ]; then if [ "$has_xfs" -eq 1 ]; then
installPackage ${prefix} xfsprogs installPackage ${TARGET} xfsprogs
fi fi
if [ "$has_reiserfs" -eq 1 ]; then if [ "$has_reiserfs" -eq 1 ]; then
if isAPT; then if isAPT; then

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -29,7 +29,7 @@ logMessage Script $0 starting
# #
# Clean the APT package cache for Debian GNU/Linux. # Clean the APT package cache for Debian GNU/Linux.
# #
chroot ${prefix} /usr/bin/apt-get clean chroot ${TARGET} /usr/bin/apt-get clean
# #

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -29,20 +29,20 @@ logMessage Script $0 starting
# Clean up RPM files. # Clean up RPM files.
# #
logMessage Cleaning .rpm* files. logMessage Cleaning .rpm* files.
find ${prefix}/ -name '*.rpmorig' -exec rm -f \{\} \; find ${TARGET}/ -name '*.rpmorig' -exec rm -f \{\} \;
find ${prefix}/ -name '*.rpmnew' -exec rm -f \{\} \; find ${TARGET}/ -name '*.rpmnew' -exec rm -f \{\} \;
# #
# Clean yum # Clean yum
# #
logMessage Cleaning Yum Repository logMessage Cleaning Yum Repository
if [ ! -d ${prefix}/proc ]; then if [ ! -d ${TARGET}/proc ]; then
mkdir -p ${prefix}/proc mkdir -p ${TARGET}/proc
fi fi
mount -o bind /proc ${prefix}/proc mount -o bind /proc ${TARGET}/proc
chroot ${prefix} /usr/bin/yum clean all chroot ${TARGET} /usr/bin/yum clean all
umount ${prefix}/proc umount ${TARGET}/proc
# #
# Log our finish # Log our finish

View File

@@ -8,7 +8,7 @@
prefix=$1 TARGET=$1
# #
@@ -30,11 +30,11 @@ logMessage Script $0 starting
# #
# Remove the script if present. # Remove the script if present.
# #
if [ -x "${prefix}/usr/sbin/policy-rc.d" ]; then if [ -x "${TARGET}/usr/sbin/policy-rc.d" ]; then
rm -f "${prefix}/usr/sbin/policy-rc.d" rm -f "${TARGET}/usr/sbin/policy-rc.d"
logMessage "Removed: ${prefix}/usr/sbin/policy-rc.d" logMessage "Removed: ${TARGET}/usr/sbin/policy-rc.d"
fi fi

View File

@@ -8,7 +8,7 @@
# #
prefix=$1 TARGET=$1
# #
@@ -33,17 +33,17 @@ logMessage Script $0 starting
# the setting to the proxy guess file. # the setting to the proxy guess file.
# #
if [ ${apt_proxy} ]; then if [ ${apt_proxy} ]; then
echo "Acquire::http::Proxy \"${apt_proxy}\";" > ${prefix}/etc/apt/apt.conf.d/01proxy echo "Acquire::http::Proxy \"${apt_proxy}\";" > ${TARGET}/etc/apt/apt.conf.d/01proxy
else else
logMessage The use of a proxy detected. logMessage The use of a proxy detected.
apt-config dump | grep -i Acquire::HTTP::Proxy > ${prefix}/etc/apt/apt.conf.d/01proxy apt-config dump | grep -i Acquire::HTTP::Proxy > ${TARGET}/etc/apt/apt.conf.d/01proxy
fi fi
# #
# Setup the sources.list file for new installations of Debian GNU/Linux. # Setup the sources.list file for new installations of Debian GNU/Linux.
# #
cat <<E_O_APT > ${prefix}/etc/apt/sources.list cat <<E_O_APT > ${TARGET}/etc/apt/sources.list
# #
# /etc/apt/sources.list # /etc/apt/sources.list
# #
@@ -66,7 +66,7 @@ if ( test "${dist}" "!=" "sid" && test "${dist}" "!=" "unstable" && \
test -e /etc/apt/sources.list && \ test -e /etc/apt/sources.list && \
grep ^deb.*security -r /etc/apt/sources.list /etc/apt/sources.list.d >/dev/null 2>/dev/null ) ; then grep ^deb.*security -r /etc/apt/sources.list /etc/apt/sources.list.d >/dev/null 2>/dev/null ) ; then
cat <<E_O_APT >> ${prefix}/etc/apt/sources.list cat <<E_O_APT >> ${TARGET}/etc/apt/sources.list
# #
# Security updates # Security updates
# #
@@ -75,7 +75,7 @@ deb-src http://security.debian.org/ ${dist}/updates main contrib non-free
E_O_APT E_O_APT
else else
cat <<E_O_APT >> ${prefix}/etc/apt/sources.list cat <<E_O_APT >> ${TARGET}/etc/apt/sources.list
# #
# Security updates - Uncomment to enable. # Security updates - Uncomment to enable.
# #
@@ -88,7 +88,7 @@ fi
# #
# Now that the sources have been setup make sure the system is up to date. # Now that the sources have been setup make sure the system is up to date.
# #
chroot ${prefix} /usr/bin/apt-get update chroot ${TARGET} /usr/bin/apt-get update
# #
# For all systems after Sarge we install libc6-xen on i386 # For all systems after Sarge we install libc6-xen on i386
@@ -98,11 +98,11 @@ chroot ${prefix} /usr/bin/apt-get update
if [ "${arch}" = "i386" ]; then if [ "${arch}" = "i386" ]; then
if [ "${dist}" = 'sarge' ]; then if [ "${dist}" = 'sarge' ]; then
logMessage "Disabling TLS" logMessage "Disabling TLS"
mv ${prefix}/lib/tls ${prefix}/lib/tls.disabled mv ${TARGET}/lib/tls ${TARGET}/lib/tls.disabled
mkdir ${prefix}/lib/tls mkdir ${TARGET}/lib/tls
else else
logMessage "Installing xen-aware libc6" logMessage "Installing xen-aware libc6"
installDebianPackage ${prefix} libc6-xen installDebianPackage ${TARGET} libc6-xen
fi fi
fi fi

View File

@@ -9,7 +9,7 @@
# -- # --
# http://nedos.net # http://nedos.net
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -62,19 +62,19 @@ KERNEL_XEN_PKG="linux-image-xen-$XEN_ARCH"
KERNEL_PKG="linux-image-$XEN_ARCH" KERNEL_PKG="linux-image-$XEN_ARCH"
logMessage Attempting to install the $KERNEL_XEN_PKG kernel image logMessage Attempting to install the $KERNEL_XEN_PKG kernel image
if chroot ${prefix} /usr/bin/apt-cache show $KERNEL_XEN_PKG > /dev/null 2>&1; then if chroot ${TARGET} /usr/bin/apt-cache show $KERNEL_XEN_PKG > /dev/null 2>&1; then
logMessage Package $KERNEL_XEN_PKG is available - installing logMessage Package $KERNEL_XEN_PKG is available - installing
installDebianPackage ${prefix} initramfs-tools installDebianPackage ${TARGET} initramfs-tools
installDebianPackage ${prefix} $KERNEL_XEN_PKG installDebianPackage ${TARGET} $KERNEL_XEN_PKG
else else
logMessage Package $KERNEL_XEN_PKG is not available logMessage Package $KERNEL_XEN_PKG is not available
logMessage Attempting to install the $KERNEL_PKG kernel image logMessage Attempting to install the $KERNEL_PKG kernel image
logMessage WARNING: This kernel may not have pvops logMessage WARNING: This kernel may not have pvops
if chroot ${prefix} /usr/bin/apt-cache show $KERNEL_PKG > /dev/null 2>&1; then if chroot ${TARGET} /usr/bin/apt-cache show $KERNEL_PKG > /dev/null 2>&1; then
logMessage Package $KERNEL_PKG is available - installing logMessage Package $KERNEL_PKG is available - installing
installDebianPackage ${prefix} initramfs-tools installDebianPackage ${TARGET} initramfs-tools
installDebianPackage ${prefix} $KERNEL_PKG installDebianPackage ${TARGET} $KERNEL_PKG
else else
logMessage Package $KERNEL_PKG is not available logMessage Package $KERNEL_PKG is not available
logMessage pygrub set, but kernel could not be installed logMessage pygrub set, but kernel could not be installed
@@ -83,27 +83,27 @@ else
fi fi
fi fi
DOMU_KERNEL=$(basename $(ls -1 ${prefix}/boot/vmlinuz* | tail -n 1)) DOMU_KERNEL=$(basename $(ls -1 ${TARGET}/boot/vmlinuz* | tail -n 1))
KERNEL_REV=$(echo $DOMU_KERNEL | sed "s/vmlinuz-//g") KERNEL_REV=$(echo $DOMU_KERNEL | sed "s/vmlinuz-//g")
DOMU_RAMDISK="initrd.img-$KERNEL_REV" DOMU_RAMDISK="initrd.img-$KERNEL_REV"
DOMU_ISSUE=$(sed -re "s/ *\\\.*//g" -e1q < ${prefix}/etc/issue) DOMU_ISSUE=$(sed -re "s/ *\\\.*//g" -e1q < ${TARGET}/etc/issue)
# #
# Generate initrd if it does not exist # Generate initrd if it does not exist
# #
if [ -f ${prefix}/boot/$DOMU_RAMDISK ]; then if [ -f ${TARGET}/boot/$DOMU_RAMDISK ]; then
logMessage initrd exists, skipping generation logMessage initrd exists, skipping generation
else else
logMessage initrd missing, generating logMessage initrd missing, generating
chroot ${prefix} update-initramfs -c -k $KERNEL_REV chroot ${TARGET} update-initramfs -c -k $KERNEL_REV
fi fi
# #
# Generate a menu.lst for pygrub # Generate a menu.lst for pygrub
# #
generateDebianGrubMenuLst "${prefix}" "$DOMU_ISSUE" "$DOMU_KERNEL" "$DOMU_RAMDISK" generateDebianGrubMenuLst "${TARGET}" "$DOMU_ISSUE" "$DOMU_KERNEL" "$DOMU_RAMDISK"
else else

View File

@@ -6,7 +6,7 @@
# -- # --
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -29,15 +29,15 @@ logMessage Script $0 starting
# Default to the same locale as the host. # Default to the same locale as the host.
# #
if [ -e /etc/locale.gen ]; then if [ -e /etc/locale.gen ]; then
cp /etc/locale.gen ${prefix}/etc cp /etc/locale.gen ${TARGET}/etc
fi fi
# #
# Install the package # Install the package
# #
installDebianPackage ${prefix} locales installDebianPackage ${TARGET} locales
installDebianPackage ${prefix} util-linux-locales installDebianPackage ${TARGET} util-linux-locales
chroot ${prefix} /usr/sbin/update-locale LANG=C chroot ${TARGET} /usr/sbin/update-locale LANG=C
# #

View File

@@ -9,7 +9,7 @@
# -- # --
# http://nedos.net # http://nedos.net
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -37,19 +37,19 @@ KERNEL_XEN_PKG="linux-image-xen"
KERNEL_PKG="linux-image-server" KERNEL_PKG="linux-image-server"
logMessage Attempting to install the $KERNEL_XEN_PKG kernel image logMessage Attempting to install the $KERNEL_XEN_PKG kernel image
if chroot ${prefix} /usr/bin/apt-cache show $KERNEL_XEN_PKG > /dev/null 2>&1; then if chroot ${TARGET} /usr/bin/apt-cache show $KERNEL_XEN_PKG > /dev/null 2>&1; then
logMessage Package $KERNEL_XEN_PKG is available - installing logMessage Package $KERNEL_XEN_PKG is available - installing
installDebianPackage ${prefix} initramfs-tools installDebianPackage ${TARGET} initramfs-tools
installDebianPackage ${prefix} $KERNEL_XEN_PKG installDebianPackage ${TARGET} $KERNEL_XEN_PKG
else else
logMessage Package $KERNEL_XEN_PKG is not available logMessage Package $KERNEL_XEN_PKG is not available
logMessage Attempting to install the $KERNEL_PKG kernel image logMessage Attempting to install the $KERNEL_PKG kernel image
logMessage WARNING: This kernel may not have pvops logMessage WARNING: This kernel may not have pvops
if chroot ${prefix} /usr/bin/apt-cache show $KERNEL_PKG > /dev/null 2>&1; then if chroot ${TARGET} /usr/bin/apt-cache show $KERNEL_PKG > /dev/null 2>&1; then
logMessage Package $KERNEL_PKG is available - installing logMessage Package $KERNEL_PKG is available - installing
installDebianPackage ${prefix} initramfs-tools installDebianPackage ${TARGET} initramfs-tools
installDebianPackage ${prefix} $KERNEL_PKG installDebianPackage ${TARGET} $KERNEL_PKG
else else
logMessage Package $KERNEL_PKG is not available logMessage Package $KERNEL_PKG is not available
logMessage pygrub set, but kernel could not be installed logMessage pygrub set, but kernel could not be installed
@@ -58,27 +58,27 @@ else
fi fi
fi fi
DOMU_KERNEL=$(basename $(ls -1 ${prefix}/boot/vmlinuz* | tail -n 1)) DOMU_KERNEL=$(basename $(ls -1 ${TARGET}/boot/vmlinuz* | tail -n 1))
KERNEL_REV=$(echo $DOMU_KERNEL | sed "s/vmlinuz-//g") KERNEL_REV=$(echo $DOMU_KERNEL | sed "s/vmlinuz-//g")
DOMU_RAMDISK="initrd.img-$KERNEL_REV" DOMU_RAMDISK="initrd.img-$KERNEL_REV"
DOMU_ISSUE=$(sed -re "s/ *\\\.*//g" -e1q < ${prefix}/etc/issue) DOMU_ISSUE=$(sed -re "s/ *\\\.*//g" -e1q < ${TARGET}/etc/issue)
# #
# Generate initrd if it does not exist # Generate initrd if it does not exist
# #
if [ -f ${prefix}/boot/$DOMU_RAMDISK ]; then if [ -f ${TARGET}/boot/$DOMU_RAMDISK ]; then
logMessage initrd exists, skipping generation logMessage initrd exists, skipping generation
else else
logMessage initrd missing, generating logMessage initrd missing, generating
chroot ${prefix} update-initramfs -c -k $KERNEL_REV chroot ${TARGET} update-initramfs -c -k $KERNEL_REV
fi fi
# #
# Generate a menu.lst for pygrub # Generate a menu.lst for pygrub
# #
generateDebianGrubMenuLst "${prefix}" "$DOMU_ISSUE" "$DOMU_KERNEL" "$DOMU_RAMDISK" generateDebianGrubMenuLst "${TARGET}" "$DOMU_ISSUE" "$DOMU_KERNEL" "$DOMU_RAMDISK"
else else

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -27,14 +27,14 @@ logMessage Script $0 starting
# #
# Remove lines matching 'group' or 'wheel'. # Remove lines matching 'group' or 'wheel'.
# #
grep -v wheel ${prefix}/etc/pam.d/su > ${prefix}/etc/pam.d/su.tmp grep -v wheel ${TARGET}/etc/pam.d/su > ${TARGET}/etc/pam.d/su.tmp
grep -v group ${prefix}/etc/pam.d/su.tmp > ${prefix}/etc/pam.d/su grep -v group ${TARGET}/etc/pam.d/su.tmp > ${TARGET}/etc/pam.d/su
# #
# Make sure permissions are correct. # Make sure permissions are correct.
# #
chown root:root ${prefix}/etc/pam.d/su chown root:root ${TARGET}/etc/pam.d/su
chmod 600 ${prefix}/etc/pam.d/su chmod 600 ${TARGET}/etc/pam.d/su
# #
# Log our finish # Log our finish

View File

@@ -7,7 +7,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -28,7 +28,7 @@ logMessage Script $0 starting
# #
# Make sure we have an /etc/conf.d directory. # Make sure we have an /etc/conf.d directory.
# #
mkdir -p ${prefix}/etc/conf.d mkdir -p ${TARGET}/etc/conf.d
# #
@@ -39,7 +39,7 @@ setupDynamicNetworking ()
# #
# The host is using DHCP. # The host is using DHCP.
# #
cat <<E_O_DHCP > ${prefix}/etc/conf.d/net cat <<E_O_DHCP > ${TARGET}/etc/conf.d/net
# /etc/conf.d/net: # /etc/conf.d/net:
# Global config file for net.* rc-scripts # Global config file for net.* rc-scripts
# #
@@ -70,7 +70,7 @@ setupStaticNetworking ()
# #
# We have a static IP address # We have a static IP address
# #
cat <<E_O_STATIC >${prefix}/etc/conf.d/net cat <<E_O_STATIC >${TARGET}/etc/conf.d/net
# #
# First ethernet interface # First ethernet interface
# #
@@ -89,7 +89,7 @@ E_O_STATIC
logMessage Adding etho:${interface} logMessage Adding etho:${interface}
cat <<E_O_STATIC >>${prefix}/etc/conf.d/net cat <<E_O_STATIC >>${TARGET}/etc/conf.d/net
config_eth0:${interface}=( "{value} netmask "${netmask}" ) config_eth0:${interface}=( "{value} netmask "${netmask}" )
E_O_STATIC E_O_STATIC
@@ -103,12 +103,12 @@ E_O_STATIC
# will be restored after hooks are run. # will be restored after hooks are run.
# #
if [ '' != "$nameserver" ]; then if [ '' != "$nameserver" ]; then
rm -f ${prefix}/etc/resolv.conf.old rm -f ${TARGET}/etc/resolv.conf.old
for ns in $nameserver; do for ns in $nameserver; do
echo "nameserver $ns" >>${prefix}/etc/resolv.conf.old echo "nameserver $ns" >>${TARGET}/etc/resolv.conf.old
done done
else else
cp /etc/resolv.conf ${prefix}/etc/resolv.conf.old cp /etc/resolv.conf ${TARGET}/etc/resolv.conf.old
fi fi
} }

View File

@@ -9,7 +9,7 @@
prefix=$1 TARGET=$1
# #
@@ -44,8 +44,8 @@ umask 022
# #
# Setup the hostname + domain names. # Setup the hostname + domain names.
# #
echo HOSTNAME=\"${name}\" >> ${prefix}/etc/conf.d/hostname echo HOSTNAME=\"${name}\" >> ${TARGET}/etc/conf.d/hostname
echo DNSDOMAIN=\"${domain}\" >> ${prefix}/etc/conf.d/domainname echo DNSDOMAIN=\"${domain}\" >> ${TARGET}/etc/conf.d/domainname
# #
@@ -55,21 +55,21 @@ echo DNSDOMAIN=\"${domain}\" >> ${prefix}/etc/conf.d/domainname
if [ -z "${dhcp}" ]; then if [ -z "${dhcp}" ]; then
# Non-IPv6 stuff. # Non-IPv6 stuff.
grep -v '\(::\|IPv6\)' /etc/hosts > ${prefix}/etc/hosts grep -v '\(::\|IPv6\)' /etc/hosts > ${TARGET}/etc/hosts
# New entry. # New entry.
echo "${ip1} ${hostname}" >> ${prefix}/etc/hosts echo "${ip1} ${hostname}" >> ${TARGET}/etc/hosts
echo " " >> ${prefix}/etc/hosts echo " " >> ${TARGET}/etc/hosts
# IPv6 stuff. # IPv6 stuff.
grep '\(::\|IPv6\)' /etc/hosts >> ${prefix}/etc/hosts grep '\(::\|IPv6\)' /etc/hosts >> ${TARGET}/etc/hosts
else else
# #
# Stub /etc/hosts for DHCP clients. # Stub /etc/hosts for DHCP clients.
# #
cat >> ${prefix}/etc/hosts <<EOF cat >> ${TARGET}/etc/hosts <<EOF
127.0.0.1 localhost 127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts # The following lines are desirable for IPv6 capable hosts

View File

@@ -10,7 +10,7 @@
# http://www.steve.org.uk/ # http://www.steve.org.uk/
prefix=$1 TARGET=$1
# #
@@ -32,14 +32,14 @@ logMessage Script $0 starting
# #
# Install ssh # Install ssh
# #
installGentooPackage ${prefix} ssh installGentooPackage ${TARGET} ssh
# #
# Make sure sshd isn't running, this will cause our unmounting of the # Make sure sshd isn't running, this will cause our unmounting of the
# disk image to fail.. # disk image to fail..
# #
chroot ${prefix} /etc/init.d/ssh stop chroot ${TARGET} /etc/init.d/ssh stop
# #

View File

@@ -9,7 +9,7 @@
# -- # --
# http://nedos.net # http://nedos.net
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -37,10 +37,10 @@ KERNEL_PKG="linux-image-virtual"
logMessage Attempting to install the $KERNEL_PKG kernel image logMessage Attempting to install the $KERNEL_PKG kernel image
logMessage WARNING: This kernel may not have pvops logMessage WARNING: This kernel may not have pvops
if chroot ${prefix} /usr/bin/apt-cache show $KERNEL_PKG > /dev/null 2>&1; then if chroot ${TARGET} /usr/bin/apt-cache show $KERNEL_PKG > /dev/null 2>&1; then
logMessage Package $KERNEL_PKG is available - installing logMessage Package $KERNEL_PKG is available - installing
installDebianPackage ${prefix} initramfs-tools installDebianPackage ${TARGET} initramfs-tools
installDebianPackage ${prefix} $KERNEL_PKG installDebianPackage ${TARGET} $KERNEL_PKG
else else
logMessage Package $KERNEL_PKG is not available logMessage Package $KERNEL_PKG is not available
logMessage pygrub set, but kernel could not be installed logMessage pygrub set, but kernel could not be installed
@@ -48,27 +48,27 @@ else
exit 1 exit 1
fi fi
DOMU_KERNEL=$(basename $(ls -1 ${prefix}/boot/vmlinuz* | tail -n 1)) DOMU_KERNEL=$(basename $(ls -1 ${TARGET}/boot/vmlinuz* | tail -n 1))
KERNEL_REV=$(echo $DOMU_KERNEL | sed "s/vmlinuz-//g") KERNEL_REV=$(echo $DOMU_KERNEL | sed "s/vmlinuz-//g")
DOMU_RAMDISK="initrd.img-$KERNEL_REV" DOMU_RAMDISK="initrd.img-$KERNEL_REV"
DOMU_ISSUE=$(sed -re "s/ *\\\.*//g" -e1q < ${prefix}/etc/issue) DOMU_ISSUE=$(sed -re "s/ *\\\.*//g" -e1q < ${TARGET}/etc/issue)
# #
# Generate initrd if it does not exist # Generate initrd if it does not exist
# #
if [ -f ${prefix}/boot/$DOMU_RAMDISK ]; then if [ -f ${TARGET}/boot/$DOMU_RAMDISK ]; then
logMessage initrd exists, skipping generation logMessage initrd exists, skipping generation
else else
logMessage initrd missing, generating logMessage initrd missing, generating
chroot ${prefix} update-initramfs -c -k $KERNEL_REV chroot ${TARGET} update-initramfs -c -k $KERNEL_REV
fi fi
# #
# Generate a menu.lst for pygrub # Generate a menu.lst for pygrub
# #
generateDebianGrubMenuLst "${prefix}" "$DOMU_ISSUE" "$DOMU_KERNEL" "$DOMU_RAMDISK" generateDebianGrubMenuLst "${TARGET}" "$DOMU_ISSUE" "$DOMU_KERNEL" "$DOMU_RAMDISK"
else else
logMessage pygrub not set, skipping kernel install logMessage pygrub not set, skipping kernel install

View File

@@ -9,7 +9,7 @@
# -- # --
# http://nedos.net # http://nedos.net
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -38,27 +38,27 @@ linux_kernel_type="virtual"
linux_kernel_package="linux-image-${linux_kernel_type}" linux_kernel_package="linux-image-${linux_kernel_type}"
logMessage "Installing the ${linux_kernel_package} kernel image" logMessage "Installing the ${linux_kernel_package} kernel image"
if chroot ${prefix} /usr/bin/apt-cache show ${linux_kernel_package} >/dev/null 2>/dev/null; then if chroot ${TARGET} /usr/bin/apt-cache show ${linux_kernel_package} >/dev/null 2>/dev/null; then
logMessage "Package '${linux_kernel_package}' is available - installing" logMessage "Package '${linux_kernel_package}' is available - installing"
installDebianPackage ${prefix} initramfs-tools installDebianPackage ${TARGET} initramfs-tools
installDebianPackage ${prefix} ${linux_kernel_package} installDebianPackage ${TARGET} ${linux_kernel_package}
# Force initrd if none exists # Force initrd if none exists
echo ${prefix}/boot/initrd* | grep -q 2\\.6 echo ${TARGET}/boot/initrd* | grep -q 2\\.6
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
chroot ${prefix} update-initramfs -c -k `ls -1 ${prefix}/lib/modules/ | head -n 1` chroot ${TARGET} update-initramfs -c -k `ls -1 ${TARGET}/lib/modules/ | head -n 1`
fi fi
# Generate grub menu.lst # Generate grub menu.lst
DOMU_KERNEL=$(basename $(ls -1 ${prefix}/boot/vmlinuz* | tail -n 1)) DOMU_KERNEL=$(basename $(ls -1 ${TARGET}/boot/vmlinuz* | tail -n 1))
DOMU_RAMDISK=$(basename $(ls -1 ${prefix}/boot/initrd*|tail -n 1)) DOMU_RAMDISK=$(basename $(ls -1 ${TARGET}/boot/initrd*|tail -n 1))
DOMU_ISSUE=$(head -n 1 ${prefix}/etc/issue | awk -F '\' '{ print $1 }' | sed 's/[ \t]*$//') DOMU_ISSUE=$(head -n 1 ${TARGET}/etc/issue | awk -F '\' '{ print $1 }' | sed 's/[ \t]*$//')
# #
# Generate a menu.lst for pygrub # Generate a menu.lst for pygrub
# #
generateDebianGrubMenuLst "${prefix}" "$DOMU_ISSUE" "$DOMU_KERNEL" "$DOMU_RAMDISK" generateDebianGrubMenuLst "${TARGET}" "$DOMU_ISSUE" "$DOMU_KERNEL" "$DOMU_RAMDISK"
else else

View File

@@ -8,7 +8,7 @@
# #
prefix=$1 TARGET=$1
@@ -28,16 +28,16 @@ fi
# #
# Update APT lists. # Update APT lists.
# #
chroot ${prefix} /usr/bin/apt-get update chroot ${TARGET} /usr/bin/apt-get update
# #
# Install the packages # Install the packages
# #
installDebianPackage ${prefix} dpkg-dev installDebianPackage ${TARGET} dpkg-dev
installDebianPackage ${prefix} devscripts installDebianPackage ${TARGET} devscripts
installDebianPackage ${prefix} fakeroot installDebianPackage ${TARGET} fakeroot
installDebianPackage ${prefix} debhelper installDebianPackage ${TARGET} debhelper
installDebianPackage ${prefix} build-essential installDebianPackage ${TARGET} build-essential
installDebianPackage ${prefix} lintian installDebianPackage ${TARGET} lintian
installDebianPackage ${prefix} linda installDebianPackage ${TARGET} linda

View File

@@ -6,7 +6,7 @@
# otherwise the temporary mounted directory will not be unmountable. # otherwise the temporary mounted directory will not be unmountable.
# #
prefix=$1 TARGET=$1
# #
# Source our common functions - this will let us install a Debian package. # Source our common functions - this will let us install a Debian package.
@@ -28,20 +28,20 @@ logMessage Script $0 starting
# #
# Install CFengine # Install CFengine
# #
installDebianPackage ${prefix} cfengine2 installDebianPackage ${TARGET} cfengine2
# #
# Make sure the CFengine server isn't running, this will cause our # Make sure the CFengine server isn't running, this will cause our
# unmounting of the disk image to fail.. # unmounting of the disk image to fail..
# #
chroot ${prefix} /etc/init.d/cfengine2 stop chroot ${TARGET} /etc/init.d/cfengine2 stop
# #
# Copy cfengine update.conf & defaults from Dom0 # Copy cfengine update.conf & defaults from Dom0
# #
cp /etc/cfengine/update.conf ${prefix}/etc/cfengine/ cp /etc/cfengine/update.conf ${TARGET}/etc/cfengine/
cp /etc/default/cfengine2 ${prefix}/etc/default/ cp /etc/default/cfengine2 ${TARGET}/etc/default/
# #
# Log our finish # Log our finish

View File

@@ -21,9 +21,9 @@
# #
# Our installation directory + our prefix for finding scripts from. # Our installation directory + our target for finding scripts from.
# #
prefix=$1 TARGET=$1
source=/etc/xen-tools/sed.d/ source=/etc/xen-tools/sed.d/
@@ -59,7 +59,7 @@ fi
for i in `find ${source} -name '*.sed' -print`; do for i in `find ${source} -name '*.sed' -print`; do
# #
# Get the name of the file, minus the source prefix # Get the name of the file, minus the source target
# #
file=${i#$source} file=${i#$source}
@@ -71,17 +71,17 @@ for i in `find ${source} -name '*.sed' -print`; do
# #
# Does the file exist in the new install? # Does the file exist in the new install?
# #
if [ -e "${prefix}/${file}" ]; then if [ -e "${TARGET}/${file}" ]; then
# #
# Log it. # Log it.
# #
logMessage "Running script $i - against ${prefix}/${file}" logMessage "Running script $i - against ${TARGET}/${file}"
# #
# Invoke it. # Invoke it.
# #
sed -i~ -f $i "${prefix}/${file}" sed -i~ -f $i "${TARGET}/${file}"
fi fi
done done

View File

@@ -8,7 +8,7 @@
# #
prefix=$1 TARGET=$1
@@ -28,24 +28,24 @@ fi
# #
# Update APT lists. # Update APT lists.
# #
chroot ${prefix} /usr/bin/apt-get update chroot ${TARGET} /usr/bin/apt-get update
# #
# Install the packages # Install the packages
# #
installDebianPackage ${prefix} xserver-xfree86 installDebianPackage ${TARGET} xserver-xfree86
installDebianPackage ${prefix} vncserver installDebianPackage ${TARGET} vncserver
installDebianPackage ${prefix} xfonts-100dpi installDebianPackage ${TARGET} xfonts-100dpi
installDebianPackage ${prefix} xfonts-75dpi installDebianPackage ${TARGET} xfonts-75dpi
installDebianPackage ${prefix} xfonts-base installDebianPackage ${TARGET} xfonts-base
installDebianPackage ${prefix} rxvt installDebianPackage ${TARGET} rxvt
installDebianPackage ${prefix} gdm installDebianPackage ${TARGET} gdm
installDebianPackage ${prefix} icewm-experimental installDebianPackage ${TARGET} icewm-experimental
# #
# Add a new section to the GDM configuration file. # Add a new section to the GDM configuration file.
# #
cat <<EOF >> ${prefix}/etc/gdm/gdm.conf cat <<EOF >> ${TARGET}/etc/gdm/gdm.conf
[server-VNC] [server-VNC]
name=VNC server name=VNC server
command=/usr/bin/Xvnc -geometry 800x600 -depth 24 command=/usr/bin/Xvnc -geometry 800x600 -depth 24
@@ -56,4 +56,4 @@ EOF
# #
# Make the new section the default # Make the new section the default
# #
perl -pi.bak -e 's/^0=Standard\n//g ; s/^\[servers\]/\[servers\]\n0=VNC/g' ${prefix}/etc/gdm/gdm.conf perl -pi.bak -e 's/^0=Standard\n//g ; s/^\[servers\]/\[servers\]\n0=VNC/g' ${TARGET}/etc/gdm/gdm.conf

View File

@@ -9,7 +9,7 @@
# #
prefix=$1 TARGET=$1
@@ -28,12 +28,12 @@ fi
# #
# Install some new packages - do this first to avoid dependency errors. # Install some new packages - do this first to avoid dependency errors.
# #
installDebianPackage ${prefix} syslog-ng installDebianPackage ${TARGET} syslog-ng
installDebianPackage ${prefix} deborphan installDebianPackage ${TARGET} deborphan
installDebianPackage ${prefix} less installDebianPackage ${TARGET} less
installDebianPackage ${prefix} screen installDebianPackage ${TARGET} screen
installDebianPackage ${prefix} sudo installDebianPackage ${TARGET} sudo
installDebianPackage ${prefix} vim installDebianPackage ${TARGET} vim
# #
@@ -41,28 +41,28 @@ installDebianPackage ${prefix} vim
# #
# PPP stuff. # PPP stuff.
removeDebianPackage ${prefix} pppconfig removeDebianPackage ${TARGET} pppconfig
removeDebianPackage ${prefix} pppoeconf removeDebianPackage ${TARGET} pppoeconf
removeDebianPackage ${prefix} pppoe removeDebianPackage ${TARGET} pppoe
removeDebianPackage ${prefix} ppp removeDebianPackage ${TARGET} ppp
removeDebianPackage ${prefix} libpcap0.7 removeDebianPackage ${TARGET} libpcap0.7
# Editors # Editors
removeDebianPackage ${prefix} nano removeDebianPackage ${TARGET} nano
removeDebianPackage ${prefix} ed removeDebianPackage ${TARGET} ed
removeDebianPackage ${prefix} nvi removeDebianPackage ${TARGET} nvi
# Syslog # Syslog
removeDebianPackage ${prefix} klogd removeDebianPackage ${TARGET} klogd
removeDebianPackage ${prefix} sysklogd removeDebianPackage ${TARGET} sysklogd
# manpages # manpages
removeDebianPackage ${prefix} manpages removeDebianPackage ${TARGET} manpages
removeDebianPackage ${prefix} man-db removeDebianPackage ${TARGET} man-db
removeDebianPackage ${prefix} info removeDebianPackage ${TARGET} info
# misc # misc
removeDebianPackage ${prefix} tasksel tasksel-data removeDebianPackage ${TARGET} tasksel tasksel-data
removeDebianPackage ${prefix} pciutils removeDebianPackage ${TARGET} pciutils
removeDebianPackage ${prefix} fdutils removeDebianPackage ${TARGET} fdutils
removeDebianPackage ${prefix} cpio removeDebianPackage ${TARGET} cpio

View File

@@ -6,7 +6,7 @@
# otherwise the temporary mounted directory will not be unmountable. # otherwise the temporary mounted directory will not be unmountable.
# #
prefix=$1 TARGET=$1
# #
# Source our common functions - this will let us install a Debian package. # Source our common functions - this will let us install a Debian package.
@@ -26,14 +26,14 @@ logMessage Script $0 starting
# #
# Install ssh # Install ssh
# #
installDebianPackage ${prefix} puppet installDebianPackage ${TARGET} puppet
# #
# Make sure sshd isn't running, this will cause our unmounting of the # Make sure sshd isn't running, this will cause our unmounting of the
# disk image to fail.. # disk image to fail..
# #
chroot ${prefix} /etc/init.d/puppet stop chroot ${TARGET} /etc/init.d/puppet stop
# #
# Log our finish # Log our finish

View File

@@ -3,7 +3,7 @@
# This role helps to customize guest's /etc/resolv.conf # This role helps to customize guest's /etc/resolv.conf
# #
prefix=$1 TARGET=$1
# #
# Source our common functions - this will let us install a Debian package. # Source our common functions - this will let us install a Debian package.
@@ -33,7 +33,7 @@ logMessage Script $0 starting
# #
# Create Guest's resolv.conf as resolv.conf.old (see WARNING before) : # Create Guest's resolv.conf as resolv.conf.old (see WARNING before) :
# #
cat <<RESOLV_CONF_EOF >${prefix}/etc/resolv.conf.old cat <<RESOLV_CONF_EOF >${TARGET}/etc/resolv.conf.old
nameserver 192.168.1.1 nameserver 192.168.1.1
#search domain.tld #search domain.tld
RESOLV_CONF_EOF RESOLV_CONF_EOF

View File

@@ -3,7 +3,7 @@
# This role installs sudo with host sudoers file. # This role installs sudo with host sudoers file.
# #
prefix=$1 TARGET=$1
# #
# Source our common functions - this will let us install a Debian package. # Source our common functions - this will let us install a Debian package.
@@ -24,7 +24,7 @@ logMessage Script $0 starting
# #
# Install sudo package # Install sudo package
# #
installDebianPackage ${prefix} sudo installDebianPackage ${TARGET} sudo
# #
# WARNING : # WARNING :
@@ -36,9 +36,9 @@ installDebianPackage ${prefix} sudo
# #
# Copy dom0's file to domU. # Copy dom0's file to domU.
# #
cp /etc/sudoers ${prefix}/etc/ cp /etc/sudoers ${TARGET}/etc/
chown root:root ${prefix}/etc/sudoers chown root:root ${TARGET}/etc/sudoers
chmod 440 ${prefix}/etc/sudoers chmod 440 ${TARGET}/etc/sudoers
# #
# Log our finish # Log our finish

View File

@@ -7,7 +7,7 @@
# -- # --
# #
prefix=$1 TARGET=$1
# #
# Source our common functions # Source our common functions
@@ -28,7 +28,7 @@ logMessage Script $0 starting
# #
# Now let's fixup the fstab # Now let's fixup the fstab
# #
cat <<END_OF_TMPFS_FSTAB >> ${prefix}/etc/fstab cat <<END_OF_TMPFS_FSTAB >> ${TARGET}/etc/fstab
tmpfs /tmp tmpfs rw,nosuid,nodev 0 0 tmpfs /tmp tmpfs rw,nosuid,nodev 0 0
tmpfs /var/run tmpfs rw,nosuid,nodev,noexec,mode=1755 0 0 tmpfs /var/run tmpfs rw,nosuid,nodev,noexec,mode=1755 0 0
tmpfs /var/lock tmpfs rw,nosuid,nodev,noexec 0 0 tmpfs /var/lock tmpfs rw,nosuid,nodev,noexec 0 0

View File

@@ -8,7 +8,7 @@
# #
prefix=$1 TARGET=$1
@@ -25,11 +25,11 @@ fi
# #
# Install udev. # Install udev.
# #
installDebianPackage ${prefix} udev installDebianPackage ${TARGET} udev
# #
# Update APT lists. # Update APT lists.
# #
chroot ${prefix} /usr/bin/apt-get update chroot ${TARGET} /usr/bin/apt-get update

View File

@@ -8,7 +8,7 @@
# #
prefix=$1 TARGET=$1
@@ -27,29 +27,29 @@ fi
# #
# Update APT lists. # Update APT lists.
# #
chroot ${prefix} /usr/bin/apt-get update chroot ${TARGET} /usr/bin/apt-get update
# #
# Install the packages # Install the packages
# #
installDebianPackage ${prefix} xserver-xfree86 installDebianPackage ${TARGET} xserver-xfree86
installDebianPackage ${prefix} vncserver installDebianPackage ${TARGET} vncserver
installDebianPackage ${prefix} xfonts-100dpi installDebianPackage ${TARGET} xfonts-100dpi
installDebianPackage ${prefix} xfonts-75dpi installDebianPackage ${TARGET} xfonts-75dpi
installDebianPackage ${prefix} xfonts-base installDebianPackage ${TARGET} xfonts-base
installDebianPackage ${prefix} rxvt installDebianPackage ${TARGET} rxvt
installDebianPackage ${prefix} xdm installDebianPackage ${TARGET} xdm
installDebianPackage ${prefix} icewm-experimental installDebianPackage ${TARGET} icewm-experimental
# #
# Remove the default settings. # Remove the default settings.
# #
rm ${prefix}/etc/X11/xdm/Xserver rm ${TARGET}/etc/X11/xdm/Xserver
rm ${prefix}/etc/X11/xdm/Xservers rm ${TARGET}/etc/X11/xdm/Xservers
# #
# Setup XDM to use the VNC server we installed. # Setup XDM to use the VNC server we installed.
# #
/bin/echo ':0 /usr/bin/Xvnc /usr/bin/Xvnc -geometry 1024x768 -depth 24' > \ /bin/echo ':0 /usr/bin/Xvnc /usr/bin/Xvnc -geometry 1024x768 -depth 24' > \
${prefix}/etc/X11/xdm/Xservers ${TARGET}/etc/X11/xdm/Xservers