#! /bin/sh # This script updates the kernel and modules from your # current system. # TOPDIR=`pwd` KERNEL=$1 if test x${KERNEL} = x ; then KERNEL=`uname -r` fi rm -rf roottree/dev tar xfz dev.tar.gz -C roottree if [ $? != 0 ] ; then echo "Update failed." exit 1 fi # # Update modules in root RAM disk # Keep kernel directory structure # echo "Updating modules in root RAM disk" rm -rf roottree/lib/modules mkdir -p roottree/lib/modules cp -af /lib/modules/$KERNEL/ roottree/lib/modules/ # clean up just a bit removing stuff we do not support rm -rf roottree/lib/modules/$KERNEL/build rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/bluetooth rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/pcmcia rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/video rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/isdn rm -rf roottree/lib/modules/$KERNEL/kernel/sound rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/sound rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/crypto rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/net/wireless rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/net/appletalk rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/net/tokenring rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/net/irda rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/media rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/infiniband rm -rf roottree/lib/modules/$KERNEL/kernel/drivers/crypto rm -rf roottree/lib/modules/$KERNEL/kernel/net/appletalk rm -rf roottree/lib/modules/$KERNEL/kernel/net/bluetooth rm -rf roottree/lib/modules/$KERNEL/kernel/net/ipv6 rm -rf roottree/lib/modules/$KERNEL/kernel/net/irda rm -rf roottree/lib/modules/$KERNEL/kernel/net/atm rm -rf roottree/lib/modules/$KERNEL/kernel/net/bridge rm -rf roottree/lib/modules/$KERNEL/kernel/net/sunrpc rm -rf roottree/lib/modules/$KERNEL/kernel/net/wanrouter rm -rf roottree/lib/modules/$KERNEL/kernel/net/tux kernel="/boot/vmlinuz-$KERNEL" echo "Coping $kernel to $TOPDIR/cdtree/boot/isolinux/vmlinuz" cp -f $kernel $TOPDIR/cdtree/boot/isolinux/vmlinuz if [ $? != 0 ] ; then echo "Could not find kernel. Update failed." exit 1 fi if [ -e /boot/map ] ; then cp -f /boot/map $TOPDIR/cdtree/boot/isolinux/map if [ $? != 0 ] ; then echo "Update failed." exit 1 fi fi