jmblack
2002-Nov-16 02:27 UTC
[syslinux] Dynamic Menu based on what isolinux can read from your local filesystem
Comments inline> -----Original Message----- > From: H. Peter Anvin [mailto:hpa at zytor.com] > Posted At: Thursday, November 14, 2002 1:40 AM > Posted To: Syslinux > Conversation: [syslinux] MSDOS not working: problem Solved > Subject: Re: [syslinux] MSDOS not working: problem Solved > > > G. Murali Krishnan wrote: > > > > In short: Is it possible to have such a feature in some > future version? > > May be someimage like memdisk can do this? > > If not is there any other way I can achieve the > same effect. > > > > Probably not. It would entail writing to the hard disk (since that's > the only possible storage medium) which seems at best > inappropriate for > a CD.What he wants doesnt necessarily have to 'write' to the device at all.... If I understood him correctly what he wants is basically this... if exist multi(0)disk(0)rdisk(0)partition(1)\WINDOWS (label 2 kernel memdisk append initrd=rescue.img) if not exist multi(0)disk(0)rdisk(0)partition(1)\WINDOWS (label 2 kernel memdisk append initrd=install.img) If you structured the isolinux config correctly isolinux (syslinux, pxelinux) could build dynamic menus based on the contents of local devices. The problem would be reading the local filesystem... -jmblack> You could theoretically do something like that by putting the disk > access inside a COMBOOT/COM32 binary, but that would have to > include the > whole filesystem. > > Of course, for *special tasks*, you might have a lot easier job. For > example, in your install disk example, if you know none of > your users is > going to have nonstandard partitioning (or if you're going to > repartition the disk anyway), you can usually use the sectors on the > hard disk immediately after the MBR. The first partition > traditionally > starts at the beginning of the second track, even though there is no > requirement for partitions to be such aligned. This means > some number > of sectors are left unused. These can be accessed with BIOS call INT > 13h from a COMBOOT/COM32 binary, which can be used to control > ISOLINUX. > > This obviously takes some hacking, but it's doable. > > -hpa > > _______________________________________________ > SYSLINUX mailing list > Submissions to SYSLINUX at zytor.com > Unsubscribe or set options at: > http://www.zytor.com/mailman/listinfo/syslinux >
H. Peter Anvin
2002-Nov-16 02:47 UTC
[syslinux] Dynamic Menu based on what isolinux can read from your local filesystem
jmblack wrote:> > What he wants doesnt necessarily have to 'write' to the device at > all.... > > > If I understood him correctly what he wants is basically this... > > if exist multi(0)disk(0)rdisk(0)partition(1)\WINDOWS (label 2 > > kernel memdisk > > append initrd=rescue.img) > > if not exist multi(0)disk(0)rdisk(0)partition(1)\WINDOWS (label 2 > > kernel memdisk > > append initrd=install.img) > If you structured the isolinux config correctly isolinux (syslinux, > pxelinux) could build dynamic menus based on the contents of local > devices. > > The problem would be reading the local filesystem... >Again, this can be done using a separate binary. I don't think this belongs in ISOLINUX. -hpa
G. Murali Krishnan
2002-Nov-16 03:01 UTC
[syslinux] Dynamic Menu based on what isolinux can read from your local filesystem
> If I understood him correctly what he wants is basically this... > > if exist multi(0)disk(0)rdisk(0)partition(1)\WINDOWS (label 2 > kernel memdisk > append initrd=rescue.img) > > if not exist multi(0)disk(0)rdisk(0)partition(1)\WINDOWS (label 2 > kernel memdisk > append initrd=install.img) > If you structured the isolinux config correctly isolinux (syslinux, > pxelinux) could build dynamic menus based on the contents of local > devices.The COMBOOT will answer my problem. But my problem aside, is it possible to do something like If multi(0)disk(0)rdisk(0)partition(1) has type c (label 2 kernel memdisk initrd=winstall.img) If multi(0)disk(0)rdisk(0)partition(1) has type 82 (label 2 kernel memdisk initrd=linstall.img) Ofcourse "c" is the type of Win95 FAT32 partition and "82" Linux Native, and multi(0)disk(0)rdisk(0)partition(1) is /dev/hda1 is linux terminology. I am trying wrap my head around the expressive power of isolinux.cfg. Basically, can we take some run time decisions, just by structuring isolinux.cfg correctly? The only runtime decision it can take, AFAIK is "if no key pressed within X seconds, then run this image else run image specified at prompt". - Murali ################################################################ # Ry 254, Ryerson Hall, # Ph : +1 773 702-1031 (Off) # # 1100 E 58th Street # +1 773 575-4836 (Cell) # # Chicago, IL - 60637, # URL : http://www.g-murali.com # # USA. # email: gmkrishn at cs.uchicago.edu # ################################################################
H. Peter Anvin
2002-Nov-16 05:13 UTC
[syslinux] Dynamic Menu based on what isolinux can read from your local filesystem
G. Murali Krishnan wrote:> > I am trying wrap my head around the expressive power of isolinux.cfg. > Basically, can we take some run time decisions, just by structuring > isolinux.cfg correctly? >No. In particular, ISOLINUX will never look at the hard disk.> The only runtime decision it can take, AFAIK is "if no key pressed within > X seconds, then run this image else run image specified at prompt".Correct. -hpa