Public bug reported:

Release upgrader: 24.04.28 (ubuntu-release-upgrader-core 1:22.04.21 on the 
jammy side)
From: Ubuntu 22.04.5 (Ubuntu MATE), apt 2.4.14, kernel 5.17.0-1021-oem
To: 24.04
Third-party repos present (all disabled by the upgrader as expected): CUDA, 
graphics-drivers PPA, Docker, Tailscale, Plex, Edge, Dropbox, OBS, ubuntu-make, 
VS Code, Cursor.

What happened

do-release-upgrade downloaded everything, then ran the install in
stages. dpkg.log shows the main stage removing networking packages that
it planned to re-install later:

  11:19:28 remove network-manager:amd64 1.36.6-0ubuntu2.5
  11:19:29 remove iproute2:amd64 5.15.0-1ubuntu2.2
  11:20:23 remove policykit-1:amd64 0.105-33ubuntu0.1
  11:20:40 remove udev:amd64 249.11-0ubuntu3.22

history.log confirms the same apt transaction both "Remove"s network-
manager 1.36.6 and lists it under "Upgrade" to 1.46.0, i.e. the solver
chose remove-then-reinstall instead of an in-place upgrade. That stage
finished cleanly at 11:22:25.

The upgrader then re-ran its calculation and applied the Distro
PostUpgradeInstall rule for systemd-resolved (the fix for LP: #2063464):

  11:22:31,385 DEBUG Installing 'systemd-resolved' (Distro PostUpgradeInstall 
rule)
  11:22:33,851 DEBUG Disabling systemd-resolved stub resolver during upgrade
  11:22:33,969 INFO cache.commit()
  11:22:41,274 ERROR IOError in cache.commit(): 'Failed to fetch 
http://security.ubuntu.com/ubuntu/pool/universe/g/gnupg2/gpg-wks-server_2.4.4-2ubuntu17.6_amd64.deb
 Temporary failure resolving 'archive.ubuntu.com'
  Failed to fetch 
http://archive.ubuntu.com/ubuntu/pool/main/liba/libalgorithm-diff-perl/libalgorithm-diff-perl_1.201-1_all.deb
 Temporary failure resolving 'archive.ubuntu.com'
  ... (3 retries)
  11:22:55,948 ERROR giving up on fetching after maximum retries
  11:22:55,948 DEBUG abort called

That second commit needed two packages that were not fetched up front.
By then network-manager, iproute2 and udev were gone and the resolved
stub was disabled, so DNS could not work, and the upgrader aborted.

Result

The system was left with the noble core unpacked (bash, dpkg, apt, libc6
2.39, base-files 24.04) but ~750 packages in "unpacked" state, ~200
removed including network-manager, iproute2, udev and policykit-1,
sources.list reverted to jammy, and no network. lsb_release still said
22.04. Recovery required a live USB and chroot.

Expected

Either
 (a) everything the PostUpgradeInstall/"second pass" commit can need is fetched 
during the download phase, before any package is removed, or
 (b) the upgrader refuses to abort on a fetch failure once packages have 
started being removed, and instead completes with what it has in the cache, or
 (c) the solver is prevented from removing network-manager/iproute2/udev during 
the main stage.

Attached: /var/log/dist-upgrade (main.log, apt.log, apt-term.log,
history.log, eipp.log.xz, lspci.txt).

Related: LP: #2063464 (added the systemd-resolved PostUpgradeInstall
rule), LP: #2083756 (same end state: upgrade halted, no resolver, no
DNS).

** Affects: ubuntu-release-upgrader (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: dist-upgrade jammy2noble

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2166580

Title:
  jammy->noble upgrade aborts after main install stage:
  PostUpgradeInstall commit needs network but network-manager/iproute2
  were already removed

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/2166580/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to