diff options
author | sam <sam@FreeBSD.org> | 2006-03-08 18:03:09 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2006-03-08 18:03:09 +0000 |
commit | d8de19b5bd92d8e69276e26a077f19bbc5ac4e98 (patch) | |
tree | bd922b50de8085a65b00f665fedf5d86b522e286 | |
parent | fa1fbfedc2f06342ca8bbae5b057d8bd2c14cc59 (diff) | |
download | FreeBSD-src-d8de19b5bd92d8e69276e26a077f19bbc5ac4e98.zip FreeBSD-src-d8de19b5bd92d8e69276e26a077f19bbc5ac4e98.tar.gz |
kernel install script (missed in previous commit)
-rw-r--r-- | release/scripts/kernels-install.sh | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/release/scripts/kernels-install.sh b/release/scripts/kernels-install.sh new file mode 100644 index 0000000..47d91a7 --- /dev/null +++ b/release/scripts/kernels-install.sh @@ -0,0 +1,43 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +if [ "`id -u`" != "0" ]; then + echo "Sorry, this must be done as root." + exit 1 +fi +if [ $# -lt 1 ]; then + echo "You must specify which kernel to extract." + exit 1 +fi + +CONFIG=$1 +BOOT=${DESTDIR:-/}/boot +KERNEL=$BOOT/$CONFIG + +if [ -d $KERNEL ]; then + echo "You are about to extract the $CONFIG kernel distribution into $KERNEL - are you SURE" + echo -n "you want to do this over your installed system (y/n)? " + read ans +else + # new installation; do not prompt + ans=y +fi +if [ "$ans" = "y" ]; then + if [ -d $KERNEL ]; then + sav=$KERNEL.sav + if [ -d $sav ]; then + # XXX remove stuff w/o a prompt + echo "Removing existing $sav" + rm -rf $sav + fi + echo "Saving existing $KERNEL as $sav" + mv $KERNEL $sav + fi + # translate per Makefile:doTARBALL XXX are we sure to have tr+cut? + tn=`echo ${CONFIG} | tr 'A-Z' 'a-z' | cut -c1-8` + cat $tn.?? | tar --unlink -xpzf - -C ${DESTDIR:-/} +else + echo "Installation of $CONFIG kernel distribution not done." +fi |