Thu 28 Dec 2006 08:14:33 PM UTC, comment #2:
Hi,
I see the same with MSI K7N2 Delta-L motherboard and 512MB USB flash drive. Used GNU GRUB 0.97 from Knoppix 5.0.1 Live DVD. Copied GRUB files to flash drive, there is one FAT16 primary partition created on the flash drive. Under Knoppix "grub" command it's recognized as (hd1) and /dev/sda i.e. as a harddisk, geometry 245/126/32 total sectors 990208. GRUB can be setup to flash MBR (hd1) including stage 1.5, and without stage 1.5 also to flash Boot record (hd1,0).
The MBR copy works well e.g. on hp nc6000 notebook. Using "Boot from USB harddisk" BIOS option on this laptop, GRUB boots up and is able to boot Windows from internal harddrive, or GParted or Memtest from USB drive, etc. In this GRUB shell the flash drive is recognized as (hd0). The copy of GRUB in Boot sector is not used in this scenario (verified by having syslinux in Boot record and still GRUB came up).
Now the K7N2 motherboard BIOS has 3 options for booting USB: USB-FDD, USB-ZIP, USB-HDD. If GRUB is just in MBR of the flash drive, nothing happens with any of the options. If GRUB is setup to the Boot record of the partition on flash drive, and USB-ZIP is selected, GRUB gets as far as printing "GRUB" and then freezes. So part of the Boot sector code is run.
This is consitent with fact that writing Boot sector of the flash drive with "syslinux /dev/sda1" leads to fully working syslinux booting (works only with USB-ZIP BIOS option but well), which can be used e.g. for booting GParted stored on the flash drive. So there is a way to boot from USB on this motherboard.
Next try was to boot GRUB off a floppy with USB key attached. In this case GRUB detects the attached USB flash drive as (fd1). Geometry given for it is the classic floppy geometry 80/2/18 total sectors 2880. Using e.g. "cat (fd1)+1" it can be verified we're indeed reading from the flash drive. And the first sector we get is not MBR but the boot sector of the primary partition.
At this moment is hard to say what way this BIOS presents the flash drive when it boots off it using USB-ZIP option.
It seems reasonable that BIOS still presents it as "floppy", and the first sector it gives out is Boot record of the partition. Perhaps GRUB needs to check better for the actual geometry of such "floppy" to boot up successfully as syslinux does.
|