DNF4-SYSTEM-UPGRADE(8)

πŸ“¦
version 4.10.1 Β· 4 versions
, in opensuse-leap 16.0

πŸ’… NAME πŸ’…

dnf4-system-upgrade β€” literally the DNF system-upgrade Plugin, bestie. That's it, that's the name. (This whole page lives in the dnf-plugins-core manual, btw πŸŽ€)


✨ DESCRIPTION ✨

Okay so the DNF system-upgrades plugin hands you three commands, and you're gonna love them:

  • system-upgrade
  • offline-upgrade
  • offline-distrosync

Only the system-upgrade command needs you to bump the distribution major version (that's --releasever) compared to whatever version you've got installed, iykyk. The other two? Lowkey just vibing.

dnf system-upgrade is the recommended way to upgrade your system to a new major release, no cap. It replaces fedup (the old Fedora Upgrade tool β€” rip bozo πŸͺ¦). Before you proceed, make sure your system is fully upgraded (dnf --refresh upgrade). Do not skip this step, bestie, I'm begging 😭

The system-upgrade command also performs additional actions necessary for the upgrade of the system β€” for example an upgrade of groups and environments. It's giving main character energy: it does the extra work so you don't have to 🫢


πŸ¦‹ SYNOPSIS πŸ¦‹

dnf system-upgrade download --releasever VERSION [OPTIONS]

dnf system-upgrade reboot

dnf system-upgrade reboot --poweroff

dnf system-upgrade clean

dnf system-upgrade log

dnf system-upgrade log --number=<number>

dnf offline-upgrade download [OPTIONS]

dnf offline-upgrade reboot

dnf offline-upgrade reboot --poweroff

dnf offline-upgrade clean

dnf offline-upgrade log

dnf offline-upgrade log --number=<number>

dnf offline-distrosync download [OPTIONS]

dnf offline-distrosync reboot

dnf offline-distrosync reboot --poweroff

dnf offline-distrosync clean

dnf offline-distrosync log

dnf offline-distrosync log --number=<number>

🌸 SUBCOMMANDS 🌸

  • download β€” Downloads literally everything you need to upgrade to a new major release. The whole glow-up starter pack ✨
  • reboot β€” Prepares the system to perform the upgrade, then reboots to start it. Heads up: you can only use this after the download command completes successfully. No skipping ahead, bestie 🚫
  • clean β€” Removes previously-downloaded data. This happens automatically at the end of a successful upgrade, so it's giving self-cleaning icon behavior πŸ’…
  • log β€” Used to see a list of boots during which an upgrade was attempted, or to show the logs from an upgrade attempt. You show the logs for one of the boots by specifying one of the numbers in the first column. Negative numbers can be used to number the boots from last to first. For example, log --number=-1 can be used to see the logs for the last upgrade attempt πŸ•΅οΈβ€β™€οΈ

πŸŽ€ OPTIONS πŸŽ€

  • --releasever=VERSION β€” REQUIRED. The version to upgrade to. Sets $releasever in all enabled repos. Usually a number, or rawhide.
  • --downloaddir=<path> β€” Redirects the download of packages to the provided <path>. By default, packages are downloaded into (per repository created) subdirectories of /var/lib/dnf/system-upgrade. Organized queen behavior πŸ—‚οΈ
  • --distro-sync β€” Behaves like dnf distro-sync: always install packages from the new release, even if they're older than the currently-installed version. This is the default behavior. Periodt.
  • --no-downgrade β€” Behaves like dnf update: do not install packages from the new release if they're older than what's currently installed. This is the opposite of --distro-sync. If both are specified, the last option will be used (last one wins, classic). The option cannot be used with the offline-distrosync command.
  • --poweroff β€” When applied with the reboot subcommand, the system will power off after upgrades are completed, instead of restarting. Bye bye, no reboot for you πŸ‘‹
  • --number β€” Applied with the log subcommand, will show the log specified by the number. Pick your fave boot, bestie πŸ”’

🧚 NOTES 🧚

dnf system-upgrade reboot does not create a "System Upgrade" boot item. The upgrade will start regardless of which boot item is chosen. Surprise! It's happening either way πŸ’€

The DNF_SYSTEM_UPGRADE_NO_REBOOT environment variable can be set to a non-empty value to disable the actual reboot performed by system-upgrade (e.g. for testing purposes). Very handy for the girlies who like to test things first πŸ™ˆ

Since this is a DNF plugin, options accepted by dnf are also valid here, such as --allowerasing. See dnf(8) for more information. You get the whole DNF menu, not just the plugin combo πŸ’–

The fedup command is not provided, not even as an alias for dnf system-upgrade. She's gone, she's not coming back πŸͺ¦


😭 BUGS 😭

Upgrading from install media (e.g. a DVD or .iso file) currently requires the user to manually set up a DNF repo and fstab entry for the media. Yeah, it's a manual era moment. Ngl, it's giving homework πŸ“š


πŸ”₯ EXAMPLES πŸ”₯

Typical upgrade usage

dnf --refresh upgrade

dnf system-upgrade download --releasever 26

dnf system-upgrade reboot

Show logs from last upgrade attempt

dnf system-upgrade log --number=-1

πŸ’œ REPORTING BUGS πŸ’œ

Bugs should be filed here:

https://bugzilla.redhat.com/

For more info on filing bugs, see the Fedora Project wiki:

https://fedoraproject.org/wiki/How_to_file_a_bug_report

https://fedoraproject.org/wiki/Bugs_and_feature_requests

Please include /var/log/dnf.log and the output of dnf system-upgrade log --number=-1 (if applicable) in your bug reports. Receipts, bestie, bring receipts 🧾

Problems with dependency solving during download are best reported to the maintainers of the package(s) with the dependency problems. Not us β€” them. Route it correctly 🫢

Similarly, problems encountered on your system after the upgrade completes should be reported to the maintainers of the affected components. In other words: if (for example) KDE stops working, it's best if you report that to the KDE maintainers. Like, obviously πŸ’…


🌈 SEE ALSO 🌈

dnf(8), dnf.conf(5), journalctl(1).

Project homepage

https://github.com/rpm-software-management/dnf-plugins-core

πŸ‘‘ AUTHORS πŸ‘‘

Will Woods <wwoods@redhat.com>

Ε tΔ›pΓ‘n Smetana <ssmetana@redhat.com>

⭐ AUTHOR ⭐

See AUTHORS in your Core DNF Plugins distribution

2014, Red Hat, Licensed under GPLv2+


Okay that's the whole page, bestie β€” go upgrade something ✨ Version 4.10.1, dated Mar 28, 2025, from the dnf-plugins-core household. Slay, bye! πŸ¦‹πŸ’–

πŸ“¦ where this page comes from