A preupgrade adventure - F16 to F17

Adam Williamson awilliam at redhat.com
Fri Jul 20 18:55:19 UTC 2012


On Fri, 2012-07-20 at 14:28 -0400, Martin Langhoff wrote:
> Just an informational anecdote. My main dev machine is a vanilla
> Lenovo X220 laptop, running an up-to-date F16. At OLPC, we are damned
> close to *shipping* a F17-based distro on our XO laptops, so I thought
> it'd be good to update.
> 
> Worried about /usr move, I decided to DTRT: use preupgrade.
> 
> First, preupgrade completely hides grubby errors, and tells you
> everthing's peachy. This cannot be a feature. I managed to hit a few
> grubby errors, and without the debug output from preupgrade-cli
> showing the grubby command it's running, I'd still be scratching my
> head...
> 
> So grub configs were not being updated, for two reasons
> 
>  - My machine does not have /boot/grub/grub.cfg, it has grub.conf
> instead, so I hit BZ#841976 . Unsure why these conffiles are changing
> names, this was a fresh F16 install back when F16 was new.
> 
>  - Added the missing grub.cfg, grubby segfaults (BZ#841979). Ummpf!
> 
>  - The preupgrade wikipage helpfully provides instructions to edit
> grub.conf by hand. Completely wrong instructions. You don't want the
> /boot prefix there. You don't want "savedefault". You probably want to
> ensure you see the menu.
> 
> I am no expert on what params the preupgrade initrd _really_ needs,
> but things did not move forward until I fixed it up and added the
> params that preupgrade was giving to the failing grubby.
> 
>  - And there I hit BZ#813973 - preupgrade (anaconda) garbles the URL
> so you only get 404s.
> 
> The adventure continues, but at thistime I am under the impression
> that preupgrade gets far less testing and polish than yum upgrades.

Um. I think you might be working from a completely false premise. If you
did a fresh install of Fedora 16 you should have grub2. Not grub. The
way grubby works, if you have a grub2-based system it'll 'complain'
about the lack of a grub1 config file sometimes, but this isn't a
problem in itself and can be ignored; if something's going wrong, that
isn't the reason why. The file that needs to be updated
is /boot/grub2/grub.cfg (/etc/grub2.cfg is a symlink to it).

Note that once you reach the point of bootloader configuration,
preupgrade did its job long ago. You're now just using plain anaconda.
However, due to a bit of an oversight, a preupgrade-based upgrade uses a
different anaconda bootloader config management option to what a
DVD/netinst-based upgrade would use. In practice, though, it mostly
works. (preupgrade upgrades do 'update existing bootloader
configuration'; DVD/netinst upgrades do 'write new bootloader
configuration').

I'm really a bit confused by exactly what bootloader you actually have
installed, having read your bug reports, but it doesn't look much like a
'fresh F16 install' to me...
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | identi.ca: adamwfedora
http://www.happyassassin.net



More information about the devel mailing list