X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=build.sh;h=f1433f5c95b48f33498697cbf21ff87c69961080;hb=91029451fc61906dcc37343fcfbdcded25da3435;hp=1c990c48534f695ee87b79c09240a8e93b32d1c4;hpb=90adf7e12b62615ab114dd64e11410d1c110150d;p=vserver-reference.git diff --git a/build.sh b/build.sh index 1c990c4..f1433f5 100755 --- a/build.sh +++ b/build.sh @@ -5,7 +5,7 @@ # Mark Huang # Copyright (C) 2004-2006 The Trustees of Princeton University # -# $Id: build.sh,v 1.7 2006/03/29 20:26:41 mlhuang Exp $ +# $Id: build.sh,v 1.17 2007/08/13 18:02:33 faiyaza Exp $ # PATH=/sbin:/bin:/usr/sbin:/usr/bin @@ -17,14 +17,14 @@ if [ -d ../build ] ; then PATH=$PATH:../build srcdir=.. else - echo "Error: Could not find sources in either . or .." + echo "Error: Could not find $(cd .. && pwd -P)/build/" exit 1 fi export PATH # Release and architecture to install -releasever=2 +releasever=4 basearch=i386 # Packages to install @@ -48,12 +48,14 @@ traceroute time vixie-cron wget +which yum curl gzip perl python tar +findutils ) usage() @@ -84,14 +86,34 @@ done set -e # Make /vservers -vroot=$PWD/vservers/vserver-reference +vroot=$PWD/vservers/.vref/default install -d -m 755 $vroot -# Install vserver-reference system +# Install default reference image for package in "${packagelist[@]}" ; do packages="$packages -p $package" done -mkfedora -v -r $releasever -a $basearch $packages $vroot +mkfedora -v -r $releasever -a $basearch -k $packages $vroot + +# Clean /dev +rm -rf $vroot/dev +mkdir -p $vroot/dev +mknod -m 666 $vroot/dev/null c 1 3 +mknod -m 666 $vroot/dev/zero c 1 5 +mknod -m 666 $vroot/dev/full c 1 7 +mknod -m 644 $vroot/dev/random c 1 8 +mknod -m 644 $vroot/dev/urandom c 1 9 +mknod -m 666 $vroot/dev/tty c 5 0 +mknod -m 666 $vroot/dev/ptmx c 5 2 +# For bash command substitution +ln -nsf ../proc/self/fd $vroot/dev/fd +# For df and linuxconf +touch $vroot/dev/hdv1 +# For TUN/TAP +mkdir -p $vroot/dev/net +mknod -m 600 $vroot/dev/net/tun c 10 200 +# For pseudo ttys +mkdir -p $vroot/dev/pts # Disable all services in reference image chroot $vroot sh -c "/sbin/chkconfig --list | awk '{ print \$1 }' | xargs -i /sbin/chkconfig {} off"