#!/bin/bash
if [ $# != 1 ] ; then
echo "Usage: $0 [Node name]"
exit 1
fi
. cluster.conf
NODEDIR=$TFTPDIR/$1
TEMPDIR=$TFTPDIR/template
if [ ! -d $TEMPDIR ] ; then
echo "Don't find template directory in $TEMPDIR!"
exit 1
fi
NAME=$( cat $DHCP | grep $1 | awk {'print $2'} )
if [ -z $NAME ] ; then
echo "Don't find entry in $DHCP for $1!"
exit 1
fi
if [ ! -d $NODEDIR ] ; then
echo -n "Create root directory for $i in $NODEDIR..."
/bin/mkdir $NODEDIR
else
echo "Node $1 already exists!"
exit 1
fi
echo
echo "Copy filesystem::"
for i in dev etc var; do
echo -n " /$i"
/bin/cp -Ra $TEMPDIR/$i $NODEDIR
echo
done
echo "Make hard links for:"
for i in bin sbin lib ; do
echo -n " /$i: "
( cd $TEMPDIR; /usr/bin/find $i -print | cpio -pl $NODEDIR )
done
echo "Make directories:"
for i in proc tmp mnt home root usr data; do
echo -n " /$i"
/bin/mkdir $NODEDIR/$i
echo
done
echo
echo "Configure /tmp..."
/bin/chmod 1777 $NODEDIR/tmp/
echo "Configure /data..."
/bin/chmod 1777 $NODEDIR/data/
echo "Configure fastboot..."
touch $NODEDIR/fastboot
chattr +i $NODEDIR/fastboot
echo "Done."
exit 0