Fedora Linux: Practical Reference

Quick facts
TypeCommunity distribution sponsored by Red Hat; upstream of CentOS Stream and RHEL
Current releaseFedora 44 (28 April 2026); Fedora 45 scheduled for 20 October 2026
Release cycleAbout every six months; each release supported for roughly 13 months
Package managerdnf (DNF5 since Fedora 41), RPM packages; Flatpak for desktop apps
EditionsWorkstation (GNOME), KDE Plasma Desktop, Server, IoT, CoreOS, plus Atomic desktops (Silverblue, Kinoite) and spins
DesktopGNOME 50 on Workstation 44 (Wayland only); KDE Plasma 6 on the KDE edition
DefaultsBtrfs on desktop editions, SELinux enforcing, firewalld, PipeWire, zram swap
Documentationdocs.fedoraproject.org

This page covers the hands-on side. For Fedora's history, editions and its relationship to RHEL, see the Fedora overview. To get started, see how to install Fedora.

Support dates

ReleaseReleasedEnd of lifeStatus (October 2026)
Fedora 45Scheduled 20 October 2026About four weeks after Fedora 47 (late 2027)Upcoming
Fedora 4428 April 2026About four weeks after Fedora 46 (mid-2027)Current
Fedora 43October 20259 December 2026Supported, upgrade soon
Fedora 42 and older—EndedNo updates: upgrade

There is no LTS release; the expectation is that you upgrade once or twice a year. You can skip one release (43 straight to 45 is supported), but not more. The step-by-step process is in upgrading Fedora with dnf system-upgrade; the short version is:

sudo dnf upgrade --refresh
sudo dnf system-upgrade download --releasever=45
sudo dnf system-upgrade reboot

Check your version with cat /etc/fedora-release. Compare support windows across distributions in Linux release cycles.

Everyday dnf commands

CommandWhat it does
sudo dnf upgrade --refreshRefresh metadata and install all updates
sudo dnf install pkgInstall a package (also accepts a local .rpm or a URL)
sudo dnf remove pkgRemove a package and dependencies nothing else needs
dnf search keywordSearch names and summaries
dnf info pkgVersion, repository and description
dnf provides /usr/bin/digWhich package provides a file or command
dnf list --installedInstalled packages
dnf check-upgradeWhat would be updated
dnf history listPast transactions
sudo dnf history undo <id>Reverse a transaction
sudo dnf downgrade pkgGo back to the previous available version
dnf repolistEnabled repositories
sudo dnf autoremoveRemove unneeded dependencies
sudo dnf clean allClear cached metadata and packages
sudo dnf copr enable user/projectEnable a COPR community repository

Make downloads faster by allowing more parallel connections in /etc/dnf/dnf.conf:

[main]
max_parallel_downloads=10

Desktop apps are also available as Flatpaks through GNOME Software or KDE Discover. Enable the full Flathub catalogue with:

flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

RPM Fusion, codecs and NVIDIA

Fedora ships only freely licensed software, so some codecs and the NVIDIA driver come from RPM Fusion, the standard third-party repository.

sudo dnf install \
  https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
  https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
# full ffmpeg instead of the reduced ffmpeg-free
sudo dnf swap ffmpeg-free ffmpeg --allowerasing
# hardware video decoding on Intel (newer GPUs) and AMD
sudo dnf install intel-media-driver
sudo dnf swap mesa-va-drivers mesa-va-drivers-freeworld

For NVIDIA, after enabling RPM Fusion:

sudo dnf install akmod-nvidia xorg-x11-drv-nvidia-cuda
# wait until the module is built (a few minutes), then check
modinfo -F version nvidia
sudo reboot

With Secure Boot enabled, the akmod-built module must be signed with a key you enrol (RPM Fusion documents the akmods key steps). If you get a black screen after installing, see NVIDIA black screen fixes. Codec details for media players are on the VLC and Firefox pages.

SELinux and firewalld basics

SELinux is enforcing by default. When something works with SELinux permissive but fails when enforcing, fix the policy, not the switch.

getenforce
sudo ausearch -m avc -ts recent       # recent denials
sudo journalctl -t setroubleshoot     # human-readable explanations, if installed
sudo restorecon -Rv /path/to/files    # reset file labels (fixes most denials)
getsebool -a | grep httpd             # list booleans for a service
sudo setsebool -P httpd_can_network_connect on

Files moved (rather than copied) into place keep their old label; restorecon fixes that. Temporary sudo setenforce 0 is acceptable for a quick test; switch back with sudo setenforce 1 and don't disable SELinux permanently.

firewalld is active on all editions:

sudo firewall-cmd --get-active-zones
sudo firewall-cmd --list-all
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

More firewall examples are in Linux networking basics.

Common problems and fixes

SymptomLikely causeFix
Failed to download metadata for repoNetwork, mirror, or a third-party repo that doesn't support your release yetSee dnf failed to download metadata; disable the failing repo with --disablerepo=<id>
Videos won't play, or no H.264/HEVCOnly free codecs installedEnable RPM Fusion and swap to full ffmpeg (above)
NVIDIA: low resolution or nouveau still loadedakmod not built yet, or Secure Boot blocking itWait, check modinfo nvidia, enrol the akmods key, reboot
Service can't read its filesSELinux labelsudo restorecon -Rv <path>
Update broke somethingRegression in a packagednf history list, then sudo dnf history undo <id>; or boot an older kernel from the menu
App needs X11Workstation 44 has no X11 sessionXWayland runs most X11 apps; see Wayland vs X11
pip installs system-wide without errorFedora doesn't currently enforce PEP 668Use a venv anyway: python3 -m venv .venv

Fedora keeps the last three kernels installed. If a new kernel fails to boot, pick the previous one in the boot menu (hold Shift or press Esc during boot if the menu is hidden).

Btrfs rollback

Desktop editions use Btrfs with root and home subvolumes, but Fedora does not take automatic snapshots by default. If you want rollback before big updates, install snapper and take a snapshot before upgrades (sudo snapper -c root create -d "before upgrade" after creating a config with sudo snapper -c root create-config /), or use the Atomic desktops, where rpm-ostree rollback returns to the previous deployment.

Fedora compared with the alternatives

Fedora sits between the rolling Arch Linux and the long-support Ubuntu LTS and Debian: recent kernels and desktops, tested releases, and an upgrade roughly every year. On Fedora Workstation you also get GNOME close to upstream, which makes it a good place to see what later lands in other distributions.

Frequently asked questions

When does Fedora 44 reach end of life?

Each Fedora release is supported until four weeks after the release that comes two versions later. For Fedora 44 that means about four weeks after Fedora 46 ships, expected around mid-2027.

When is Fedora 45 released?

Fedora 45 is scheduled for 20 October 2026. Fedora 43 then has until its end of life on 9 December 2026.

Is Fedora good for beginners?

Yes, if you're happy to upgrade about once a year. Workstation works well out of the box. The main extra step is enabling RPM Fusion for full multimedia codecs and NVIDIA drivers.

Should I disable SELinux on Fedora?

No. Find the specific denial with sudo ausearch -m avc -ts recent and fix the label or boolean. Most denials come from files with the wrong context, which restorecon fixes.

Spotted a mistake or a command that no longer works? Send a correction — pages are re-checked when reports come in.