[Bug 1930573] Re: usrmerge error after upgrading from 20.10 to 21.04

Launchpad Bug Tracker 1930573 at bugs.launchpad.net
Tue Nov 2 18:45:01 UTC 2021


This bug was fixed in the package usrmerge - 24ubuntu3.1

---------------
usrmerge (24ubuntu3.1) hirsute; urgency=medium

  * Clear generated files if they have already been re-generated (LP:
#1930573)

 -- Lukas Märdian <slyon at ubuntu.com>  Tue, 26 Oct 2021 12:47:37 +0200

** Changed in: usrmerge (Ubuntu Hirsute)
       Status: Fix Committed => Fix Released

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

Title:
  usrmerge error after upgrading from 20.10 to 21.04

Status in usrmerge package in Ubuntu:
  Fix Released
Status in usrmerge source package in Hirsute:
  Fix Released
Status in usrmerge source package in Impish:
  Fix Released
Status in usrmerge source package in Jammy:
  Fix Released
Status in usrmerge package in Debian:
  New

Bug description:
  [Impact]

   * Starting with Ubuntu Hirsute, the 'usrmerge' package is pulled into
  the default installation, doing the merging of /{bin,sbin,lib}/ and
  /usr/{bin,sbin,lib} on upgrade. If there are left-over generated files
  it will fail with an error like this:

  Setting up usrmerge (24ubuntu3) ...

  FATAL ERROR:
  Both /lib/udev/hwdb.bin and /usr/lib/udev/hwdb.bin exist.

  
  The upgrade has completed but there were errors during the upgrade 
  process. 

   * We want a fix in Hirsute+ that clears the old location (e.g.
  /lib/udev/hwdb.bin) if the file has already been re-generated at the
  new location (e.g. /usr/lib/udev/hwdb.bin).

  
  [Test Plan]

  Prepare a recent, but non-usrmerge'd system (e.g. launch Bionic and upgrade to Focal then Hirsute):
  $ lxc launch ubuntu:bionic usrmerge
  # do-release-upgrade
  [...]
  # reboot
  # ls -la / # to make sure that /lib is not (yet) a link to /usr/lib

  Simulate duplicated generated files & upgrade:
  # mkdir -p /usr/lib/udev && cp /lib/udev/hwdb.bin /usr/lib/udev/
  # vim /etc/update-manager/release-upgrades # change to "Prompt=normal"
  # do-release-upgrade
  [...]
  => Upgrade fails, press "C" to cancel bug report
  => "The upgrade has completed but there were errors during the upgrade process."

  Verify that the script still fails:
  # /usr/lib/usrmerge/convert-usrmerge
  FATAL ERROR:
  Both /lib/udev/hwdb.bin and /usr/lib/udev/hwdb.bin exist.

  Install relevant usrmerge package:
  # wget https://launchpad.net/ubuntu/+archive/primary/+files/usrmerge_VER_all.deb
  # dpkg -i usrmerge_VER_all.deb
  => The system has been successfully converted.
  # /usr/lib/usrmerge/convert-usrmerge
  => The system has been successfully converted.
  # echo $?
  0

  [Where problems could occur]

   * The upload modifies the convert-usrmerge script, adding special handling for certain, generated files.
   * If something goes wrong, it could delete the wrong state of udev's hwdb which would be re-generated by systemd-hwdb-update.service
   * It could also interrupt the upgrade processes on installation of the usrmerge package, asking the user for manual action (e.g. solving some file conflict and re-running /usr/lib/usrmerge/convert-usrmerge)

  [Other Info]
   
   * The patch was sent to Debian: https://bugs.debian.org/997866

  
  === Original Description ===

  I got the following error after upgrading from 20.10 to 21.04:

  Setting up usrmerge (24ubuntu3) ...

  FATAL ERROR:
  Both /lib/udev/hwdb.bin and /usr/lib/udev/hwdb.bin exist.

  You can try correcting the errors reported and running again
  /usr/lib/usrmerge/convert-usrmerge until it will complete without errors.
  Do not install or update other Debian packages until the program
  has been run successfully.

  dpkg: error processing package usrmerge (--configure):
   installed usrmerge package post-installation script subprocess returned error exit status 1
  Errors were encountered while processing:
   usrmerge

  Running "sudo dpkg --configure -a", "sudo apt -f install" or "sudo
  /usr/lib/usrmerge/convert-usrmerge" give exactly the same error.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/usrmerge/+bug/1930573/+subscriptions




More information about the foundations-bugs mailing list