Bug#839894: installation-report: Jessie installer fails to install GRUB on a large JBOD system
On Thu, Oct 06, 2016 at 07:45:36AM +0000, Jonathan Quick wrote:
> Package: installation-reports
> Version: 2.58
> Severity: important
>
> Dear Maintainer,
>
> Whilst installing from a (Jessie) 8.6 netboot installer the GRUB installation step failed, leaving the system unbootable.
>
> -- Package-specific info:
>
> Boot method: network
> Image version: 20150422+deb8u4+b1/images/netboot/debian-installer/amd64/linux
> Date: 6 October 2016 08:30 SAST
>
> Machine: SuperMicro SuperServer
> Partitions: <df -Tl will do; the raw partition table is preferred>
> Device Boot Start End Sectors Size Id Type
> /dev/sdak1 2048 119883775 119881728 57.2G 83 Linux
> /dev/sdak2 119885822 125044735 5158914 2.5G 5 Extended
> /dev/sdak5 119885824 125044735 5158912 2.5G 82 Linux swap / Solaris
>
> Base System Installation Checklist:
> [O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it
>
> Initial boot: [O]
> Detect network card: [O]
> Configure network: [O]
> Detect CD: [ ]
> Load installer modules: [O]
> Clock/timezone setup: [O]
> User/password setup: [O]
> Detect hard drives: [O]
> Partition hard drives: [O]
> Install base system: [O]
> Install tasks: [O]
> Install boot loader: [E]
> Overall install: [O] after recovery via rescue mode
>
> Comments/Problems:
>
> This was an installation of only the standard system plus a SSH server - no desktop.
> Generally the installation went smoothly apart from the boot-loader step which failed with no information on why.
> Trying a full desktop install gave the same problem (after a longer wait of course).
>
> Using the rescue mode (once I realised out that shells in the text mode intaller didn't work and switched to the graphical
> one) I discovered that the grub2 package and its dependencies had not been installed. Once I had installed those packages,
> I was then able to use 'grub-install sdak' and 'update-grub' to get things going. Only after doing this did the option to
> reinstall GRUB appear in the rescue menu. Now that GRUB is installed, the machine boots fine into a working system.
>
> Note this system has 36 4TB hard disk drives attached via a HBA (mpt3sas) and one 64GB SSD attached to the motherboard SATA
> controller to which I was actually installing, hence the '/dev/sdak' disk designation.
>
> A test installation using a (Wheezy) 7.11 installer ran just fine without showing this problem, but didn't see the HBA
> and its attached disks.
Sounds like the regex for matching valid disks in the installer handling
grub install isn't expecting 2 letter names, which is certainly an unusual
case, and if your system had put the target disk first rather than last,
you wouldn't have had a problem either. Of course if wheezy didn't see
the other disks that would have solved the problem for it.
Probably this part of grub-installer is the problem:
case $prefix in
/dev/md)
disc_offered_devfs="$bootfs"
;;
/dev/mapper)
disc_offered_devfs="$bootfs"
;;
/dev/[hsv]d[a-z0-9]|/dev/xvd[a-z]|/dev/cciss/c[0-9]d[0-9]*|/dev/ida/c[0-9]d[0-9]*|/dev/rs/c[0-9]d[0-9]*|/dev/mmcblk[0-9]|/dev/nvme[0-9]*n[0-9]*|/dev/ad[0-9]*|/dev/da[0-9]*)
disc_offered_devfs="$prefix"
;;
*)
disc_offered_devfs=$(echo "$bootfs_nodevfs" | sed "s:\(.*\)/.*:\1/disc:")
;;
esac
/dev/[hsv]d[a-z0-9] will match /dev/sda through /dev/sdz, but NOT /dev/sdak.
If it added /dev/sd[a-z][a-z] as well, it should work for you.
So maybe:
/dev/[hsv]d[a-z0-9]|/dev/sd[a-z][a-z]|/dev/xvd[a-z]|/dev/cciss/c[0-9]d[0-9]*|/dev/ida/c[0-9]d[0-9]*|/dev/rs/c[0-9]d[0-9]*|/dev/mmcblk[0-9]|/dev/nvme[0-9]*n[0-9]*|/dev/ad[0-9]*|/dev/da[0-9]*)
Not sure if other places need fixing too.
--
Len Sorensen
Reply to: