[Bug 1065077] Re: Ifenslave pre-up doesn't wait for slaves when usr is a seperate partition

Chris J Arges 1065077 at bugs.launchpad.net
Wed Nov 13 20:35:37 UTC 2013


** Description changed:

+ SRU Justification:
+ 
+ [Impact]
+ 
+  * There is an error in the pre-up script in  ifenslave that will cause problems if /usr is in a separate partition. This is because the script uses /usr/bin/seq, and the /usr filesystem may not be available yet.
+  * This means that configured bonds may not come up properly during boot.
+ 
+ [Test Case]
+ 
+  * Put /usr on a separate partition, configure bonded interfaces, and boot. Check for errors in /var/log/upstart/network-interface-bond*.log
+  * Alternately one could just move /usr/bin/seq and see if
+   sudo service network-interface stop INTERFACE=bond0 
+   sudo service network-interface start INTERFACE=bond0
+  works properly with no errors in the upstart logs.
+ 
+ [Regression Potential]
+ 
+  * This has already been fixed in raring and beyond but not in P/Q.
+ 
+ --
+ 
  Description:	Ubuntu 12.04.1 LTS
  Release:	12.04
  Ifenslave-2.6 version: 1.1.0-19ubuntu5
  
  First of all; I am not 100% sure this bug is in ifenslave-2.6, but
  ifenslave-2.6 is definately affected by the bug in general.
  
  I have installed a system using PXE and preseed, which automatically
  partitions seperate /, /usr, /var, /tmp and swap partitions. After
  installing ifenslave and configuring it using the configuration example
  in /usr/share/doc/ifenslave-2.6/examples/two_hotplug_ethernet, I reboot
  the server to test if it comes up after booting.
  
  The result is a bond0 that came up, but eth0 and eth1 haven't joined in
  as slaves.
  
  In /var/log/upstart/network-interface-bond0.log, I noticed the
  following:
  
  Waiting for a slave to join bond0 (will timeout after 60s)
  /etc/network/if-pre-up.d/ifenslave: 240: /etc/network/if-pre-up.d/ifenslave: seq: not found
  No slave joined bond0, continuing anyway
  Failed to bring up bond0.
  
  It seems that seq is not available at the time /etc/network/if-pre-
  up.d/ifenslave is ran. To verify, I added a 'df -h' at the top of the
  script, and rebooted, noticing indeed only my root filesystem is mounted
  when the script runs:
  
  Filesystem               Size  Used Avail Use% Mounted on
  /dev/mapper/rootvg-root  3.8G  631M  3.0G  18% /
  udev                     5.9G  260K  5.9G   1% /dev
  tmpfs                    2.4G  240K  2.4G   1% /run
  none                     5.0M     0  5.0M   0% /run/lock
  Waiting for a slave to join bond0 (will timeout after 60s)
  /etc/network/if-pre-up.d/ifenslave: 240: /etc/network/if-pre-up.d/ifenslave: seq: not found
  No slave joined bond0, continuing anyway
  Failed to bring up bond0.
  
  Naturally, after booting is done, all filesystems are available. When
  running ifdown -a; ifup -a when this was the case, the bond actually
  does come up.
  
  Eventually, I made a quick-fix for myself by copying /usr/bin/seq to
  /bin/seq, which solves the issue.
  
  Now, I'm quite new to Ubuntu (we are figuring out if we can and want to
  migrate our servers from Debian to Ubuntu), and especially upstart, but
  from what I can see, the networking upstart script only starts on
  'local-filesystems', which I assume is emited only when all filesystems
  are actually mounted (but here is where my knowledge pretty much ends).
  
  If further information is needed, just let me know!

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

Title:
  Ifenslave pre-up doesn't wait for slaves when usr is a seperate
  partition

Status in “ifenslave-2.6” package in Ubuntu:
  Fix Released
Status in “ifenslave-2.6” source package in Precise:
  In Progress
Status in “ifenslave-2.6” source package in Quantal:
  In Progress

Bug description:
  SRU Justification:

  [Impact]

   * There is an error in the pre-up script in  ifenslave that will cause problems if /usr is in a separate partition. This is because the script uses /usr/bin/seq, and the /usr filesystem may not be available yet.
   * This means that configured bonds may not come up properly during boot.

  [Test Case]

   * Put /usr on a separate partition, configure bonded interfaces, and boot. Check for errors in /var/log/upstart/network-interface-bond*.log
   * Alternately one could just move /usr/bin/seq and see if
    sudo service network-interface stop INTERFACE=bond0 
    sudo service network-interface start INTERFACE=bond0
   works properly with no errors in the upstart logs.

  [Regression Potential]

   * This has already been fixed in raring and beyond but not in P/Q.

  --

  Description:	Ubuntu 12.04.1 LTS
  Release:	12.04
  Ifenslave-2.6 version: 1.1.0-19ubuntu5

  First of all; I am not 100% sure this bug is in ifenslave-2.6, but
  ifenslave-2.6 is definately affected by the bug in general.

  I have installed a system using PXE and preseed, which automatically
  partitions seperate /, /usr, /var, /tmp and swap partitions. After
  installing ifenslave and configuring it using the configuration
  example in /usr/share/doc/ifenslave-2.6/examples/two_hotplug_ethernet,
  I reboot the server to test if it comes up after booting.

  The result is a bond0 that came up, but eth0 and eth1 haven't joined
  in as slaves.

  In /var/log/upstart/network-interface-bond0.log, I noticed the
  following:

  Waiting for a slave to join bond0 (will timeout after 60s)
  /etc/network/if-pre-up.d/ifenslave: 240: /etc/network/if-pre-up.d/ifenslave: seq: not found
  No slave joined bond0, continuing anyway
  Failed to bring up bond0.

  It seems that seq is not available at the time /etc/network/if-pre-
  up.d/ifenslave is ran. To verify, I added a 'df -h' at the top of the
  script, and rebooted, noticing indeed only my root filesystem is
  mounted when the script runs:

  Filesystem               Size  Used Avail Use% Mounted on
  /dev/mapper/rootvg-root  3.8G  631M  3.0G  18% /
  udev                     5.9G  260K  5.9G   1% /dev
  tmpfs                    2.4G  240K  2.4G   1% /run
  none                     5.0M     0  5.0M   0% /run/lock
  Waiting for a slave to join bond0 (will timeout after 60s)
  /etc/network/if-pre-up.d/ifenslave: 240: /etc/network/if-pre-up.d/ifenslave: seq: not found
  No slave joined bond0, continuing anyway
  Failed to bring up bond0.

  Naturally, after booting is done, all filesystems are available. When
  running ifdown -a; ifup -a when this was the case, the bond actually
  does come up.

  Eventually, I made a quick-fix for myself by copying /usr/bin/seq to
  /bin/seq, which solves the issue.

  Now, I'm quite new to Ubuntu (we are figuring out if we can and want
  to migrate our servers from Debian to Ubuntu), and especially upstart,
  but from what I can see, the networking upstart script only starts on
  'local-filesystems', which I assume is emited only when all
  filesystems are actually mounted (but here is where my knowledge
  pretty much ends).

  If further information is needed, just let me know!

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ifenslave-2.6/+bug/1065077/+subscriptions



More information about the foundations-bugs mailing list