I’m trying to install downloaded packages without rebooting, but I get this output, what is it about?
sudo dnf offline-upgrade upgrade
trigger file does not exist. exiting quietly.
There are two packages ready for installation ATM
I don’t understand what you’re trying to do.
dnf offline-upgrade is explicitly for upgrading ‘offline’, meaning in a minimal environment between boots.
dnf offline-upgrade upgrade is an undocumented subcommand that is an implementation detail of that process.
If you want to perform a standard ‘online’ upgrade, just use
dnf upgrade. (This has nothing to do with network connectivity.)
I’m trying to install updates from cached packages.
offline-upgrade upgrade apparently was what i needed but it doesn’t work for what ever reason. so how can i do that? because running
dnf update just redownloads everything
It doesn’t work because it’s not for that at all; ‘offline’ is being used in a different context.
dnf offline-upgrade is just a variant of
dnf system-upgrade, but used for normal upgrades rather than upgrading between releases.
If you’ve previously downloaded packages using
dnf upgrade --downloadonly, you may be able to use
dnf -C upgrade to install those packages without network access.
Good that solves my issue
But it doesn’t help the main question so I’ll leave it for now
What question is that? Do you mean the message in your first post? That’s perfectly normal; you’re not ever meant to run that command directly.
What do you mean directly?
correct me if i’m wrong. since i couldn’t find any documentation for it i suppose it’s there to install packages downloaded via
offline-upgrade donwload so after caching you can run
offline-upgrade upgrade and install updates without a reboot.
dnf offline-upgrade is an implementation of systemd’s offline updates scheme, which again has nothing to do with network access.
You’re meant to use
dnf offline-upgrade download followed by
dnf offline-upgrade reboot. The second command ‘triggers’ the update by creating a symlink at
/system-update before rebooting. That’s the trigger file mentioned in the message.
When systemd finds that file on the next boot, it starts a special target that pulls in any services implementing the offline update scheme. It’s that service which runs
dnf offline-upgrade upgrade (technically it runs the equivalent
/usr/bin/dnf-3 system-upgrade upgrade).
As I said before, that command is an undocumented implementation detail. I’m a bit curious how you found it in the first place.
you can ask Fish shell
I have no idea where it collects information from
That completion ships with fish.
As it turns out,
upgrade is not completely undocumented. It’s briefly listed as a valid option in the
--help output, presumably a limitation of the option parser. That seems to be how they found it: Completions for dnf offline-upgrade missing · Issue #8772 · fish-shell/fish-shell · GitHub
I can easily see how that fish completion could be misleading. It might be worth filing a bug with fish to have
upgrade removed. It’s missing from the man page (
man dnf-system-upgrade). I don’t know where they got that description from.