Skip to content

wgwoods/dnf-plugin-system-upgrade

 
 

Repository files navigation

dnf-plugin-system-upgrade

A plugin for DNF that does fedup-style upgrades using systemd's Offline Updates facility.

Installation

make install

Example Usage

To download everything needed to upgrade to Fedora 23:

# dnf system-upgrade download --releasever=23

Once that finishes, you can begin the upgrade process:

# dnf system-upgrade reboot

There's also a fedup-compatible wrapper script, so this works too:

# fedup --network 23
# fedup reboot

Testing Tips

Finding upgrade logs

Everything printed by dnf during the upgrade is in the system journal. Run dnf system-upgrade log to see a list of boots during which an upgrade was attempted. Use dnf system-upgrade log [NUM], where [NUM] is usually -1, to see the logs for that boot using journalctl.

Enable debug shell on /dev/tty9

If you'd like a root shell available during the upgrade, add systemd.debug-shell to your boot arguments.

You can also enable the shell for all system updates/upgrades:

# systemctl add-wants system-update.target debug-shell.service

Switch to the shell with Ctrl-Alt-F9 and back to the upgrade progress with Ctrl-Alt-F1.

In case of boot problems

If the system gets stuck at system-update.target without starting the upgrade, remove /system-update to make the system boot normally.

If you don't have the debug shell available, you can use the dracut emergency shell; add rd.break to the boot args, then:

# mount -o remount,rw /sysroot
# rm /sysroot/system-update

Exit the shell and your system should start normally.

Reporting bugs

Problems can be reported through

  • github issues — problems with the plugin itself and feature requests: new issue,

or through

  • the Fedora bug tracker — upgrade problems and integration with the rest of the distribution: new bug.

Please include /var/log/dnf.log and the output of dnf system-upgrade log -1 (if applicable) in your bug reports.

Problems with dependency solving during download are best reported to the maintainers of the package(s) with the dependency problems.

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.

About

A plugin for system upgrades.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 92.5%
  • Makefile 6.7%
  • Shell 0.8%