X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=vserver-reference.init;h=4e9566f894046a3cb1eaa1004b6dfa079e3f2dfa;hb=5a2d8b025db2a05266c7df7bfd16082e8e967e7d;hp=9b291d5dd2e9b50f19b6b043cbfb06abe67b85a3;hpb=0d07a17653cfe4950880cf898beb23cbac18d6e4;p=sliceimage.git diff --git a/vserver-reference.init b/vserver-reference.init index 9b291d5..4e9566f 100755 --- a/vserver-reference.init +++ b/vserver-reference.init @@ -2,14 +2,14 @@ # # vserver-reference Builds VServer reference # -# Load before pl_conf, pl_nm, and vservers -# chkconfig: 3 70 80 +# Load before pl_conf, pl_nm, vcached, and vservers +# chkconfig: 3 60 80 # description: Builds VServer reference image # # Mark Huang # Copyright (C) 2004 The Trustees of Princeton University # -# $Id: vnet.init,v 1.8 2004/10/11 04:28:20 mlhuang Exp $ +# $Id: vserver-reference.init,v 1.5 2004/11/17 22:50:04 mlhuang Exp $ # case "$1" in @@ -30,6 +30,14 @@ esac # VServer definitions . /usr/lib/util-vserver/util-vserver-vars +# Save stdout and stderr +exec 3>&1 +exec 4>&2 + +# Redirect stdout and stderr to a log file +exec 2>&1 +exec &>/var/log/vserver-reference.log + # Make /vservers mkdir -p $VROOTDIR chmod 000 $VROOTDIR @@ -44,10 +52,10 @@ mkdir -p $VROOT chattr -t $VROOT chmod 755 $VROOT +echo -n $"Building VServer reference: " >&3 2>&4 + # Clean up before exiting if anything goes wrong -set -e -echo -n $"Building VServer reference: " -trap "umount $VROOT/proc ; umount $VROOT/dev/pts ; chattr -R -i $VROOT ; rm -rf $VROOT ; failure ; echo ; exit 255" EXIT +trap "umount $VROOT/proc ; umount $VROOT/dev/pts ; chattr -R -i $VROOT ; rm -rf $VROOT ; failure >&3 2>&4 ; echo >&3 2>&4 ; exit 255" ERR MAKEDEV () { @@ -80,6 +88,7 @@ cat > $VROOT/etc/fstab </dev/null 2>&1 + find /mnt/cdrom/bootme/cacert | cpio -p -d $VROOT fi # Install RPMs in reference image -yum $SSLCERTDIR --installroot=$VROOT -e 0 -d 0 -y groupinstall VServer >/dev/null 2>&1 +yum $SSLCERTDIR --installroot=$VROOT -y groupinstall VServer # Clean up /dev in reference image umount $VROOT/dev/pts @@ -112,16 +121,13 @@ chroot $VROOT /bin/sh -c "chkconfig --list | awk '{ print \$1 }' | xargs -i chkc # Copy configuration files from host to reference image for file in /etc/hosts /etc/resolv.conf /etc/yum.conf ; do if [ -f $file ] ; then - echo $file | cpio -p -d -u $VROOT >/dev/null 2>&1 + echo $file | cpio -p -d -u $VROOT fi done # Clean up umount $VROOT/proc -# Reset trap -trap - EXIT - # Swap them when complete mv $VROOT $VROOTDIR if [ -d $VROOTDIR/vserver-reference ] ; then @@ -133,9 +139,6 @@ mv $VROOTDIR/$(basename $VROOT) $VROOTDIR/vserver-reference # Disable again chkconfig vserver-reference off -# Reset trap -trap - EXIT - -success -echo +success >&3 2>&4 +echo >&3 2>&4 exit 0