Failed to upgrade system from 14.04

Bug #1452238 reported by Bin Li
32
This bug affects 5 people
Affects Status Importance Assigned to Milestone
apt (Ubuntu)
Confirmed
Medium
Unassigned
sysvinit (Ubuntu)
Fix Released
Critical
Adam Conrad

Bug Description

Workaround when the 14.04 upgrade fails and you can't do more upgrades or installs anymore:

1. Launch Terminal from Dash
2. Type 'sudo apt-get install -f' and press enter. When prompted (offers updating eg libc-dev-bin, libc6-dbg, libc6-dev and udev), press enter again.
3. Launch Software Updater again from Dash and let it install the rest of the updates.

Original report:

Download and install the 14.04 image.
http://cdimage.ubuntu.com/ubuntu/releases/14.04/release/ubuntu-14.04-desktop-amd64+mac.iso

$ sudo apt-get update
$ sudo apt-get upgrade
.....
Processing triggers for desktop-file-utils (0.22-1ubuntu1) ...
Processing triggers for bamfdaemon (0.5.1+14.04.20140409-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for mime-support (3.54ubuntu1) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for gconf2 (3.2.6-0ubuntu2) ...
Setting up libdbus-1-3:amd64 (1.6.18-0ubuntu4.3) ...
Setting up libcgmanager0:amd64 (0.24-0ubuntu7.3) ...
Setting up libudev1:amd64 (204-5ubuntu20.11) ...
Processing triggers for libc-bin (2.19-0ubuntu6.6) ...
(Reading database ... 163205 files and directories currently installed.)
Preparing to unpack .../ifupdown_0.7.47.2ubuntu4.1_amd64.deb ...
Unpacking ifupdown (0.7.47.2ubuntu4.1) over (0.7.47.2ubuntu4) ...
Processing triggers for man-db (2.6.7.1-1) ...
Processing triggers for ureadahead (0.100.0-16) ...
dpkg: dependency problems prevent configuration of ifupdown:
 ifupdown depends on initscripts (>= 2.88dsf-25); however:
  Package initscripts is not configured yet.

dpkg: error processing package ifupdown (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
                                                                                                          E: Sub-process /usr/bin/dpkg returned an error code (1)

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ifupdown (Ubuntu):
status: New → Confirmed
Revision history for this message
Jonathan Davies (jpds) wrote :

I had this issue on a new ARM board over the weekend too.

Revision history for this message
Jonathan Davies (jpds) wrote :

Running apt-get install -f does:

$ sudo apt-get install -f
...
The following packages will be upgraded:
  libc-dev-bin libc6-dbg libc6-dev udev

Revision history for this message
Bin Li (binli) wrote :

Jonathan,

 Yes, it could resolve it. But it's not a better solution for it, it would be better that we find the root cause and fix it in ifupdown. :D

Revision history for this message
Tim Chen (timchen119) wrote :

Package: udev
Source: systemd
Version: 204-5ubuntu20kittyhawk1
Architecture: amd64
Maintainer: Ubuntu Developers <email address hidden>
Installed-Size: 5143
Depends: libacl1 (>= 2.2.51-8), libblkid1 (>= 2.19.1), libc6 (>= 2.17), libcgmanager0, libdbus-1-3 (>= 1.0.2), libkmod2 (>= 5~), libnih-dbus1 (>= 1.0.0), libnih1 (>= 1.0.0), libselinux1 (>= 2.0.65), libudev1 (= 204-5ubuntu20kittyhawk1), sysv-rc (>= 2.88dsf-24) | file-rc (>= 0.8.16), lsb-base (>= 3.0-6), util-linux (>= 2.16), procps
Replaces: systemd-services (<< 202-0ubuntu6)
Section: admin
Priority: important
Multi-Arch: foreign

not sure why but seems udev only depends on libc6, however libc6-dbg and libc6-dev depends on a old version of libc6, so it seems a loop dependency to me but I'm not sure why libc6-dbg and libc6-dev didn't get upgrade in the same time...

Revision history for this message
Tim Chen (timchen119) wrote :

@Bin

could we use

#apt-get dist-upgrade

instead?

since that's what update-manager would do~

Revision history for this message
Tim Chen (timchen119) wrote :

@4$

which command did you run at firsttime in

https://pastebin.canonical.com/130750/

?

 apt-get dist-upgrade or apt-get upgrade?

Revision history for this message
Shih-Yuan Lee (fourdollars) wrote :

apt-get dist-upgrade

Revision history for this message
Shih-Yuan Lee (fourdollars) wrote :

If I upgrade ifupdown by `sudo apt-get install ifupdown` first and then upgrade the whole system by `sudo apt-get dist-upgrade`, there is no problem at all.

Revision history for this message
Bin Li (binli) wrote :

I use 'sudo agt-get upgrade' when I met this issue, never tried dist-upgrade.
I will take annual leave this week, so please contact 4$ for more info. Thanks!

Revision history for this message
Tim Chen (timchen119) wrote :
Revision history for this message
Shih-Yuan Lee (fourdollars) wrote :

https://tracker.debian.org/pkg/ifupdown has more than 200 bugs on Debian.

Revision history for this message
Tim Chen (timchen119) wrote :
Revision history for this message
Tim Chen (timchen119) wrote :

if upgrade" ifupdown" itself or using following commands there's no such issue

#apt-get install --only-upgrade dpkg coreutils sysv-rc sysvinit-utils initscripts udev libudev1 ifupdown libc-bin upstart

The failure during dist-upgrade/updrade by "apt-get dist-upgrade" is pretty weird.

Revision history for this message
Tim Chen (timchen119) wrote :

ifupdown depends on initscripts
initscripts depends on upstart
upstart depends on initscripts and ifupdown

The error messages stats that

"dependency problems prevent configuration of ifupdown:
 ifupdown depends on initscripts (>= 2.88dsf-25); however:
  Package initscripts is not configured yet."

Upstart try to pull in ifupdown and initscripts, however, initscripts is already half-installed (because of other depenency), and ifupdown claim it depends on initscripts, so the apt broke at that stage.

I think if we set initscripts as ifupdown's pre-depends, it could solve the problem.

I'll try to verify this solution.

Revision history for this message
Tim Chen (timchen119) wrote :

#15 failed. I set intscripts as Pre-Depends (for ifupdown) but still not work.

Revision history for this message
Adam Conrad (adconrad) wrote :

This is an apt bug, not an ifupdown bug.

no longer affects: ifupdown
affects: ifupdown (Ubuntu) → apt (Ubuntu)
description: updated
Revision history for this message
Adam Conrad (adconrad) wrote :

Of course, after I said this is an apt (or python-apt, if people are seeing it in update-manager too) bug, which is true, it can work harder to do better loop breaking and batching, this could maybe be worked around by fudging the dependencies of initscripts a bit, perhaps removing the upstart and mountall deps (the latter might have to become a versioned break).

Working around this with initscripts would require some care to make sure upgrades work from 14.04 to 14.04.(current), as well as 12.04 to 14.04.(current) as well.

Revision history for this message
Jamie Strandboge (jdstrand) wrote :

AIUI, new trusty installs will hit this and update-manager will fail to upgrade forever. The only solution for users is to 'apt-get -f install' to force it. This means that desktop users will not get security updates after they install 14.04. This was confirmed yesterday by the security team in a newly installed VM (there have also been anecdotal reports on real hardware).

Changed in apt (Ubuntu):
importance: Undecided → Critical
Steve Langasek (vorlon)
Changed in apt (Ubuntu):
assignee: nobody → Adam Conrad (adconrad)
Adam Conrad (adconrad)
Changed in apt (Ubuntu):
assignee: Adam Conrad (adconrad) → nobody
Changed in sysvinit (Ubuntu):
assignee: nobody → Adam Conrad (adconrad)
status: New → Confirmed
importance: Undecided → Critical
Changed in apt (Ubuntu):
importance: Critical → Medium
Revision history for this message
Adam Conrad (adconrad) wrote :

A sysvinit fix has been uploaded to trusty-proposed, this has been tested to solve the problem both with apt-get and with update-manager.

Changed in sysvinit (Ubuntu):
status: Confirmed → In Progress
Revision history for this message
Stéphane Graber (stgraber) wrote : Please test proposed package

Hello Bin, or anyone else affected,

Accepted sysvinit into trusty-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/sysvinit/2.88dsf-41ubuntu6.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

tags: added: verification-needed
Revision history for this message
Adam Conrad (adconrad) wrote :

Tested an upgrade with proposed enabled using update-manager, passed OK.

Revision history for this message
Adam Conrad (adconrad) wrote :

Tested an upgrade with proposed enabled using apt-get, passed OK.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package sysvinit - 2.88dsf-41ubuntu6.2

---------------
sysvinit (2.88dsf-41ubuntu6.2) trusty; urgency=medium

  * Break the dependency loop with upstart by dropping the upstart dependency
    from initscripts, and the obsolete versioned mountall dep (LP: #1452238)

 -- Adam Conrad <email address hidden> Fri, 12 Jun 2015 10:08:52 -0600

Changed in sysvinit (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Stéphane Graber (stgraber) wrote : Update Released

The verification of the Stable Release Update for sysvinit has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.