[Bug 1377308] Re: booting cloud image without initramfs broken

Scott Moser smoser at ubuntu.com
Tue Oct 21 18:14:53 UTC 2014


a bit more info. on ppc64el at least, you can boot with 'rw' as a kernel
parameter and fix this. thats less than ideal, but it adds an
interesting piece of information. previously i just assumed we were
blocked in a hang where / was mounted rw but /run was not yet mounted.
it is the other way, though, in that '/run' gets mounted and we're
blocked on /.


** Description changed:

  Booting without a initramfs was broken by the cloud-init change for
  bug 1353008 (http://pad.lv/1353008).
  
  This affects arm guests where a bootloader is not used that would load
  kernel and initramfs.
  
  There are 2 workarounds:
  a.) remove the offensive code
    sudo mount-image-callback ubuntu.img -- \
       sh -c 'f="$MOUNTPOINT/etc/init/cloud-init-local.conf";
              sed -e "/^start on/s/ and mounted .*//" -i.dist $f &&
              diff -u $f.dist $f'
  
  b.) register and boot with an initramfs
    This is done by
     i.) getting the initramfs out of the image:
       sudo mount-image-callback ubuntu.img -- \
         sh -c 'cp $MOUNTPOINT/boot/initrd* . && chmod ugo+r initrd*'
     ii.) upload the initramfs to glance
       glance image-create --name=ubuntu-ramdisk --public \
          --container-format ari --disk-format ari < initrd*
       record the ramdisk id
     iii.) register with --property ramdisk_id=$RAMDISK_ID
       normally for "ami" style images on arm, the user had been
       uploading with --property kernel_id=<kernel_id>.
       now, you need to upload with:
         glance image-create --name="$NAME" \
            --public --container-format ami --disk-format ami \
            --property "kernel_id=$KERNEL_ID" \
            --property "ramdisk_id=$RAMDISK_ID" \ < ubuntu.img
  
+  c.) register 'kernel command line' to include 'rw'.
+      glance image-create .... --property kernel_args="root=/dev/vda rw"
+ 
  Related bugs:
-  * bug 1031065:cloud-init-nonet runs 'start networking' explicitly 
-  * bug 643289: [mountall] idmapd does not starts to work after system reboot
-  * bug 1353008:[cloud-init] MAAS Provider: LXC did not get DHCP address, stuck in "pending" 
- 
+  * bug 1031065:cloud-init-nonet runs 'start networking' explicitly
+  * bug 643289: [mountall] idmapd does not starts to work after system reboot
+  * bug 1353008:[cloud-init] MAAS Provider: LXC did not get DHCP address, stuck in "pending"
  
  ProblemType: Bug
  DistroRelease: Ubuntu 14.04
  Package: cloud-init 0.7.5-0ubuntu1.2
  ProcVersionSignature: User Name 3.13.0-36.63-generic 3.13.11.6
  Uname: Linux 3.13.0-36-generic aarch64
  ApportVersion: 2.14.1-0ubuntu3.4
  Architecture: arm64
  Date: Thu Jan  1 00:02:09 1970
  Ec2AMI: ami-00000007
  Ec2AMIManifest: FIXME
  Ec2AvailabilityZone: nova
  Ec2InstanceType: m1.5GB
  Ec2Kernel: aki-00000005
  Ec2Ramdisk: ari-00000003
  PackageArchitecture: all
  ProcEnviron:
   TERM=screen
   PATH=(custom, no user)
   XDG_RUNTIME_DIR=<set>
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  SourcePackage: cloud-init
  UpgradeStatus: No upgrade log present (probably fresh install)
  mtime.conffile..etc.init.cloud.init.local.conf: 2014-10-03T19:49:16.813801

-- 
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to cloud-init in Ubuntu.
https://bugs.launchpad.net/bugs/1377308

Title:
  booting cloud image without initramfs broken

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



More information about the Ubuntu-server-bugs mailing list