← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1619459] Re: workdir only used for root mount not recursed

 

This bug was fixed in the package cloud-initramfs-tools - 0.27ubuntu1.3

---------------
cloud-initramfs-tools (0.27ubuntu1.3) xenial; urgency=medium

  * sync with upstream at 0.32ubuntu1 (revno 129)
    * overlayroot: fix overlayroot=crypt with newer initramfs-tools
      (LP: #1634310)
    * overlayroot: support random seed from systemd systemd-random-seed.service
    * cloud-initramfs-dyn-netconf: Further adjustments to support
      IPV6 and the new DEVICE6 and net6-DEVICE.conf files.  (LP: #1621615)
    * overlayroot: support 'overlay' filesystem explicitly rather than
      relying on ubuntu specific kernel module 'overlayfs'.  (LP: #1493188)
    * overlayroot: write debug to /run/initramfs not /dev/.initramfs but
      support writing to /dev/.initramfs if that is all there is. (LP: #1485752)
    * overlayroot: fix overlayroot if recurse=0 was not provided.
      This fuctionality was lost since workdir support was added. (LP: #1619459)
    * whitespace cleanup.

 -- Scott Moser <smoser@xxxxxxxxxx>  Mon, 28 Nov 2016 20:12:51 -0500

** Changed in: cloud-initramfs-tools (Ubuntu Xenial)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1619459

Title:
  workdir only used for root mount not recursed

Status in cloud-initramfs-tools package in Ubuntu:
  Fix Released
Status in cloud-initramfs-tools source package in Xenial:
  Fix Released

Bug description:
  === Begin SRU Template ===
  [Impact]
  The impact on xenial would only be seen if there were multiple filesystems
  mounted.  In the 16.04 cloud image that is used on openstack or many other
  clouds, there is only one partition.  But in the 16.10  image there is
  a separate uefi partition that caused havoc to overlayroot as the 'workdir'
  option was not correctly supported.

  [Test Case]
  The following should work, but currently does not.
  Note, to test the fix, between step 1 and 2, you'll need to enable
  proposed and install overlayroot.

  1. Start an instance of a cloud image with 2 disks.
     On openstack by default you get 2 disks (an ephemeral and a root).
     Cloud-init will configure the ephemeral to be a /mnt.

  2. remove cloud-init's configuration of /etc/fstab options
      These can cause issue with the way overlayroot does its mounts.
      So just remove the special options that cloud-init writes.

      $ sed -i.dist s/,x-systemd.requires=cloud-
  init.service,comment=cloudconfig// /etc/fstab

      if you do not do that, then /mnt will not get mounted, and journalctl
      will show a ordering cycle on the mount.  The following will show failed.
         systemctl status 'media-root\x2dro-mnt.mount'

      Note, this is a separate bug, mentioned here only for
  completeness.

  3. Enable proposed and install overlayroot to show fix.
      $ rel=$(lsb_release -sc)
      $ echo "deb http://archive.ubuntu.com/ubuntu $rel-proposed main" |
      $ sudo tee /etc/apt/sources.list.d/proposed.list
      $ sudo apt update -qy && sudo apt install -qy overlayroot </dev/null
      $ dpkg-query --show overlayroot
      overlayroot 0.27ubuntu1.3

  4. configure overlayroot to use tmpfs with recurse=1 and reboot.

     $ echo "overlayroot=tmpfs:recurse=1" | sudo tee /etc/overlayroot.local.conf
     $ sudo reboot

  4. log back in and look around

     a.) check that 'overlay' is in /proc/mounts for / and /mnt
         $ awk '$3 ~ /overlay/ { print $0 }' /proc/mounts
         overlayroot / overlay rw,relatime,lowerdir=/media/root-ro,upperdir=/media/root-rw/overlay,workdir=/media/root-rw/overlay-workdir/_ 0 0
         /media/root-ro/mnt /mnt overlay rw,relatime,lowerdir=/media/root-ro/mnt,upperdir=/media/root-rw/overlay/mnt,workdir=/media/root-rw/overlay-workdir/mnt 0 0

     b.) check that /mnt is set as overlay
         $ df -h /mnt
         Filesystem          Size  Used Avail Use% Mounted on
         /media/root-ro/mnt 1000M  1.3M  999M   1% /mnt

     c.) check /run/initramfs/overlayroot.log
         $ grep success /run/initramfs/overlayroot.log
         [success]: configured root with 'tmpfs:recurse=1' using overlay per /dev/vda1/etc/overlayroot.local.conf

  [Regression Potential]
  Previously almost any scenario with multiple mount points would cause
  failure to boot.  This change does improve the situation, and is not likely
  to regress it.

  [Other Info]

  === End SRU Template ===

  to reproduce, boot a yakkety disk1.img. this is a uefi image, so it
  has multiple partitions.

  sudo sh -c 'echo overlayroot=tmpfs > /etc/overlayroot.local.conf &&
  reboot'

  you'll see it hang. the reason i believe is the info written to
  /etc/fstab for the non-root mounts does not include workdir
  information.

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