Fedora 18 (codename Spherical Cow) was officially released today, and there’s a mad scramble to figure out how to upgrade to this latest Linux desktop from Fedora 17. Previously, you’d have to either do a fresh install with a CD or DVD, or you could use the built-in PreUpgrade method. However, with a new Fedora comes a new upgrade method: FedUp. The name (which is short for “Fedora Upgrader”) is a tongue-in-cheek dig at the convoluted methods that used to be required to upgrade Fedora in the past.
The problem is, as of this morning, I couldn’t find any instructions on the FedUp page explaining how to upgrade from Fedora 17 to Fedora 18. I found some links about upgrade to beta versions and various release candidates, and I’m sure the official FedUp page will be updated eventually, but until then, this is how to upgrade from Fedora 17 to Fedora 18 from the command line.
If you don’t already have FedUp installed (and you probably don’t), install it with yum:
sudo yum install fedup
Next, launch the upgrade with:
sudo fedup --network 18 --debuglog fedup-to-18.log --instrepo fedora
Alternatively, you could use a URL for the -instrepo argument, including the location of a local .ISO file. But chances are your Fedora 17 box is probably connected to the Internet, so just using fedora as the repo name will do the trick.
Next, sit back and watch your system download all the upgraded packages for Fedora 18!
Once all the updated packages are downloaded, you’ll see a message like:
rpm transaction 100% rpm install 100% setting up system for upgrade Finished. Reboot to start upgrade.
Follow the instructions, and type reboot to start the upgrade. At the grub screen following the reboot, the default option will be System Upgrade (fedup). You can press enter, or just wait for it to trigger in a few seconds.
During the upgrade, you’ll watch the blue Fedora logo pulse on your screen as a progress bar shows you how much upgrading you’ve got left. Go grab a drink. Even on a fast system, it will probably take a while. When it’s all done, your system will reboot one final time and you’ll have a shiny new Fedora 18 desktop!
The bad news is that this upgrade only works from 17 to 18, and won’t work if you try to upgrade from any earlier version. If you’re coming from Fedora 16 or earlier, you’ll have to do PreUpgrade to get to Fedora 17, and then FedUp to get from 17 to 18.
UPDATE: I wrote this post as my Fedora 17 test system (which I run as a VM in Oracle Virtual Box) was upgrading, and discovered that FedUp will fail “gracefully” if you don’t have enough disk space to download and install all the updated packages, like this:
installing package [packagename1].fc18.i686 needs 712MB on the filesystem installing package [packagename2].fc18.i686 needs 712MB on the filesystem installing package [packagename3].fc18.i686 needs 713MB on the filesystem installing package [packagename4].fc18.i686 needs 713MB on the filesystem installing package [packagename5].fc18.i686 needs 714MB on the filesystem
If you have a physical hard disk, you’re out of luck. You’ll have to upgrade using the .ISO. But if you have a VM, just close down the VM, increase the size of your disk (either from the command line or by using a utility such as CloneVDI), then re-initiate FedUp.