# FILE BACKUP SHELL PROCEDURE:
#
#  The following script is to be used as
#  a sample only.  It is the script in
#  use on USG System A (mhtsa) at the time
#  of this release, and does not necessarily
#  reflect the needs of another site.
#
export g l x a b
log=/etc/log ENDONE=root ENDTWO="done"
echo "The output of filesave.u is usr to pack one,"
echo "root, c, msrc, and mert to pack two."

trap 'echo "Want to go on ? (y or n):"
read g
if [ "$g" = "y" ]
then
	trap "exit" 2 3
	filesave.u restart
fi; exit' 2 3


if [ "$b" = "" ]
then
	f=""
else
	f="$1"
fi

while :
do

case $f in

restart )	echo "If first pack has been saved successfully"
		echo "do you want to go on to second pack ? (\`y' or \`n'):"
		read w
		if [ "$w" = "y" ]
		then
			f="$ENDONE"
		else
			f=usr
		fi
		;;

usr )  echo "Mount pack for  \`usr' on drive $x --"
		echo When ready, enter name of pack:
		read c
		if
			volcopy usr /dev/rrp11 $b /dev/rrp${x}1 $c &&
			volcopy root /dev/rrp0 $a /dev/rrp10 $b &&
			volcopy root /dev/rrp0 $a /dev/rrp${x}0 $c
		then
			echo "\n\nREMOVE PACK $c ON DRIVE $x\n\n"
			f="$ENDONE"
		else
			fail=1
		fi
		;;

root|c|root|msrc )	echo "Mount pack for \`root', etc. on drive $x --"
		echo When ready, enter name of pack:
		read d
		if
			volcopy root /dev/rrp0 $a /dev/rrp${x}0 $d &&
			volcopy c /dev/rrp1 $a /dev/rrp${x}1 $d &&
			volcopy msrc /dev/rrp2 $a /dev/rrp${x}2 $d &&
			volcopy mert /dev/rrp3 $a /dev/rrp${x}3 $d
		then
			echo "\n\nREMOVE $d FROM DRIVE $x\n\n"
			echo "Put the pack copies ($c and $d) on the shelf."
			f="$ENDTWO"
		else
			fail=1
		fi
		;;

"done" )
		fsck -n -t /tmp/fsck
		echo 'File save complete, enter your initials'
		read i
		echo Initials: $i >> $log/filesave
		echo "\n\nIf the file system check "\
		"was clean, run init 2"
		echo "IF THE FILE SYSTEM CHECK WAS ___NOT CLEAN,"
		echo "    (file size errors are OK)"
		echo "DO NOT RUN INIT 2, "\
		"LEAVE A MESSAGE FOR THE SYSTEM ADMINISTRATOR\n\n"
		exit
		;;

* )		echo "Is this a restart of the filesave(\`y' or \`n')?"
		read g
		if [ "$g" = "y" ]
		then
			echo "Enter filesystem backup you wish to restart at(e.g. \`usr' or \`root')."
			read l
		fi
		echo System U filesave:
		echo If anything goes wrong hit the delete key and get help!
		echo Enter number of spare drive:
		read x
		echo SPARE, $x > $log/filesave
		echo "Enter name of pack on drive 0 (e.g.: \`\`v0024''):"
		read a
		echo DRIVE 0 PACK, $a >> $log/filesave
		echo Enter name of pack on drive 1:
		read b
		echo DRIVE 1 PACK, $b >> $log/filesave
		if [ "$l" = "" ]
		then
			f=usr
		else
			f="$l"
		fi
		;;

esac

if [ "$fail" = "1" ]
then
	echo The last backup attempted failed.
	fail=0
fi

done
