[Bug 1031065] Re: /sbin/resolvconf -a depends on /run/resolvconf/interface but it may not exist

Stéphane Graber stgraber at stgraber.org
Mon Jul 30 22:19:23 UTC 2012


Problem was tracked down to cloud-init calling "start networking"
directly from one of its upstart jobs, which bypasses the start
condition of the networking job and triggers the bug.

21:16 < stgraber> [    4.598897] networking
21:16 < stgraber> [    5.016864] init: cloud-init-nonet main process (241) killed by TERM signal
21:16 < stgraber> [    5.632677] resolvconf
21:16 < stgraber> [    5.955406] virtual
21:16 < stgraber> [    5.989643] local
21:17 < stgraber> ubuntu at ip-10-202-249-151:~$ grep -r 'start networking' /etc/init/
21:17 < stgraber> /etc/init/cloud-init-nonet.conf:   start networking >/dev/null
21:17 < stgraber> smoser: ^
21:18 < stgraber> "start on mounted MOUNTPOINT=/ and stopped cloud-init-local" with clout-init-local being "start on mounted MOUNTPOINT=/"
21:18 < stgraber> so basically as soon as / is mounted, "start networking" is directly triggered by cloud-init-nonet bypassing the start condition


http://paste.ubuntu.com/1120257/ shows the process tree at the time.

** Package changed: resolvconf (Ubuntu) => cloud-init (Ubuntu)

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

Title:
  /sbin/resolvconf -a depends on /run/resolvconf/interface but it may
  not exist

Status in “cloud-init” package in Ubuntu:
  New

Bug description:
  In development of 'overlayroot' package, I was mounting / as rw in the initramfs.
  This was causing a different order of execution of mounts, and as a result a different order of networking resolvconf and networking bringup.

  It exposed a bug in resolvconf, which was being called on boot in this order:
  ==== Mon Jul 30 19:08:58 UTC 2012 /sbin/resolvconf -a lo.inet ====
  ==== Mon Jul 30 19:08:59 UTC 2012 /sbin/dhclient-script  ====
  ==== Mon Jul 30 19:08:59 UTC 2012 /sbin/resolvconf -a eth0.dhclient ====
  ==== Mon Jul 30 19:08:59 UTC 2012 /sbin/resolvconf -a eth0.inet ====
  ==== Mon Jul 30 19:08:59 UTC 2012 /sbin/resolvconf --enable-updates ====
  ==== Mon Jul 30 19:08:59 UTC 2012 /etc/resolvconf/update.d/libc -u ====

  The normal order is for resolvconf --enable-updates to be called (from /etc/init/resolvconf.conf) before anything else. As a result, I was seeing errors like:
    resolvconf: Error: /run/resolvconf/interface either does not exist or is not a directory

  This may be exposing a more grave issue, in that I believe the reason
  for dhclient coming up before resolvconf.conf started was that it was
  being run as a result of /etc/init/network-interface.conf. I don't
  immediately see how that is guarnateed to have /run ounted at all.

  ProblemType: Bug
  DistroRelease: Ubuntu 12.10
  Package: resolvconf 1.67ubuntu1
  ProcVersionSignature: User Name 3.5.0-6.6-generic 3.5.0
  Uname: Linux 3.5.0-6-generic x86_64
  Architecture: amd64
  Date: Mon Jul 30 20:07:04 2012
  PackageArchitecture: all
  ProcEnviron:
   TERM=xterm
   PATH=(custom, no user)
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  SourcePackage: resolvconf
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1031065/+subscriptions




More information about the foundations-bugs mailing list