[Bug 1987452] Re: do-release-upgrade without the latest version of apt in focal or groovy will crash
Brian Murray
1987452 at bugs.launchpad.net
Thu Sep 8 22:35:29 UTC 2022
I tested this using an Ubuntu 20.10 virtual machine as per the bug
description and can confirm that the fix works:
bdmurray at clean-groovy-amd64:~$ cat /var/log/dist-upgrade/main.log
2022-09-08 15:34:06,356 INFO Using config files '['./DistUpgrade.cfg.groovy', '/etc/update-manager/release-upgrades.d/ubuntu-advantage-upgrades.cfg']'
2022-09-08 15:34:06,356 INFO uname information: 'Linux clean-groovy-amd64 5.8.0-63-generic #71-Ubuntu SMP Tue Jul 13 15:59:12 UTC 2021 x86_64'
2022-09-08 15:34:06,372 INFO apt version: '2.1.10'
2022-09-08 15:34:06,372 INFO python version: '3.8.10 (default, Jun 2 2021, 10:49:15)
[GCC 10.3.0]'
2022-09-08 15:34:06,373 INFO release-upgrader version '22.04.14' started
2022-09-08 15:34:06,377 INFO locale: 'en_US' 'UTF-8'
2022-09-08 15:34:06,447 DEBUG Using 'DistUpgradeViewText' view
2022-09-08 15:34:06,482 DEBUG enable dpkg --force-overwrite
2022-09-08 15:34:06,518 DEBUG creating statefile: '/var/log/dist-upgrade/apt-clone_system_state.tar.gz'
2022-09-08 15:34:08,096 DEBUG lsb-release: 'groovy'
2022-09-08 15:34:08,096 DEBUG _pythonSymlinkCheck run
2022-09-08 15:34:08,097 DEBUG openCache()
2022-09-08 15:34:08,097 DEBUG quirks: running PreCacheOpen
2022-09-08 15:34:08,097 DEBUG running Quirks.PreCacheOpen
2022-09-08 15:34:08,126 DEBUG Comparing 5.8.0-25 with
2022-09-08 15:34:08,126 DEBUG Comparing 5.8.0-63 with 5.8.0-25
2022-09-08 15:34:08,130 DEBUG /openCache(), new cache size 1655
2022-09-08 15:34:08,131 DEBUG need_server_mode(): run in 'desktop' mode, (because of pkg 'ubuntu-desktop')
2022-09-08 15:34:08,131 DEBUG checkViewDepends()
2022-09-08 15:34:08,131 DEBUG depends: 'apt (>= 2.1.10ubuntu0.3)'
2022-09-08 15:34:08,131 DEBUG checking: '[('apt', '2.1.10ubuntu0.3', '>=')]'
2022-09-08 15:34:08,131 ERROR depends 'apt (>= 2.1.10ubuntu0.3)' is not satisfied
bdmurray at clean-groovy-amd64:~$ apt-cache policy libapt-pkg6.0
libapt-pkg6.0:
Installed: 2.1.10
Candidate: 2.1.10
Version table:
*** 2.1.10 100
100 /var/lib/dpkg/status
** Tags removed: verification-needed verification-needed-jammy
** Tags added: verification-done verification-done-jammy
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ubuntu-release-upgrader in
Ubuntu.
https://bugs.launchpad.net/bugs/1987452
Title:
do-release-upgrade without the latest version of apt in focal or
groovy will crash
Status in ubuntu-release-upgrader package in Ubuntu:
Invalid
Status in ubuntu-release-upgrader source package in Jammy:
Fix Committed
Bug description:
Impact
------
There are many crash reports in the Ubuntu Error tracker (https://errors.ubuntu.com/problem/d7622e91a2afe1c1fc697f6717d45146525825c3 for one) where people experience a crash trying to upgrade from Groovy (and Focal) to Jammy due to having an old version of apt installed. While the release upgrade process ensures they have the latest version of packages installed its possible they don't have -updates enabled or their apt list files are out of date. Whatever the reason this can keep people stuck on a potentially EoL release.
Test Case
---------
1) On an Ubuntu 20.04 (or Ubuntu 20.10) system install the version of libapt-pkg6.0 and apt from the release pocket (not -updates).
2) Disable the -updates pocket in /etc/apt/sources.list. (Or rm /var/lib/apt/lists/* .)
3) Run do-release-upgrade
4) Observe a crash early in the upgrade process
With the version of ubuntu-release-upgrader from -proposed (testable
by using do-release-upgrade -p) the release upgrade will not crash and
instead you will be notified to install the newer version of apt and
libapt-pkg6.0. The message will look like the following:
"Reading state information... Done
Required depends is not installed
The required dependency 'apt (>= 2.0.4)' is not installed."
Regression Potential
--------------------
If the Depends line is improperly formatted the upgrade process could end up crashing in a different way.
ProblemType: Crash
DistroRelease: Ubuntu 22.04
Package: ubuntu-release-upgrader-core 1:22.04.13
ProcVersionSignature: Ubuntu 5.8.0-63.71-generic 5.8.18
Uname: Linux 5.8.0-63-generic x86_64
Architecture: amd64
CasperMD5CheckResult: skip
CrashDB: ubuntu
Date: Tue Aug 23 14:47:18 2022
DuplicateSignature: apt_pkg.Error: E:Could not configure 'libc6:i386'. , E:Could not perform immediate configuration on 'libgcc-s1:i386'. Please see man 5 apt.conf under APT::Immediate-Configure for details. (2)
ExecutablePath: /usr/bin/do-release-upgrade
ExecutableTimestamp: 1621013264
InstallationDate: Installed on 2022-08-03 (20 days ago)
InstallationMedia: Ubuntu 20.10 "Groovy Gorilla" - Release amd64 (20201022)
InterpreterPath: /usr/bin/python3.8
PackageArchitecture: all
ProcCmdline: /usr/bin/python3 -s /tmp/ubuntu-release-upgrader-fpldmaum/jammy --mode=server --frontend=DistUpgradeViewText
ProcCwd: /tmp/ubuntu-release-upgrader-fpldmaum
Python3Details: /usr/bin/python3.8, Python 3.8.10, python3-minimal, 3.8.6-0ubuntu1
PythonArgs: ['/usr/bin/do-release-upgrade', '--mode=server', '--frontend=DistUpgradeViewText']
PythonDetails: N/ASourcePackage: ubuntu-release-upgrader
Title: do-release-upgrade crashed with apt_pkg.Error: E:Could not configure 'libc6:i386'. , E:Could not perform immediate configuration on 'libgcc-s1:i386'. Please see man 5 apt.conf under APT::Immediate-Configure for details. (2)
Traceback: apt_pkg.Error: E:Could not configure 'libc6:i386'. , E:Could not perform immediate configuration on 'libgcc-s1:i386'. Please see man 5 apt.conf under APT::Immediate-Configure for details. (2)
UpgradeStatus: Upgraded to groovy on 2022-08-23 (0 days ago)
UserGroups: N/A
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/1987452/+subscriptions
More information about the foundations-bugs
mailing list