Bug#547714: Upgrade process from grub-legacy to grub-pc is unclear

Felix Zielcke fzielcke at z-51.de
Mon Sep 21 19:25:20 UTC 2009


Am Montag, den 21.09.2009, 20:46 +0200 schrieb Matthijs Kooijman:
> Package: grub-pc
> Version: 1.97~beta3-1
> Severity: normal
> 
> Hi,
> 
> I've been upgrading from grub-legacy to grub-pc recently, and it's quite
> unclear to me how this should work. I think it might be useful to have a
> README.Debian (In grub-pc, I'd say) that explains how this process is
> supposed to work. Some points of confusion:
> 
> 	* aptitude tells me that grub-legacy will be replaced with grub-pc.
> 	  E.g, grub-legacy will be removed. Then, during configuration, I
> 	  get a prompt asking me to chainload grub-pc into grub-legacy,
> 	  since grub-pc doesn't always work. But... I just removed
> 	  grub-legacy? What if it doesn't work? How can I even chainload
> 	  grub-pc into grub-legacy when the latter was removed? Scary...
> 	* In hindsight, I suspect all this works because grub-legacy is
> 	  still installed into my mbr, and there is crap left behind in my
> 	  /boot/grub (stage1, stage2). Seems a bit brittle to keep relying
> 	  on a package that's only lingering around in the mbr, but this has
> 	  probably been discussed already.

At least GRUB Legacy, GRUB 2 and LILO still boot fine after you remove
the package. I don't know for the other bootloaders in the archive.
Though GRUB 2 has now a debconf prompt to purge /boot/grub but that
defaults to no.
I didn't think that we need to mention this.
The packages don't ship any files in /boot/grub. It was always the job
of grub-install to copy the files there which the bootcode of GRUB uses.

> 	* Grub-pc ships all kinds of legacy stuff (in particular
> 	  update-grub) which do not seem to make sense there.

What all kind of legacy stuff?
It's actually only legacy/update-grub and legacy/grub-set-default for
the chainload to GRUB 2 option.
Well ok sbin/update-grub is now just a stub around grub-mkconfig, but
that makes the transisition much easier.
grub-installer always placed update-grub in the hooks
in /etc/kernel-img.conf. That file doestn't support any arguments to the
commands.
So if we would drop the stub then every Debian user + grub-installer
need to be changed to use /etc/kernel/{postinst,postrm}.d
And we got a bug report against grub2 from someone who still
had /sbin/update-grub in his kernel-img.conf even though grub-legacy
warns still the etch release that this has been deprecated.
And Debian/Ubuntu users are just used to `update-grub' instead of
`grub-mkconfig -o /boot/grub/grub.cfg'

I don't think there's anything else from GRUB Legacy.


> 	* Grub-pc asks me if I want to chainload it, so I can test it
> 	  comfortably. However, I did not expect grub2 to become the
> 	  default. If I'm running on a server with limited physical access,
> 	  this might cause problems to an unaware administrator. Perhaps not
> 	  selecting grub-pc by default, or adding a note about this to the
> 	  chainloading prompt is in order?

A note can be added.
We have another bug report to show the `run grub-install' debconf prompt
after choosing no.
That should then be also mentioned.

> 	* Grub-pc replaces grub-legacy, meaning it will uninstall
> 	  grub-legacy and replace it with grub-pc when doing a full upgrade.
> 	  But, what if grub-pc doesn't work for me? Reinstalling grub-legacy
> 	  will probably not work, since that will be replaced by grub-pc
> 	  again on the next upgrade right? Should I put grub-legacy in the
> 	  hold state then? That will prevent upgrades. Should I hold
> 	  grub-pc?

No, It's just the `grub' package which was first a dummy one depending
on `grub-legacy' with the debconf note that warned about that and then
it changed to depend on `grub-pc'.
The `grub-legacy' package won't get replaced by grub2. At least not
until squeeze is out.
After that we have to think about what we do with GRUB Legacy.

> I'm quite aware that this might appear as a nagging point, but I'm quite
> convinced that there is a real problem here. I consider myself quite an
> advanced user, and even I don't quite understand how it works.
> 
> Adding a README.Debian might not even be sufficient, perhaps some
> debconf prompting with a pointer would be even better.
> 
> Gr.
> 
> Matthijs
> 
> (This was my last report, really! :-)

I assume at least for grub2 and today. But if you find other bugs
especially important ones then I hope you still tell us :)


-- 
Felix Zielcke
Proud Debian Maintainer






More information about the Pkg-grub-devel mailing list