Home Fedora How To Upgrade To Fedora 37 From Fedora 36 [Workstation And Server]

How To Upgrade To Fedora 37 From Fedora 36 [Workstation And Server]

A Step By Step Guide To Upgrade Fedora 36 To Fedora 37

By sk
Published: Last Updated on 10k views

Great news for Fedora users! Fedora 37 has been released!! This step by step tutorial explains how to upgrade to Fedora 37 from Fedora 36 and older versions. If you're already using Fedora 36, you can now safely upgrade to Fedora 37 desktop or server edition for latest features, performance and stability improvements.

Prerequisites

Before upgrading to Fedora 37, you need to do a few important tasks.

  1. It is strongly RECOMMENDED to Backup your important data before upgrading to Fedora 37. This should be your first step when you want to upgrade any system, regardless of the underlying operating system. Make sure you've backup of all important files, directories, configuration settings, browser bookmarks, and dot files etc.
  2. Fedora 37 upgrade will probably take several minutes to complete. So make sure you've stable Internet connection and uninterrupted power supply.
  3. During upgrade, your system will reboot automatically to apply updates. So ensure that there aren't any important jobs currently running (E.g. Scheduled backups).
  4. See the Fedora 37 common issues and decide if you want to proceed.
  5. Upgrades to the very next release (e.g. 36 to 37) as well as upgrades skipping one release (e.g. 35 to 37) are both supported. Upgrades across more than two releases are not supported. For example - you can't go from Fedora 34 to 37. It might work sometimes. However, if you encounter with any issues, you won't get any support. In such cases, first upgrade to next release (i.e. 34 to 35) and then try to upgrade from 35 to 37. It is always recommended to upgrade to next release before it reaches EOL.

Well, without further ado, let us start Fedora 37 upgrade task!

Upgrade to Fedora 37 From Fedora 36

We can upgrade to Fedora 37 via GNOME software (GUI) and from command line (CLI). First, we will see the Graphical method using GNOME Software. This is suitable for those who use Fedora desktop edition.

Before get started, update your Fedora 36 system:

$ sudo dnf --refresh update
$ sudo dnf upgrade

Reboot your system to apply the updates:

$ sudo reboot

Let us check the current version using the following commands:

$ cat /etc/fedora-release

To view the detailed version output, run this instead:

$ cat /etc/os-release

Sample Output:

Display Fedora Version From Commandline
Display Fedora Version From Commandline

Now, follow any one of the below methods to upgrade Fedora to 37 desktop or server.

1. Upgrade To Fedora 37 Workstation Via GNOME Software

Step 1: Open your Gnome Software Center and go to Updates section. You will see a notification that says - Fedora 37 Now Available. Click the Download button to download Fedora 37 packages.

Download Fedora 37 From Gnome Software
Download Fedora 37 From Gnome Software

The required packages will be downloaded now. This will take a while depending on the Internet speed.

Downloading Fedora Linux 37
Downloading Fedora Linux 37

Step 2: Once the download is complete, you will be prompted to restart and upgrade. Click the "Restart & Upgrade" button to continue installing the updates.

Click Restart And Upgrade Button
Click Restart And Upgrade Button

Step 3: A new pop up window will appear and prompt you to click Restart & Install Upgrade button. Just click on it to reboot your Fedora system.

Click Restart And Install Upgrade Button
Click Restart And Install Upgrade Button

After system reboot, the downloaded packages will be installed. This will take a while depending on the number of packages to install. Make sure your system is plugged into the power outlet and you have uninterrupted power supply.

Installing Updates In Fedora
Installing Updates In Fedora

After installing the updates, the system will automatically reboot and log in to the brand new Fedora 37 desktop.

Fedora 37 Desktop
Fedora 37 Desktop

You can check if your Fedora system is up-to-date under Updates section in Gnome Software.

Check For Updates In Gnome Software
Check For Updates In Gnome Software

Congratulations! We've successfully upgraded to Fedora 37 workstation!

Step 4: Open a Terminal window and check the installed Fedora version using command:

$ cat /etc/fedora-release 
Fedora release 37 (Thirty Seven)

To view the detailed output, run:

$ cat /etc/os-release 

Sample output:

NAME="Fedora Linux"
VERSION="37 (Workstation Edition)"
ID=fedora
VERSION_ID=37
VERSION_CODENAME=""
PLATFORM_ID="platform:f37"
PRETTY_NAME="Fedora Linux 37 (Workstation Edition)"
ANSI_COLOR="0;38;2;60;110;180"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:37"
DEFAULT_HOSTNAME="fedora"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f37/system-administrators-guide/"
SUPPORT_URL="https://ask.fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=37
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=37
VARIANT="Workstation Edition"
VARIANT_ID=workstation
Check Fedora 37 Version From Terminal
Check Fedora 37 Version From Terminal

Alternatively, You can check the Fedora version under Settings -> About section.

Check Fedora 37 Version From Settings Section
Check Fedora 37 Version From Settings Section

2. Upgrade To Fedora 37 Server From Commandline

This method is for those who runs Fedora server edition in their system.

Step 1: Update your current Fedora 36 server using commands:

$ sudo dnf --refresh update
$ sudo dnf upgrade

Reboot your system to apply the updates.

$ sudo reboot

Step 2: Install dnf upgrade plugin by running the following command:

$ sudo dnf install dnf-plugin-system-upgrade

Step 3: Download Fedora 37 packages using command:

$ sudo dnf system-upgrade download --releasever=37

This command will download all latest packages and display the summary of what packages are going to be replaced, updated, upgraded, or downgraded. This task should take several minutes to complete as it downloads a lot of packages.

If some of your packages have unsatisfied dependencies, the upgrade will refuse to continue until you run it again with an extra --allowerasing option.

$ sudo dnf system-upgrade download --releasever=37 --allowerasing

Step 4: Once all packages are downloaded, run the following command to start actual upgrade.

$ sudo dnf system-upgrade reboot

Your system will reboot automatically and upgrade task will start to install all downloaded packages.

Upon successful upgrade, the system reboots into the new Fedora 37 server edition.

Fedora Post-upgrade Tasks

In this section, we will do a few post-upgrade tasks such as changing the hostname, removing unwanted packages, updating configuration files, deleting orphaned symlinks, and cleaning up old kernels etc.

The steps provided below are applicable for both Fedora desktop and server editions.

1. Change Hostname

I usually use distribution's name as hostname. For example, the hostname for my Fedora 37 desktop would be fedora37. If you're anything like me, change the hostname to match with your current version.

To change hostname, run:

$ sudo hostnamectl set-hostname fedora37

2. Clean DNF Metadata Cache

After upgrade, the cached metadata and transacation can cleared using the following commands:

$ sudo dnf system-upgrade clean
$ sudo dnf clean packages

3. Remove Old Packages

List all packages with broken or unsatisfied dependencies, run:

$ sudo dnf update
$ sudo dnf repoquery --unsatisfied

List all duplicate packages using command:

$ sudo dnf repoquery --duplicates

List all packages that are not in the repositories:

$ sudo dnf list extras

If you don't need them anymore, simply run the following commands to remove old, and unused packages.

$ sudo dnf remove $(sudo dnf repoquery --extras --exclude=kernel,kernel-*)
$ sudo dnf autoremove

4. Clean Up Retired Packages

A few packages will be retired in each Fedora release. They could be obsolete or the maintainer abandoned the packages. The retired packages packages will not get any updates. Not even security updates.

To remove obsolete and retired packages, run:

$ sudo dnf install remove-retired-packages 
$ remove-retired-packages

5. Update System Configuration Files

To update system configuration files, use rpmconf tool.

To install rpmconf tool, run:

$ sudo dnf install rpmconf

Once the install is complete, run the following command:

$ sudo rpmconf -a

6. Clean Up Old Kernels

The dnf autoremove command will not remove any unused kernels to avoid unintentional Kernel removals. If you want to remove old kernels, you can use the following command:

$ sudo dnf remove $(dnf repoquery --installonly --latest-limit=-3)

The above command will remove all old kernels and retain only the latest 3 kernels.

Heads Up: It is HIGHLY RECOMMENDED to keep at least two kernels. Because, if there is a problem in the current Kernel version after upgrading, you can safely switch to the older kernel.

After system upgrade, there would be some unused symlinks left in your system. You need to find and delete the dangling soft links or symlinks that don't point anywhere.

To find broken symlinks in /usr directory, run:

$ sudo symlinks -r /usr | grep dangling

To remove the dangling symlinks, run:

$ sudo symlinks -r -d /usr

Finally, reboot your system to start using the Fedora 37 edition.

Conclusion

In this guide, we have seen how to upgrade to Fedora 37 from Fedora 36 via Gnome Software center and from terminal. At the end, we included a few post-upgrade steps that needs to be done to cleanup the newly upgraded fedora system.

You May Also Like

1 comment

amgadelsaiegh November 24, 2022 - 8:12 pm

beautiful article, thank you

Reply

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

This website uses cookies to improve your experience. By using this site, we will assume that you're OK with it. Accept Read More