greenfinch
2008-Jun-27 15:05 UTC
[syslinux] SYSLINUX GRUB and booting logical partitions on USB drive
Hello, I cannot boot with GRUB and SYSLINUX from a logical partition on my USB drive. Here is the test setup: - 4GB Flash drive with the following partitions: sdb1 Primary fat32 ~ 800MB sdb2 Primary fat32 ~ 800MB sbd3 Primary fat32 ~ 800MB sdb4 Extended partition sdb5 Logical partition ~ 800MB sdb6 Logical partition ~ 600MB - Grub files were copied to /dev/sdb1/boot/grub (Stage files, etc.) - Grub was installed in the MBR of the USB flash drive. - Damn Small Linux (DSL) was downloaded an unzipped to the root of sdb5 (zip-file dsl-4.2.5-embedded) - sdb5 was made bootable by: syslinux -sf /dev/sdb5 (SYSLINUX version 3.63) - Now the USB flash drive is bootable - After reset, the grub prompt appeared, and I tried to boot from sdb5: root (hd0,5) rootnoverify (hd0,5) chainloader --force (hd0,5)+1 boot Boot error --- My question is, why there is the boot error? I've successfully tried the following: - Booting DSL from sdb1, sdb2, sdb3 without any problems -> OK. - Booting a 2nd GRUB, installed in the logical partition sdb5 -> OK. - Booting DSL installed on sdb5, by using the kernel-booting of GRUB (without chainloader) Where is the limitation? Is is SYSLINUX or GRUB? Maybe someone can help me to be able to chainload SYSLINUX from an logical partition. Thank you for your answers.
H. Peter Anvin
2008-Jun-27 17:46 UTC
[syslinux] SYSLINUX GRUB and booting logical partitions on USB drive
greenfinch wrote:> > Where is the limitation? > Is is SYSLINUX or GRUB? > Maybe someone can help me to be able to chainload SYSLINUX from an > logical partition. >Last I checked, Grub passed an invalid partition offset in DS:SI when chainloading a logical partition. Syslinux is partition-table-format agnostic, and uses the information passed into it. However, the format of DOS partition tables are such that anything that tries to boot a logical partition (keep in mind that MS-DOS couldn't boot logical partitions at all) has to adjust the partition offset; the stuff that comes off the disk is relative to the extended partition that surrounds the logical partition, but the chainloaded operating system has no way of knowing that. -=hpa
Possibly Parallel Threads
- Dual booting centos 4.1 and Solaris 10 express build 15
- Patch for GRUB Legacy to chainload SYSLINUX from logical partitions
- Booting problem with compiled xen 3.3.0/linux-2.6.18.8-xen.hg source
- problem configuring grub for a dual-boot
- Booting C 6.0 from C 5.7