[Xenial] root=PARTUUID=<partuuid> is not recognized as valid syntax.

Bug #1531928 reported by Manoj Iyer
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
initramfs-tools (Ubuntu)
Fix Released
High
Andy Whitcroft

Bug Description

As per kernel source init/do_mounts.c root=PARTUUID=<partuuid> is acceptable format to pass root= option on command line to boot a system. But due to a bug in initramfs-tools this syntax does not work
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=801154

/*
 * Convert a name into device number. We accept the following variants:
 *
 * 1) <hex_major><hex_minor> device number in hexadecimal represents itself
 * no leading 0x, for example b302.
 * 2) /dev/nfs represents Root_NFS (0xff)
 * 3) /dev/<disk_name> represents the device number of disk
 * 4) /dev/<disk_name><decimal> represents the device number
 * of partition - device number of disk plus the partition number
 * 5) /dev/<disk_name>p<decimal> - same as the above, that form is
 * used when disk name of partitioned disk ends on a digit.
 * 6) PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF representing the
 * unique id of a partition if the partition table provides it.
 * The UUID may be either an EFI/GPT UUID, or refer to an MSDOS
 * partition using the format SSSSSSSS-PP, where SSSSSSSS is a zero-
 * filled hex representation of the 32-bit "NT disk signature", and PP
 * is a zero-filled hex representation of the 1-based partition number.
 * 7) PARTUUID=<UUID>/PARTNROFF=<int> to select a partition in relation to
 * a partition with a known unique id.
 * 8) <major>:<minor> major and minor number of the device separated by
 * a colon.
 *

Please merge the patch from debian in xenial to support PARTUUID in initramfs.

Andy Whitcroft (apw)
Changed in initramfs-tools:
assignee: nobody → Andy Whitcroft (apw)
status: New → In Progress
affects: initramfs-tools → initramfs-tools (Ubuntu)
Changed in initramfs-tools (Ubuntu):
milestone: none → ubuntu-16.01
importance: Undecided → High
Andy Whitcroft (apw)
Changed in initramfs-tools (Ubuntu):
milestone: ubuntu-16.01 → ubuntu-16.02
Revision history for this message
Manoj Iyer (manjo) wrote :

I have tested the initramfs-tools in ppa:apw/ubuntu/initramfs-tools and I can report that boot with root=PARTUUID=<partuuid> works.

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (4.2 KiB)

This bug was fixed in the package initramfs-tools - 0.122ubuntu1

---------------
initramfs-tools (0.122ubuntu1) xenial; urgency=medium

  * Merge with Debian v0.122, known to fix:
    - root=PARTUUID=<partuuid> is not recognized as valid syntax
      (LP: #1531928)
  * Merge with Debian v0.122 (LP: #1541508), remaining changes:
    - Set takeover=1 in update-initramfs.
    - Drop hooks/keymap and associated code; console-setup takes care of
      this in Ubuntu.
    - Add a new 'fixrtc' script that tries to set the system clock forward
      based on the last mount time of the root disk; without this kludge,
      systems without a working RTC will end up in a perpetual reboot loop.
    - Set hostname at boot, for the benefit of mdadm autoassembly.
    - Don't display "Loading, please wait..." message when 'quiet' is in
      /proc/cmdline.
    - Ignore errors from iscan and iscan-data hooks.
    - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set
      to something other than "n", the script will not be included.
    - Restore the framebuffer hook and script, copying KMS and other
      framebuffer drivers into the initramfs, but make them optional; you
      need to set FRAMEBUFFER=y for these to be included.
    - Add hwaddr= alias for BOOTIF= for compatibility.
    - When receiving "recovery" on cmdline, start upstart with --startup-
      event=recovery (LP: #575469)
    - Make /etc/mtab a symlink to /proc/mounts on startup, since e.g.
      current ntfs-3g doesn't work otherwise.
    - Mount /dev with the default tmpfs size rather than sourcing udev.conf.
    - Automatically blacklist vga16fb when vga= or video= specified on
      kernel command-line.
    - Add Hyper-V paravirtualised device drivers to the initramfs to allow
      booting of stock images in a Hyper-V guest. (LP: #917135)
    - Add mountroot failure support, to allow meaningful messages when no
      root device can be found.
    - Retain netboot= compatibility option.
    - Breaks: mountall (<< 2.0~)
    - Retain cryptopts= compatibility option.
    - Use busybox-initramfs for Depends.
    - Add vfat modules to the initramfs.
    - Maintain compatibility with pre- /run configurations
    - Use gzip from busybox instead of klibc. Depend on busybox-initramfs
      (>= 1:1.13.3-1ubuntu5) to ensure that we have it.
    - Sync the mount options for /run from /lib/init/fstab (LP: #1152744)
    - Increase rootdelay to 180s on powerpc/ppc64/ppc64el (LP: #1326199)
    - fixrtc: wait for udev to settle to expose device symlinks
    - fixrtc: handle hwclock -s failures safely
    - fixrtc: support busybox, handle last mount time on system partition,
      expose fs create time (LP: #1420473)
    - fixrtc: avoid using xargs, wait-for-root before examining
    - fixrtc: suppress /dev/ram as a root when using systempart (LP:
      #1443329)
    - ppc64el: enable PowerPC NX Crypto Coprocessor
    - resume: only resume when the partition contains a resume image
    - resume: announce resume via plymouth if available
    - Don't load keymaps unless we're loading a framebuffer; but set the
      keymap before giving a root shell.
    - Add new initramfs-tools-bin pac...

Read more...

Changed in initramfs-tools (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.