[syslinux] Boot off FAT based ISO image?

H. Peter Anvin hpa at zytor.com
Thu Sep 9 11:38:33 PDT 2010


On 09/09/2010 09:23 AM, Sam Liddicott wrote:
>   Is there a mix of SYSLINUX and ISOLINUX that can boot an ISO image 
> from a FAT file system? Sort of like MEMDISK but doesn't need to load 
> the entire great-big ISO into RAM or install an int-13 driver?
> 
> SYSLINUX would need to be installed on the FAT file system but it would 
> want to chain-load ISOLINUX as installed on the ISO. ISOLINUX would load 
> it's blocks from the ISO file in the FAT file system on the FAT devices 
> instead of from a CD device.
> 
> As well as passing that knowledge to ISOLINUX it would be good if it 
> could also pass some APPEND text used by ISOLINUX
> 
> Maybe the syslinux config would be:
> 
> KERNEL ubuntu-10.10.iso
> APPEND cd_loopback=ubuntu-10.10.iso
> 
> syslinux notes that the kernel is an ISO file and so loads ISOLINUX from 
> the ISO file. ISOLINUX adds: cd_loopback=ubuntu-10.10.iso to all APPEND 
> strings
> 
> Thus, with a little bit of init-rd support to look for cd_loopback and 
> find the ISO file; any newer linux ISO could be booted merely by 
> dropping it onto a prepared memory stick.
> 
> or...
> perhaps a MEMDISK option that didn't need to load the entire ISO because 
> int 13 is only needed until the legacy ISOLINUX exec's the kernel it 
> just loaded (via a hooked int 13)
> 

There has been talk of such a "mapdisk" system extension, but it is
*way* different than anything else currently in Syslinux because it
would require either the filesystem code to stay resident or (more
likely) a huge extent map to be produced, stored in memory and then used
to filter the INT 13h requests.

It really isn't a bad idea, but it's nontrivial.

	-hpa




More information about the Syslinux mailing list