home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 February / PCWorld_2000-02_cd.bin / live / sbin / installkernel < prev    next >
Text File  |  1998-08-16  |  1KB  |  49 lines

  1. #!/bin/sh
  2. # Copyright (C) 1995 - 1998, Ian A. Murdock <imurdock@debian.org>
  3. #
  4. # Install the kernel on a Debian Linux system.
  5. #
  6. # This script is called from /usr/src/linux/arch/i386/boot/install.sh.
  7. # If you install it as /sbin/installkernel, you can do a "make install"
  8. # from a generic kernel source tree, and the image will be installed to
  9. # the proper place for Debian GNU/Linux.
  10.  
  11. set -e
  12.  
  13. if [ $# = 4 ] ; then
  14.   img="$2"
  15.   map="$3"
  16.   ver="$1"
  17.   # $(INSTALL_PATH), passed as $4, is ignored--Debian uses /boot.
  18. else
  19.   echo "Usage: installkernel <version> <zImage> <System.map> <directory>"
  20.   exit 1
  21. fi
  22.  
  23. updatever () {
  24.   if [ -f /boot/$1-$ver ] ; then
  25.     mv /boot/$1-$ver /boot/$1-$ver.old
  26.   fi
  27.  
  28.   cat $2 > /boot/$1-$ver
  29.  
  30.   if [ -f /boot/$1 ] ; then
  31.     if [ -L /boot/$1 -a $(ls -l /boot/$1 | awk '{print $11}') \
  32.      = $1-$ver ] ; then
  33.       ln -sf $1-$ver.old /boot/$1.old
  34.     else
  35.       mv /boot/$1 /boot/$1.old
  36.     fi
  37.   fi
  38.  
  39.   ln -sf $1-$ver /boot/$1
  40. }
  41.  
  42. updatever vmlinuz $img
  43. updatever System.map $map
  44.  
  45. mkboot -installkernel
  46.  
  47. psupdate || true
  48.