[Bug 1237519] Re: Grub2 fails to install to non-standard device path
Launchpad Bug Tracker
1237519 at bugs.launchpad.net
Fri Dec 13 18:48:48 UTC 2013
This bug was fixed in the package grub2 - 2.00-22
---------------
grub2 (2.00-22) unstable; urgency=low
* Backport from upstream:
- On Linux, read partition start offsets from sysfs if possible
(LP: #1237519).
- Fix sector number when writing to non-512B disks (LP: #1253443).
* Regularise indentation of "recordfail" in /etc/grub.d/10_linux.
-- Colin Watson <cjwatson at debian.org> Thu, 12 Dec 2013 01:24:11 +0000
** Changed in: grub2 (Ubuntu)
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/1237519
Title:
Grub2 fails to install to non-standard device path
Status in “grub-installer” package in Ubuntu:
Fix Released
Status in “grub2” package in Ubuntu:
Fix Released
Status in “grub-installer” source package in Precise:
Fix Committed
Status in “grub2” source package in Precise:
Fix Committed
Bug description:
SRU justification:
[Impact] Installation impossible on FusionIO disks; furthermore the method used to identify partitions in GRUB relies on an obsolete ioctl which doesn't properly handle large disks.
[Test Case] We have a remotely-accessible server on which we can do straight-through installation tests on the hardware in question.
[Regression Potential] The device handling changes are boring and straightforward. The work to avoid the obsolete ioctl should be regression-tested on some other hardware (it doesn't matter too much which) to make sure it still works there; although I've already done this on my laptop.
Original report follows:
Running the Ubuntu Server installer in UEFI mode fails to install the
Grub bootloader. Attached is the syslog output that shows grub-
installer failed with error code 1. I have seen this on Ubuntu 12.04,
12.10, and 13.04. I believe the problem is that Grub is looking for
device paths that match something like '/dev/sdX' or '/dev/hdX' but
the device I am installing to does not follow that convention.
The reason I believe it is looking for specific devices paths is if,
during installation after my device has been partitioned, I escape
into the shell (using alt+f2) and create a hard link from my device
name and its partitions, to a device name that matches 'sdX', then
Grub begins to install. For example, if my device name is /dev/fioa
and has partitions /dev/fioa1, /dev/fioa2, and /dev/fioa3, I map those
partitions to something like /dev/sdc, /dev/sdc1, /dev/sdc2, and
/dev/sdc3 and continue with the installation onto /dev/sdc. By doing
this, Grub will begin to install on the device.
Possibly useful background information:
- The operating system and all files install just fine without
problem, it is the last step of installing the bootloader that fails.
- In order to have the device recognized during installation, I either
need to run 'insmod' from a terminal or we have to manually modify
initrd to include our .ko file because it is not a standard disk
driver. Using either method does not affect the outcome of Grub2
failing to install.
- Even though grub begins to install after creating the hard links
mentioned above, it does not finish successfully due to the linked
paths (e.g. /dev/sdc) not being in the device map. That is a separate
issue, but may be expected behavior and would likely need a separate
ticket if it needed to be reported at all.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub-installer/+bug/1237519/+subscriptions
More information about the foundations-bugs
mailing list