[syslinux] Problem booting from CF/SD cards and USB Flashdrives using syslinux

c.lee111 at gmail.com c.lee111 at gmail.com
Sun Aug 26 07:57:08 PDT 2007


On Fri, 24 Aug 2007, H. Peter Anvin wrote:

> No, I'm not saying that at all.
> 
> ANY bootloader needs LBA/EBIOS support to access more than 1024
> cylinders.  Period.  Anyone who tells you anything else is lying.  If
> you're using EBIOS, then there is no geometry involved in any way, so
> there is no possibility of anything in the system getting confused.
> 
> SYSLINUX 3.00+ will use EBIOS if it is available at boot time.
> 
> If EBIOS is *not* available, SYSLINUX will query the BIOS at boot time
> for what the BIOS thinks the geometry should be, and will internally
> convert linear block addresses to CHS addresses, and pass them to CBIOS.
>  It is the CBIOS interface which has the 1024-cylinder limitation.
> Remember, at this point we've already tried talking EBIOS, and gotten
> rejected, so we don't have any alternative.
> 
> What appears to have happened with some BIOS vendors when it comes to
> the USB booting code is that they have internally gotten confused, and
> reports one geometry to the CBIOS geometry query call (INT 13h AH=08h)
> but somehow translate the geometry differently.  I don't have to explain
> to you the sheer degree of incompetence and lack of testing that that
> implies, but nevertheless appears to be a reality[*].  Part of the
> problem appears to be misguided attempts at compatibility which involves
> BIOS reading the MBR and partition table and trying to adjust itself to
> match; this is my best guess why formatting with a zipdrive geometry
> (H:S = 64:32) appears to work on some systems.
> 
> 	-hpa
> 
> [*] To be fair, I am limited largely by reports, since I don't have a
> specimen.  My local systems either all boot from USB just fine, or fail
> completely.
> 
> 

So why does  SYSLINUX 3.00+ fail to detect LBA/EBIOS support on my 
machine when it is clearly being used as shown by the GRUB boot loader 
on the 1st hard drive and the Windows 98 partition on the 2nd harddrive.

******************
1st hard drive
******************

Partition Table for /dev/hda

               First       Last
 # Type       Sector      Sector   Offset    Length   Filesystem Type (ID) Flag
-- ------- ----------- ----------- ------ ----------- -------------------- ----
 1 Primary           0    78156224     63    78156225 HPFS/NTFS (07)       Boot

         ---Starting---      ----Ending----    Start     Number of
 # Flags Head Sect Cyl   ID  Head Sect Cyl     Sector    Sectors
-- ----- ---- ---- ---- ---- ---- ---- ---- ----------- -----------
 1  0x80    1    1    0 0x07  254   63 1023          63    78156162
 2  0x00    0    0    0 0x00    0    0    0           0           0
 3  0x00    0    0    0 0x00    0    0    0           0           0
 4  0x00    0    0    0 0x00    0    0    0           0           0

Disk /dev/hda: 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        4865    39078081    7  HPFS/NTFS

--- /dev/hda
Block device, size 37.27 GiB (40020664320 bytes)
GRUB boot loader, compat version 3.2, boot drive 0x81
DOS/MBR partition map
Partition 1: 37.27 GiB (40015954944 bytes, 78156162 sectors from 63, bootable)
  Type 0x07 (HPFS/NTFS)
  Windows NTLDR boot loader
  NTFS file system
    Volume size 37.26 GiB (40007729152 bytes, 78140096 sectors)

------------------------------------------------------------------

(Note:  Files created by Parted Magic, and saved in the folder
location of '/root/', exist temporarily in memory; and will be
deleted when the system is rebooted.)

Consider using either the 'Session File Saver' from the Panel's
Utilities menu to help you save this session's utility-
generated, data files to an alternate (and static) location; or
use the 'Mount Utility' (also from the Panel's Utilities menu)
to mount a target drive, and then manually copy your data file(s)
to the mounted target.

------------------------------------------------------------------
Parted Magic LiveCD/USB
copyright 2007, Patrick J. Verner
www.partedmagic.com

(file created Sun,26 August 2007 at 08:29:47)

******************
2nd hard drive
******************

Partition Table for /dev/hdb

               First       Last
 # Type       Sector      Sector   Offset    Length   Filesystem Type (ID) Flag
-- ------- ----------- ----------- ------ ----------- -------------------- ----
 1 Primary           0    20980889     63    20980890 W95 FAT32 (LBA) (0C) Boot
 2 Primary    20980890   105980804      0    84999915 Extended (05)        None
 5 Logical    20980890    41961779     63    20980890 Linux (83)           None
 6 Logical    41961780    43006004     63     1044225 Linux swap (82)      None
 7 Logical    43006005    49142834     63     6136830 Linux (83)           None
 8 Logical    49142835    61641404     63    12498570 Linux (83)           None
   Logical    61641405   105980804      0    44339400 Free Space           None
 3 Primary   105980805   126961694      0    20980890 Linux (83)           None
   Primary   126961695   156296384      0    29334690 Free Space           None

         ---Starting---      ----Ending----    Start     Number of
 # Flags Head Sect Cyl   ID  Head Sect Cyl     Sector    Sectors
-- ----- ---- ---- ---- ---- ---- ---- ---- ----------- -----------
 1  0x80    1    1    0 0x0C  254   63 1023          63    20980827
 2  0x00  254   63 1023 0x05  254   63 1023    20980890    84999915
 3  0x00  254   63 1023 0x83  254   63 1023   105980805    20980890
 4  0x00    0    0    0 0x00    0    0    0           0           0
 5  0x00  254   63 1023 0x83  254   63 1023          63    20980827
 6  0x00  254   63 1023 0x82  254   63 1023          63     1044162
 7  0x00  254   63 1023 0x83  254   63 1023          63     6136767
 8  0x00  254   63 1023 0x83  254   63 1023          63    12498507

Disk /dev/hdb: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hdb1   *           1        1306    10490413+   c  W95 FAT32 (LBA)
/dev/hdb2            1307        6597    42499957+   5  Extended
/dev/hdb3            6598        7903    10490445   83  Linux
/dev/hdb5            1307        2612    10490413+  83  Linux
/dev/hdb6            2613        2677      522081   82  Linux swap
/dev/hdb7            2678        3059     3068383+  83  Linux
/dev/hdb8            3060        3837     6249253+  83  Linux

--- /dev/hdb
Block device, size 74.53 GiB (80026361856 bytes)
DOS/MBR partition map
Partition 1: 10.00 GiB (10742183424 bytes, 20980827 sectors from 63, bootable)
  Type 0x0C (Win95 FAT32 (LBA))
  Windows 95/98/ME boot loader
  FAT32 file system (hints score 4 of 5)
    Volume size 9.994 GiB (10731257856 bytes, 327492 clusters of 32 KiB)
Partition 2: 40.53 GiB (43519956480 bytes, 84999915 sectors from 20980890)
  Type 0x05 (Extended)
  Partition 5: 10.00 GiB (10742183424 bytes, 20980827 sectors from 20980890+63)
    Type 0x83 (Linux)
    Ext3 file system
      Volume name "/"
      UUID 49D8FD71-FECA-4DCC-9338-D4367C3FE146 (DCE, v4)
      Volume size 10.00 GiB (10742181888 bytes, 2622603 blocks of 4 KiB)
  Partition 6: 509.8 MiB (534610944 bytes, 1044162 sectors from 41961780+63)
    Type 0x82 (Linux swap / Solaris)
    Linux swap, version 2, subversion 1, 4 KiB pages, little-endian
      Swap size 509.8 MiB (534601728 bytes, 130518 pages of 4 KiB)
  Partition 7: 2.926 GiB (3142024704 bytes, 6136767 sectors from 43006005+63)
    Type 0x83 (Linux)
    Ext3 file system
      UUID 1707A024-EE22-4261-AD2F-1988064378C0 (DCE, v4)
      Volume size 2.926 GiB (3142021120 bytes, 3068380 blocks of 1 KiB)
  Partition 8: 5.960 GiB (6399235584 bytes, 12498507 sectors from 49142835+63)
    Type 0x83 (Linux)
    Ext3 file system
      UUID E9CB8439-210C-4614-BD4E-ACF6EC3EB7E3 (DCE, v4)
      Volume size 5.960 GiB (6399234048 bytes, 6249252 blocks of 1 KiB)
Partition 3: 10.00 GiB (10742215680 bytes, 20980890 sectors from 105980805)
  Type 0x83 (Linux)
  Ext3 file system
    UUID 56A3A013-B03C-4100-8944-F4A5475D5D85 (DCE, v4)
    Volume size 10.00 GiB (10742214656 bytes, 10490444 blocks of 1 KiB)

------------------------------------------------------------------

(Note:  Files created by Parted Magic, and saved in the folder
location of '/root/', exist temporarily in memory; and will be
deleted when the system is rebooted.)

Consider using either the 'Session File Saver' from the Panel's
Utilities menu to help you save this session's utility-
generated, data files to an alternate (and static) location; or
use the 'Mount Utility' (also from the Panel's Utilities menu)
to mount a target drive, and then manually copy your data file(s)
to the mounted target.

------------------------------------------------------------------
Parted Magic LiveCD/USB
copyright 2007, Patrick J. Verner
www.partedmagic.com

(file created Sun,26 August 2007 at 08:25:08)





More information about the Syslinux mailing list