Magellan Linux

Diff of /tags/grubby-8_15/new-kernel-pkg

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 925 by niro, Wed Oct 28 13:29:18 2009 UTC revision 1305 by niro, Fri May 27 17:31:15 2011 UTC
# Line 101  usage() Line 101  usage()
101  {  {
102   echo "Usage: $(basename $0) [-v] [--mkinitrd] [--rminitrd]" >&2   echo "Usage: $(basename $0) [-v] [--mkinitrd] [--rminitrd]" >&2
103   echo "       [--initrdfile=<initrd-image>] [--depmod] [--rmmoddep]" >&2   echo "       [--initrdfile=<initrd-image>] [--depmod] [--rmmoddep]" >&2
104   echo "       [--kernel-args=<args>] [--remove-args=<args>]" >&2   echo "       [--kernel-args=<args>] [--remove-args=<args>]" >&2
105   echo "       [--banner=<banner>] [--multiboot=multiboot]" >&2   echo "       [--banner=<banner>] [--multiboot=multiboot]" >&2
106   echo "       [--mbargs=mbargs] [--make-default]" >&2   echo "       [--mbargs=mbargs] [--make-default]" >&2
107   echo "       <--install | --remove | --update> <kernel-version>" >&2   echo "       <--install | --remove | --update> <kernel-version>" >&2
# Line 109  usage() Line 109  usage()
109   exit 1   exit 1
110  }  }
111    
112    run_grub2()
113    {
114     if [ -d /boot/grub2 -a -x /sbin/grub2-mkconfig ]
115     then
116     cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.old
117     /sbin/grub2-mkconfig -o /boot/grub2/grub.cfg
118     fi
119    }
120    
121  install()  install()
122  {  {
123   # XXX kernel should be able to be specified also (or work right on ia64)   # XXX kernel should be able to be specified also (or work right on ia64)
# Line 141  install() Line 150  install()
150   return   return
151   fi   fi
152    
153     # Run grub2's configuration update in parallel, if it is installed
154     run_grub2
155    
156   # get the root filesystem to use   # get the root filesystem to use
157   rootdevice=$(awk '{ if ($1 !~ /^[ \t]*#/ && $2 == "/") { print $1; }}' /etc/fstab)   rootdevice=$(awk '{ if ($1 !~ /^[ \t]*#/ && $2 == "/") { print $1; }}' /etc/fstab)
158    
# Line 184  install() Line 196  install()
196   if [[ -n ${runLilo} ]]   if [[ -n ${runLilo} ]]
197   then   then
198   [[ -n ${verbose} ]] && echo "running ${lilo}"   [[ -n ${verbose} ]] && echo "running ${lilo}"
199   if [ ! -x $lilo ]   if [ ! -x ${lilo} ]
200   then   then
201   [[ -n ${verbose} ]] && echo "${lilo} does not exist"   [[ -n ${verbose} ]] && echo "${lilo} does not exist"
202   else   else
# Line 206  remove() Line 218  remove()
218   return   return
219   fi   fi
220    
221     # Run grub2's configuration update in parallel, if it is installed
222     run_grub2
223    
224   if [[ -n ${cfgGrub} ]]   if [[ -n ${cfgGrub} ]]
225   then   then
226   [[ -n ${verbose} ]] && echo "removing ${version} from ${grubConfig}"   [[ -n ${verbose} ]] && echo "removing ${version} from ${grubConfig}"
# Line 217  remove() Line 232  remove()
232   if [[ -n ${cfgLilo} ]]   if [[ -n ${cfgLilo} ]]
233   then   then
234   [[ -n ${verbose} ]] && echo "removing ${version} from ${liloConfig}"   [[ -n ${verbose} ]] && echo "removing ${version} from ${liloConfig}"
235   ${grubby} --remove-kernel=${bootPrefix}/${kernelName}-${version}    \   ${grubby} --remove-kernel=${bootPrefix}/${kernelName}-${version} --${liloFlag}
  --${liloFlag}  
236    
237   if [[ -n ${runLilo} ]]   if [[ -n ${runLilo} ]]
238   then   then
# Line 237  remove() Line 251  remove()
251    
252  update()  update()
253  {  {
254     if [ ! -f ${bootPrefix}/${kernelName}-${version} ]
255     then
256     [[ -n ${verbose} ]] && echo "kernel for ${version} does not exist, not running grubby"
257     return
258     fi
259    
260     INITRD=""
261     if [ -f ${initrdfile} ]
262     then
263     [[ -n ${verbose} ]] && echo "found ${initrdfile} and using it with grubby"
264     INITRD="--initrd ${initrdfile}"
265     fi
266    
267     # Run grub2's configuration update in parallel, if it is installed
268     run_grub2
269    
270   if [[ -n ${cfgGrub} ]]   if [[ -n ${cfgGrub} ]]
271   then   then
272   [[ -n ${verbose} ]] && echo "updating ${version} from ${grubConfig}"   [[ -n ${verbose} ]] && echo "updating ${version} from ${grubConfig}"
273   ${grubby} --update-kernel=${bootPrefix}/${kernelName}-${version} \   ${grubby} --update-kernel=${bootPrefix}/${kernelName}-${version} \
274     ${INITRD} \
275   ${kernargs:+--args="${kernargs}"} \   ${kernargs:+--args="${kernargs}"} \
276   ${removeargs:+--remove-args="${removeargs}"}   ${removeargs:+--remove-args="${removeargs}"}
277   else   else
# Line 251  update() Line 282  update()
282   then   then
283   [[ -n ${verbose} ]] && echo "updating ${version} from ${liloConfig}"   [[ -n ${verbose} ]] && echo "updating ${version} from ${liloConfig}"
284   ${grubby} --update-kernel=${bootPrefix}/${kernelName}-${version} \   ${grubby} --update-kernel=${bootPrefix}/${kernelName}-${version} \
285     ${INITRD} \
286   ${kernargs:+--args="${kernargs}"} \   ${kernargs:+--args="${kernargs}"} \
287   ${removeargs:+--remove-args="${removeargs}"} \   ${removeargs:+--remove-args="${removeargs}"} \
288   --${liloFlag}   --${liloFlag}
# Line 335  do Line 367  do
367   --remove-args*)   --remove-args*)
368   if echo $1 | grep '=' >/dev/null   if echo $1 | grep '=' >/dev/null
369   then   then
370   removeargs=$(echo $1 | sed 's/^--remove-args=//')   removeargs=$(echo $1 | sed 's/^--remove-args=//')
371   else   else
372   removeargs=$2   removeargs=$2
373   shift   shift
# Line 433  fi Line 465  fi
465    
466  kernelmajor=$(echo ${kernel} | cut -d . -f 1,2)  kernelmajor=$(echo ${kernel} | cut -d . -f 1,2)
467    
468  # kernel image for 2.4 is vmlinux  # kernel image for 2.4 is kernel
469  if [[ ${ARCH} = ppc64 ]] || [[ ${ARCH} = ppc ]]  if [[ ${ARCH} = ppc64 ]] || [[ ${ARCH} = ppc ]]
470  then  then
471   if [[ ${kernelmajor} = 2.4 ]]   if [[ ${kernelmajor} = 2.4 ]]

Legend:
Removed from v.925  
changed lines
  Added in v.1305