Fedora upgrades with the preupgrade-cli utility

I usually use the YUM upgrade procedure for upgrading Fedora releases, but recently upgraded a machine at home using PreUpgrade and it was a much more automated process. The problem with running it on a Linode is that, as part of the upgrade process, it tries to boot into an "upgrade kernel" that invokes the installer, and of course you can't do that on a Linode (or is there a way to do this now? I'ts been awhile since I tried.)

In any event, the preupgrade-cli utility updated grub.conf and tried to boot into the upgrade kernel, but it didn't work, so I'm wondering if anyone has any suggestions on an alternate way to do the upgrade using preupgrade-cli. If not, I'll go back to the more time-consuming YUM upgrade procedure, but I thought I'd ask around to see if there's a quick fix to get the easier (and more rigorously tested) upgrade procedure going.


1 Reply

It is indeed possible to upgrade Fedora via preupgrade-cli on Linode. The one thing that is necessary is to use PVGRUB for the kernel instead of the default method of using the kernel managed in Xen outside the VM. There are a few forum and Wiki pages that describe how to configure your VM to use PVGRUB. It's pretty straightforward. The one caveat I encountered with my F13 system was the need to add 'selinux=0' to the kernel command line options in the GRUB config file.

I'd recommend cloning your disks (if you have enough space) just in case. Also, you will need to make sure you have plenty of free space in /boot (a couple hundred megs). Finally, from my experience grubby fails to add a 'root' line to the new kernel config for preupgrade, which will cause the boot into the preupgrade to fail with an Error 21. Just add a 'root' line like exists for your other boot configs (usually 'root hd(0)') and it should work.



Please enter an answer

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct