$ LATEST=`readlink /boot/vmlinuz`; OLD=`readlink /boot/vmlinuz.old`; cat /boot/grub/grub.conf | sed -i -e 's/\(Latest \[[^-]*\).*\]/\1-'"${LATEST#*-}"]'/1' -e 's/\(Old \[[^-]*\).*\]/\1-'"${OLD#*-}"]'/1' /boot/grub/grub.conf
I like to label my grub boot options with the correct kernel version/build.
After building and installing a new kernel with "make install" I had to edit my grub.conf by hand.
To avoid this, I've decided to write this little command line to:
1. read the version/build part of the filename to which the kernel symlinks point
2. replace the first label lines of grub.conf
grub.conf label lines must be in this format:
Latest [{name}-{version/build}]
Old [{name}-{version/build}]
only the {version/build} part is substituted.
For instance:
title Latest [GNU/Linux-2.6.31-gentoo-r10.201003]
would turn to
title Latest [GNU/Linux-2.6.32-gentoo-r7.201004]"
Diff your entire server config at ScriptRock.com