[Bug 1021293] Re: Ubuntu 12.04 install stalls when doing apt-get upgrade

Launchpad Bug Tracker 1021293 at bugs.launchpad.net
Thu Aug 2 02:44:19 UTC 2012


This bug was fixed in the package debian-installer-utils - 1.88ubuntu2.1

---------------
debian-installer-utils (1.88ubuntu2.1) precise-proposed; urgency=low

  * log-output: Always install a no-op SIGCHLD handler, in case the
    subsidiary process starts a daemon which does not fully disconnect its
    standard file descriptors (LP: #1021293).
 -- Colin Watson <cjwatson at ubuntu.com>   Fri, 20 Jul 2012 17:18:51 +0100

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

Title:
  Ubuntu 12.04 install stalls when doing apt-get upgrade

Status in “accountsservice” package in Ubuntu:
  Fix Released
Status in “debian-installer-utils” package in Ubuntu:
  Fix Released
Status in “ubiquity” package in Ubuntu:
  In Progress
Status in “accountsservice” source package in Precise:
  Fix Committed
Status in “debian-installer-utils” source package in Precise:
  Fix Released
Status in “ubiquity” source package in Precise:
  Fix Released

Bug description:
  [Impact] Installs of the original 12.04 image with 'apt-get upgrade' in their ubiquity/success_command hang.  This blocks hardware certification.
  [Test case] As below; or, more simply, put the preseed file somewhere network-accessible and boot the installer in a VM with "url=<whatever>", then run the installer with "ubiquity --automatic".  For a valid test, you need to take the original 12.04 image and upgrade just the ubiquity* binary packages before starting the installer.
  [Regression potential] It's worth testing that d-i still works when built with the updated debian-installer-utils.  Nothing outside the installer is at all likely to be affected.

  Ubuntu 12.04 release image, this contains Ubiquity 2.10.16, grub-pc
  1.99-21ubuntu3 and initramfs-tools 0.99ubuntu13. The updates install
  grub-pc 1.99-21ubuntu3.1.

  At some point between June 28th and July 3rd, the apt-get upgrade
  process on Precise installations started stalling. We've noticed it
  stops when updating the initrds for new kernels:

  Jul  4 20:43:22 ubuntu in-target: Setting up unity-2d-spread (5.12.0-0ubuntu1.1) ...
  Jul  4 20:43:22 ubuntu in-target: Setting up unity-2d (5.12.0-0ubuntu1.1) ...
  Jul  4 20:43:22 ubuntu in-target: Processing triggers for libc-bin ...
  Jul  4 20:43:23 ubuntu in-target: ldconfig deferred processing now taking place
  Jul  4 20:43:23 ubuntu in-target: Processing triggers for resolvconf ...
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): frontend started
  Jul  4 20:43:23 ubuntu in-target: debconf: unable to initialize frontend: Passthrough
  Jul  4 20:43:23 ubuntu in-target: debconf: (Failed to open fd 3: Bad file descriptor at (eval 24) line 3)
  Jul  4 20:43:23 ubuntu in-target: debconf: falling back to frontend: Noninteractive
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): frontend running, package name is resolvconf
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): starting /var/lib/dpkg/info/resolvconf.config configure resolvconf-enable-updates
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): <-- INPUT low resolvconf/linkify-resolvconf
  Jul  4 20:43:23 ubuntu in-target: Use of uninitialized value in numeric ge (>=) at /usr/share/perl5/Debconf/Priority.pm line 24, <GEN3> line 1.
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): --> 30 question skipped
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): <-- GO
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): --> 0 ok
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): <-- GET resolvconf/linkify-resolvconf
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): --> 0 false
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): <-- INPUT medium resolvconf/downup-interfaces
  Jul  4 20:43:23 ubuntu in-target: Use of uninitialized value in numeric ge (>=) at /usr/share/perl5/Debconf/Priority.pm line 24, <GEN3> line 4.
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): --> 30 question skipped
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): <-- GO
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): --> 0 ok
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): starting /var/lib/dpkg/info/resolvconf.postinst triggered resolvconf-enable-updates
  Jul  4 20:43:23 ubuntu in-target: debconf (developer): <-- STOP
  Jul  4 20:43:23 ubuntu in-target: invoke-rc.d: policy-rc.d denied execution of start.
  Jul  4 20:43:23 ubuntu in-target: Processing triggers for initramfs-tools ...
  Jul  4 20:43:24 ubuntu in-target: update-initramfs: Generating /boot/initrd.img-3.5.0-3-generic
  Jul  4 21:17:01 ubuntu CRON[989]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

  After the last update-initramfs line it stalls forever (notice the
  timestamp for that command and the following CRON one).

  Steps to reproduce (on any machine, this doesn't seem to be hardware-
  specific):

  - Create a nice Ubuntu 12.04 USB stick using USB disk creator (do NOT simply dd the hybrid image onto the USB stick, as you will need to write files to it later).
  - Put the attached preseed in the USB stick's preseeds directory, name it ubuntu.seed (overwriting the existing file there).
  - Edit syslinux/txt.cfg, go to the second "append" line containing kernel parameters for the "install ubuntu" menu option (line 9 in the file), and right after "only-ubiquity", add a space and "automatic-ubiquity".
  - Boot a test system with this USB stick
  - Select the "install ubuntu" option

  Expected result:
  - System installs ubuntu completely, prompts to reboot and boots into a complete installation

  Actual result:
  - System will stall forever
  - Log shows as seen above.

  The main addition to the preseed is the late_command:

  ubiquity ubiquity/success_command string \
  for i in /dev /dev/pts /dev/shm /sys /sys/kernel/security /proc /cdrom; do mount --bind $i /      target/$i; done; \
    sed -i -e "/^GRUB_CMDLINE_LINUX_DEFAULT/s/\"$/ initcall_debug\"/" /target/etc/default/grub;     chroot /target update-grub; \
    echo "echo 0 > /sys/module/kernel/parameters/initcall_debug" > /target/etc/initramfs-tools/conf.d/initcall; chroot /target update-initramfs -u; \
    for i in /dev/pts /dev/shm /dev /sys/kernel/security /sys /proc /cdrom; do umount $i; done; \
    in-target apt-get update; \
    in-target apt-get upgrade -y --force-yes; \
    true

  Note this late_command basically just apt-get updates and upgrades.
  The first few lines are apparently needed if some of the later updates
  include a kernel update; without the mounts, the implicit update-grub
  in /target will fail.

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




More information about the foundations-bugs mailing list