Annotation of elwix/install2dev.sh, revision 1.1.2.1
1.1.2.1 ! misho 1: #!/bin/sh
! 2: #
! 3: # ELWIX install script for device
! 4: #
! 5: # (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>
! 6: # by Michael Pounov <misho@elwix.org>
! 7: #
! 8: # $Id: build_cross.sh,v 1.1.1.1.2.7 2011/07/20 16:29:01 misho Exp $
! 9: #
! 10:
! 11: [ -r ./config/rc.elwix ] && . ./config/rc.elwix
! 12: if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then
! 13: echo
! 14: echo "ELWIX project is not configured !?!"
! 15: echo
! 16: exit 1
! 17: fi
! 18:
! 19: if [ "${USER}" != "root" ]; then
! 20: echo
! 21: echo "ELWIX project is not configured - FS must build under root !?!"
! 22: echo
! 23: exit 1
! 24: fi
! 25:
! 26: MNT="/mnt"
! 27:
! 28: initdev()
! 29: {
! 30: echo -n "+++ Init device $1 label ... "
! 31: if disklabel -w $1; then
! 32: echo "OK"
! 33: else
! 34: echo "Failed!"
! 35: exit 3
! 36: fi
! 37:
! 38: if newfs -b8192 -f1024 -m0 -Lelwix ${1}a; then
! 39: echo "+++ Formatting ... OK"
! 40: else
! 41: echo "+++ Formatting ... Failed!"
! 42: exit 3
! 43: fi
! 44: }
! 45:
! 46: mountdev()
! 47: {
! 48: echo -n "+++ Mount device $1 to $MNT ... "
! 49: if mount ${1}a $MNT; then
! 50: echo "OK"
! 51: else
! 52: echo "Failed!"
! 53: exit 4
! 54: fi
! 55: }
! 56:
! 57: umountdev()
! 58: {
! 59: echo -n "+++ Unmount $MNT ... "
! 60: if umount $MNT; then
! 61: echo "OK"
! 62: else
! 63: echo "Failed!"
! 64: exit 4
! 65: fi
! 66: }
! 67:
! 68: enablejfs()
! 69: {
! 70: if tunefs -n enable -j enable ${1}a; then
! 71: echo "Start FS Journaling ... OK"
! 72: else
! 73: echo "Start FS Journaling ... Failed!"
! 74: exit 6
! 75: fi
! 76: }
! 77:
! 78: boot2dev()
! 79: {
! 80: echo -n "+++ Installboot to device $1 ... "
! 81: if disklabel -B $1; then
! 82: echo "OK"
! 83: else
! 84: echo "Failed!"
! 85: exit 7
! 86: fi
! 87: }
! 88:
! 89: install2()
! 90: {
! 91: echo -n "+++ Install ELWIX OS from $1 into $MNT ... "
! 92: if tar -xzvpf $1 -C $MNT; then
! 93: echo "OK"
! 94: else
! 95: echo "Failed!"
! 96: exit 5
! 97: fi
! 98: }
! 99:
! 100: ### main()
! 101:
! 102: if [ -z $1 ]; then
! 103: echo
! 104: echo "Error:: not specified raw disk drive for install ELWIX OS ..."
! 105: echo " Syntax: (raw disk like: /dev/da1 or da1)"
! 106: echo
! 107: echo " If you wish, may apply secondary optional file name argument for other firmware"
! 108: echo
! 109: exit 2
! 110: fi
! 111:
! 112: if [ ! -r $2 ]; then
! 113: echo
! 114: echo "Error:: '$2' ELWIX OS file not found!"
! 115: echo
! 116: exit 2
! 117: else
! 118: DEV=$(echo $1 | awk '{
! 119: if (!($1 ~ /^\//))
! 120: printf("/dev/%s", $1);
! 121: else
! 122: printf("%s", $1);
! 123: }')
! 124: if ! [ -c $DEV ]; then
! 125: echo "Wrong device $DEV !!!"
! 126: exit 1
! 127: fi
! 128: fi
! 129:
! 130: initdev $DEV
! 131:
! 132: mountdev $DEV
! 133: install2 ${2:-"${REL}/${OS}"}
! 134: umountdev
! 135:
! 136: #enablejfs $DEV
! 137: boot2dev $DEV
! 138:
! 139: echo "ELWIX OS install complete."
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>