[OpenIndiana-discuss] Grub2 re-install

Axelle Apvrille axelle_apvrille at yahoo.fr
Thu Aug 29 08:06:30 UTC 2013


Hi list,

I fail to re-install Grub on a host, and don't understand what I'm doing
wrong.

I have:
disk c4d0:
partition 1 ntfs windows xp
partition 2 solaris (actually with OpenSolaris on it, not OI), bootable
partition 3 fat32
partition 4 fat32

disk c4d1:
partition 1 btrfs linux
partition 2 extended
partition 5 swap for linux

Initially, I only had a multiboot windows + opensolaris (Grub from
OpenSolaris). I installed Linux on a second disk, and it failed to
correctly install grub so that now my MBR is corrupt and I can't boot
anything :(

I booted on a OpenIndiana Live CD. And then I do:
sudo -s
# zpool -f import rpool
# zfs set mountpoint=/a rpool
# installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rsdk/c4d0s0

It warns me it's going to overwrite the MBR (which is what I want), and
tells me it successfully writes everything (stage1, stage2).

But of course, when I reboot, I still have that corrupt grub from Linux...
:(

Please help!

- I am expecting to install grub on the first sectors of my disk 1 (c4d0)
and have a multiboot for all 3 OS. Intuitively, I would have thus written
installgrub -m ... /dev/rdsk/c4d0p0, but installgrub does not allow that.
It absolutely wants it on slice 0, which refers to the entire solaris
partition (which by the way is flagged as bootable -- via fdisk).
Is the problem that corrupt mbr of linux indeed stays at the beginning of
c4d0p0? how can I fix that?

- I don't really understand why I have to import rpool. It makes sense if I
were reading stage1 and stage2 of the disk (installgrub -m
/a/boot/grub/stage1 ...), but actually, I do not have a stage1 on my disk
at that location! So, I actually use the stage1 and stage2 of the liveCD
(and copied them to /a/boot/grub...)

Any other idea to troubleshoot this issue appreciated.

Best regards,
Axelle


More information about the OpenIndiana-discuss mailing list