[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)
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  Edit
Everyone can see this information.

Other bug subscribers