Just want to report that I've successfully boot from floppy with GRUB 1.92 on a GPT partitioned 2.18TB system.

The system is running CentOS 4.2 with latest updates and the RAID is running with 3WARE 9550SX with 8 hard drives/RAID50 configuration.

Here is the partition information:

# parted /dev/sda print
Disk geometry for /dev/sda: 0.000-2288754.000 megabytes
Disk label type: gpt
Minor    Start       End     Filesystem  Name                  Flags
1          0.031    101.972  ext3                              boot
2        101.975   4102.536  ext3
3       4102.537   6149.876  linux-swap
4       6149.876 2288753.983  ext3

GRUB v1.92 source code is downloaded and compile with yacc links to bison (otherwise the compilation will fail).

grub-install script seems to have an typo.  It looks like in line 213 of util/i386/pc/grub-install.in, `--modules' should be '--modules' (the back tick should be just a single quotation mark).

Here is the contents of /boot/grub (it has legacy grub because I don't want to remove it until I'm sure that v1.92 works with GPT):
ls /boot/grub/
acorn.mod       fat.mod           kernel.img         splash.xpm.gz
affs.mod        fat_stage1_5      _linux.mod         stage1
amiga.mod       ffs_stage1_5      linux.mod          stage2
apple.mod       font.mod          loopback.mod       sun.mod
boot.img        fshelp.mod         ls.mod             terminal.mod
boot.mod        fs.lst            minix.mod          terminfo.mod
cat.mod         gpt.mod           minix_stage1_5     test.mod
_chain.mod      grub.cfg          moddep.lst         timeout.mod
chain.mod       gzio.mod          _multiboot.mod     ufs2_stage1_5
cmp.mod         halt.mod          multiboot.mod      ufs.mod
command.lst     hello.mod         normal.mod         vbeinfo.mod
configfile.mod   help.mod          pc.mod             vbe.mod
core.img        hfs.mod           play.mod           vbetest.mod
default.mod     hfsplus.mod       pxeboot.img        vesafb.mod
device.map      iso9660.mod       reboot.mod          vga.mod
diskboot.img    iso9660_stage1_5  reiserfs_stage1_5  vstafs_stage1_5
e2fs_stage1_5   jfs.mod           search.mod         xfs.mod
ext2.mod        jfs_stage1_5      sfs.mod            xfs_stage1_5

Here is the script that I use to create bootable floppy that supports GPT:


#This will create a GRUB2 boot floppy that supports GPT system:

grub-mkimage -d /boot/grub -v -o /boot/grub/core.img ls ext2 gpt pc linux _linux boot chain configfile default fshelp help
mke2fs /dev/fd0
mount -o loop -t ext2 /dev/fd0 /mnt/floppy/
mkdir -p /mnt/floppy/boot/grub
cp /boot/grub/boot.img /boot/grub/core.img /boot/grub/*.mod /mnt/floppy/boot/grub
cp -f /boot/grub/grub.cfg /mnt/floppy/boot/grub
grub-mkdevicemap -m /boot/grub/device.map
grub-setup -d /mnt/floppy/boot/grub -v -r '(fd0)' -m /boot/grub/device.map '(fd0)'
umount /mnt/floppy

And here is my configuration file:

# grub2 configuration file

linux (hd0,1)/vmlinuz-2.6.9-22.0.2.ELsmp ro root=/dev/sda2
initrd (hd0,1)/initrd-2.6.9-22.0.2.ELsmp.img

And the device map:

# cat /boot/grub/device.map
(fd0)   /dev/fd0
(hd0)   /dev/sda

It turns out that in regular PC partition table (parted msdos label) (hd0,0) becomes (hd0,1) if you have GPT table partition.

Thanks to all the GRUB developers for this great software!!!  Finally we have a boot loader that supports GPT!!!!

Let me know if anyone need any other information to get the GPT partitioned system booted from floppy.


ps:  I'm adding an entry in the wiki.  Please let me know if it's not appropriate.
Grub-devel mailing list

Reply via email to