On 06/26/2010 12:05 PM, Colin Watson wrote: > When debugging problems that make GRUB unable to load > /boot/grub/grub.cfg, I often find myself telling people to edit > grub-install to put 'set debug=all' in an embedded configuration file. > I'd like this not to involve editing the grub-install script, and to > just be a simple option. Does this patch look OK? It makes it possible > to do --debug-image=all (say). > > Like --debug, I've left it undocumented for the moment since it will > spew vast quantities of output that probably require a developer to > interpret them anyway. (I don't feel strongly about this; if we > document --debug-image, then we should document the existing --debug > too.) > > 2010-06-26 Colin Watson <cjwat...@ubuntu.com> > > * util/grub-install.in: Add --debug-image= option. > > Go ahead > === modified file 'util/grub-install.in' > --- util/grub-install.in 2010-06-13 00:36:39 +0000 > +++ util/grub-install.in 2010-06-26 10:00:33 +0000 > @@ -50,6 +50,7 @@ no_floppy= > force_lba= > recheck=no > debug=no > +debug_image= > > if [ "${target_cpu}-${platform}" = "i386-pc" ] ; then > disk_module=biosdisk > @@ -180,6 +181,11 @@ do > # This is an undocumented feature... > --debug) > debug=yes ;; > + --debug-image) > + debug_image=`argument $option "$@"`; shift;; > + --debug-image=*) > + debug_image=`echo "$option" | sed 's/--debug-image=//'` ;; > + > -f | --force) > setup_force="--force" ;; > > @@ -349,6 +355,13 @@ fi > prefix_drive= > config_opt= > > +rm -f ${grubdir}/load.cfg > + > +if [ "x${debug_image}" != x ]; then > + echo "set debug='${debug_image}'" >> ${grubdir}/load.cfg > + config_opt="-c ${grubdir}/load.cfg " > +fi > + > if [ "x${devabstraction_module}" = "x" ] ; then > if [ x"${install_device}" != x ]; then > if echo "${install_device}" | grep -qx "(.*)" ; then > @@ -369,7 +382,7 @@ if [ "x${devabstraction_module}" = "x" ] > echo "UUID needed with ata mod, but the filesystem containing > ${grubdir} does not support UUIDs." 1>&2 > exit 1 > fi > - echo "search.fs_uuid ${uuid} root " > ${grubdir}/load.cfg > + echo "search.fs_uuid ${uuid} root " >> ${grubdir}/load.cfg > echo 'set prefix=($root)'"${relative_grubdir}" >> ${grubdir}/load.cfg > config_opt="-c ${grubdir}/load.cfg " > modules="$modules search_fs_uuid" > @@ -379,7 +392,7 @@ if [ "x${devabstraction_module}" = "x" ] > echo "You attempted a cross-disk install, but the filesystem > containing ${grubdir} does not support UUIDs." 1>&2 > exit 1 > fi > - echo "search.fs_uuid ${uuid} root " > ${grubdir}/load.cfg > + echo "search.fs_uuid ${uuid} root " >> ${grubdir}/load.cfg > echo 'set prefix=($root)'"${relative_grubdir}" >> ${grubdir}/load.cfg > config_opt="-c ${grubdir}/load.cfg " > modules="$modules search_fs_uuid" > > Thanks, > >
-- Regards Vladimir 'φ-coder/phcoder' Serbinenko
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel