Painlessly upgrade Fedora with 'fedup'

Fedup is a premier solution to upgrading Fedora Linux to a new release if you care for a surprisingly painless experience. Despite its name, it is already a great improvement over pre-upgrade.

Upgrading from one major distribution release to the next is not always easy. As I have learned from first-hand experience some obscure issues can arise, especially if you have made custom modifications to your setup in the past, which is never going to be easy to prepare for.

Up until recently in Fedora-land the common tool to do upgrades was pre-upgrade. From Fedora 18 on there is another tool available to upgrade called fedup. So lets try walk through the few steps it actually takes to move from Fedora 17 to 18.

Prepare for the upgrade

First of all, its important to update the current release to the latest packages. It may also be a good idea to do a reboot for good measure. Then install fedup (which should be at least at version 0.7.2) and prepare for the setup phase:

$ fedup --network 18

By using the network install, you will not have to download the latest updates again, as they will be fetched from the repositories already. Unfortunately, some 3rd party repositories may not have updated to support the latest release. One of them is Dropbox, which you can either manually disable by appending --disablerepo=Dropbox or just simply ignore the warning issued by fedup.

If you’re impatient you can prepend --reboot so fedup will automatically reboot, and start the installation process.

The process of downloading all the packages will take some time and depends on the number of packages you have installed already and your available bandwidth. With a good connection this step should not take longer than 30 minutes. Once fedup reports to have downloaded all dependencies you can reboot.

Waiting for packages to install

After reboot, you will be greeted by a blinking Fedora logo indicating the installation process is taking place. Pressing ESC will let you see what is going on. But the actual installation phase may take up to an hour - depending on how many packages have to be installed and verified.

So just relax, grab a cup of coffee or do something else in the meantime. Once everything is complete, you should be greeted by the login screen.

NOTE TO PROPRIETARY NVIDIA-DRIVER USERS: In order to be able to switch to graphical desktop mode when using the Nvidia drivers you have to blacklist the nouveau drivers. The easiest way of doing it is to edit the grub command line and appending nouveau.modeset=0 rd.driver.blacklist=nouveau gfxpayload=text to the kernel parameters.

Post-Upgrade clean-up

After logging in into your upgraded Fedora box you should perform some common post-upgrade tasks to ensure everything is OK.

You may also want to visit https://fedoraproject.org/wiki/FedUp#Cleaning_Up_Post_Upgrade for specifics. Currently it is NOT recommended to upgrade to grub2 if you are using an UEFI system.

The only thing I noticed was Chrome not starting due to an error loading the shared library libudev.so.0. Technically, fedup cannot be blamed for this. And besides, a simple yum reinstall google-chrome solved the issue.

Conclusion

Congratulations are in order to. Fedup works pretty good so far. I did the upgrade on three boxes - ranging from old and well-tested to rather new hardware - now, and so far I have had no problems (except for the Nvidia issue).

Overall the process is straight-forward and hassle-free. Within an hour or two you can enjoy a completely upgraded system. If at all, minimal clean-up is needed.