grub2 installer modifies grub 0.97 menu.lst incorrectly and fails to chainload grub2
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
grub2 (Ubuntu) |
Fix Released
|
Medium
|
Andy Whitcroft | ||
Jaunty |
Fix Released
|
Medium
|
Unassigned |
Bug Description
Binary package hint: grub2
Discovered on Jaunty and Karmic. After installing grub2, it modifies the currently installed grub 0.97 menu.lst configuration file to chainload grub2 to allow one to test grub2 before committing to it as the default boot loader.
However, grub2 modifies the menu.lst entry and adds the incorrect command to select the partition to boot from to chain load grub2. It uses:
root 7cce46fe-
and should be:
uuid 7cce46fe-
I suspect it was originally correct before grub 0.97 has UUID support added.
Attached: png of the failed boot, and a png showing the erroneous partition selection command.
===
SRU Justification for Jaunty
Impact: when upgrading from grub to grub2 selecting the chainload mode (the default) the user ends up with an unbootable legacy configuration. They can edit their entries and get booted but the fix is not at all obvious to the naieve user.
Fix Description: Correctly use the uuid or root keywords based on the current type of the 'groot' specified. We pick up the selector directly from grub to ensure it behaves in the same manner.
Patch: http://
Risks: we do modify the legacy configuration script converter, which might introduce other errors. However the current output is completly unbootable.
TEST CASE: install grub2 selecting chainload on a system which uses 'groot <uuid>', reboot and find entries have 'root <uuid>' and will not boot producing 'Unknown device specifier' errors.
description: | updated |
Changed in grub2 (Ubuntu Jaunty): | |
assignee: | nobody → Andy Whitcroft (apw) |
status: | New → In Progress |
Changed in grub2 (Ubuntu Jaunty): | |
importance: | Undecided → Medium |
Changed in grub2 (Ubuntu Jaunty): | |
status: | In Progress → Triaged |
assignee: | Andy Whitcroft (apw) → nobody |
tags: |
added: verification-done removed: verification-needed |
As this will scare the living daylights out of someone migrating to grub2 this is pretty important.