automatic partitioning broken on Intel Macs

Bug #538536 reported by Emmet Hikory on 2010-03-13
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
parted (Ubuntu)
High
Colin Watson
Lucid
High
Colin Watson
partman-auto (Ubuntu)
High
Colin Watson
Lucid
High
Colin Watson
partman-auto-lvm (Ubuntu)
Medium
Colin Watson
Lucid
Medium
Colin Watson

Bug Description

Binary package hint: debian-installer

Lucid server install (20100313 amd64 image) , on machine with native GPT disk failed to install with Guided Partitioning (whole disk). Logs shall be attached.

Emmet Hikory (persia) wrote :
Emmet Hikory (persia) wrote :
Emmet Hikory (persia) wrote :

As discussed, the system had gotten into a very strange state before the prior logs were attached. I booted the OS X installer disc, "erased" the drive, and re-ran debian-installer. I ran the manual partitioner to verify the format was similar to that I experienced in my first attempt to install, which it was (so the system should be restorable to this point repeatedly). I then tried to reformat the hfs+ parition for LVM, which failed. More logs attached.

Emmet Hikory (persia) wrote :
Colin Watson (cjwatson) on 2010-03-13
summary: - Guided Partitioning (full disk) did not work with native GPT disk
+ automatic partitioning broken on Intel Macs
Changed in partman-auto-lvm (Ubuntu):
status: New → Triaged
Changed in parted (Ubuntu):
status: New → Triaged
Changed in parted (Ubuntu Lucid):
importance: Undecided → High
Changed in partman-auto-lvm (Ubuntu Lucid):
importance: Undecided → Medium
assignee: nobody → Colin Watson (cjwatson)
Changed in parted (Ubuntu Lucid):
milestone: none → ubuntu-10.04-beta-1
assignee: nobody → Colin Watson (cjwatson)
Changed in partman-auto-lvm (Ubuntu Lucid):
milestone: none → ubuntu-10.04-beta-1
Changed in debian-installer (Ubuntu Lucid):
status: New → Confirmed
importance: Undecided → High
Colin Watson (cjwatson) wrote :

I've identified two distinct problems here, which I would like to fix for beta-1 if at all possible. I'm leaving the debian-installer task as Confirmed for the time being because I'm not absolutely sure I've got all the pieces, but the ones I have identified are high-value.

The first problem is that, when we create an Apple-specific synced MBR for a GPT label which contains a bios_grub partition, the corresponding MBR partition table entry is not given the 0xEE partition type. This means that the Linux kernel will refuse to recognise this as a valid GPT label, completely breaking installation. I believe this is an easy fix in parted.

The second problem is one I noted in a comment in partman-auto a while back: the automatic label detection that decides whether we need to create a bios_grub partition during automatic partitioning does not work with partman-auto-lvm. This should be a matter of making sure that we're in an appropriate subdirectory of /var/lib/partman/devices/ before calling decode_recipe.

Eugene San (eugenesan) wrote :

Should I mention that issue also affects non-automatic and non-LVM partitioning, using named above tools.
Refer to https://bugs.launchpad.net/bugs/538100 for more details.

Colin Watson (cjwatson) wrote :

Yeah, I know. I discussed this with Emmet on IRC although apparently wasn't particularly clear in my comment.

In fact, on further testing I see that a stray & introduced during the parted 2.1 merge means that we're writing out some basically completely random memory (well, within libparted's heap, but that's about as far as it goes) as the synced MBR! Removing that makes things rather happier. I'll make every effort to get at least this part fixed in beta-1.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package parted - 2.2-1ubuntu3

---------------
parted (2.2-1ubuntu3) lucid; urgency=low

  * gptsync.patch (update): Set OSType 0xee (same as EFI System Partitions)
    for bios_grub partitions, since otherwise the Linux kernel won't
    recognise us as GPT on Apple systems. Also remove a stray & which
    completely broke GPT syncing on such systems (LP: #538536).
 -- Colin Watson <email address hidden> Mon, 15 Mar 2010 00:41:43 +0000

Changed in parted (Ubuntu Lucid):
status: Triaged → Fix Released
Colin Watson (cjwatson) wrote :

LVM autopartitioning is working for me now on a simulated Apple system, but it's only by a freakish cancelling out of bugs. I think it can stay as it is for beta-1, but I want to clean this up for beta-2.

affects: debian-installer (Ubuntu Lucid) → partman-auto (Ubuntu Lucid)
Changed in partman-auto (Ubuntu Lucid):
assignee: nobody → Colin Watson (cjwatson)
milestone: none → ubuntu-10.04-beta-2
status: Confirmed → Triaged
Changed in partman-auto-lvm (Ubuntu Lucid):
milestone: ubuntu-10.04-beta-1 → ubuntu-10.04-beta-2
Emmet Hikory (persia) wrote :

Install attempted with the 20100315 server CD, from the system state left after the last install attempt. Process was to attempt a manual LVM install, which failed. Then to attempt guided LVM install, which succeeded in completing the installation, but did not result in a bootable system.

Emmet Hikory (persia) wrote :
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package partman-auto-lvm - 33ubuntu3

---------------
partman-auto-lvm (33ubuntu3) lucid; urgency=low

  * Don't force the envelope partition to be primary. The consequence of
    this change should be that /boot ends up at the start of the disk again,
    where it belongs.
  * Ensure that we're in an appropriate subdirectory of $DEVICES when
    decoding the recipe (LP: #538536).
 -- Colin Watson <email address hidden> Wed, 31 Mar 2010 16:08:04 +0100

Changed in partman-auto-lvm (Ubuntu Lucid):
status: Triaged → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package partman-auto - 89ubuntu4

---------------
partman-auto (89ubuntu4) lucid; urgency=low

  * Ignore $iflabel{ } specifiers if we aren't in a subdirectory of $DEVICES
    when decoding the recipe (LP: #538536).
 -- Colin Watson <email address hidden> Wed, 31 Mar 2010 16:12:08 +0100

Changed in partman-auto (Ubuntu Lucid):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers