Douglas McClendon
2007-Oct-05 19:39 UTC
[syslinux] embedded fs access?, was Re: Booting ISOs
Hello, my name is Douglas McClendon. I just joined this list. The question that prompted me to join, is actually quite timely, as it related to the Booting ISOs thread, which unfortunately, I can't just continue. I think the answer the "Booting ISOs" question got, regarding the knoppix cheatcode, was relevant, but not quite optimal. Unless I am misunderstanding, using the knoppix cheatcode, requires that the user duplicate the initramfs and kernel, *outside* the iso image, so that isolinux will have access to it. I.e. they(knoppix) just put support in their initramfs to deal with the .iso in the vfat filesystem. What would be ideal, and what I would *really like*, is if sys/isolinux would support referencing kernels and initrds that live *within* a .iso image, that is either residing on a vfat fs on a usbstick, or a .iso image that is residing in the iso9660 filesystem of the cdrom boot media. One perhaps controversial use-case of this, would be to take a Fedora LiveCD iso image, and redistribute it *intact and unmodified* inside another iso9660 filesystem, along with custom modifications, and a bootloader that can *efficiently* utilize the kernel inside the 'embedded' iso filesystem, rather than duplicating those bits in the primary iso filesystem. (and then boot the embedded LiveCD, but adding the custom patches immediately, before transferring control to the normal boot scripts) I believe this could be implemented in a fairly elegant way in syslinux, and would actually be useful in a multitude of situations. If I were to start to invest the time, I'd start looking at the isodump utilitity which now appears to be able to dump the bits from a particular file from an iso image specified by path. Then try to glue that code into isolinux so that it could dump the bits of the kernel and the initrd into memory from the embedded iso image, rather than reading them from the primary iso9660 (or vfat) filesystem. I guess my best hope with this message is to inspire someone to do the work for me. The next best hope would I guess be comments off the top of peoples heads as to gotchas to expect during implementation, or otherwise supportive or intelligently critical advice. Thanks, -dmc
Douglas McClendon wrote:> I believe this could be implemented in a fairly elegant way in syslinux, > and would actually be useful in a multitude of situations. > > If I were to start to invest the time, I'd start looking at the isodump > utilitity which now appears to be able to dump the bits from a > particular file from an iso image specified by path.I stumbled across this some days ago, http://www.mgerards.net/blog/?cat=4 He writes about booting from iso9660 using a "loopback" module in grub2, and the dist he is using is based on debian. A hot on the plate packaged debian unstable, its called sidux. Docs about the fromiso cheatcode: http://manual.sidux.com/en/hd-install-opts-en.htm Maybe it is possible to build something similar with a c32 program ? Regards Peter -- /bitrunner/ *0708-460260* Andra L?nggatan 28 41327 G?teborg Sweden
Peter wrote:> I stumbled across this some days ago, > http://www.mgerards.net/blog/?cat=4 > > He writes about booting from iso9660 using a "loopback" module in grub2, > and the dist he is using is based on debian. A hot on the plate > packaged debian unstable, its called sidux. Docs about the fromiso > cheatcode: > http://manual.sidux.com/en/hd-install-opts-en.htm > > Maybe it is possible to build something similar with a c32 program ?That should definitely be possible. -hpa