[syslinux] SAY command (mis)behaviour?

Ady Ady ady-sf at hotmail.com
Thu Nov 1 15:28:32 PDT 2018


> Thank you for your fast and in-depth reply, and for the practical
> example. I think i will dig deeper into the modules part of the wiki,
> which i skipped when i first configured the bootloader some time
> ago...
 
One of the "over-complicated" ways to circumvent the limitation (i.e. 
SAY being a global directive, not a per-label directive) without using 
modules would be to use more than one configuration file (for each 
"per-label SAY" that you would want). The following is just an example.


### Start extlinux.conf (or even better, syslinux.cfg) ###

DEFAULT debian                                                          


# I AM SKIPPING OTHER ENTRIES, JUST SHOWING EXAMPLE

LABEL debian.old
# Here we point to a different cfg file, by means of the CONFIG 
directive.
# The "old.cfg" file contains one entry and "it's" SAY directive.
# Keep reading, and you'll find the content of "old.cfg".
CONFIG old.cfg

# I AM SKIPPING OTHER ENTRIES, JUST SHOWING EXAMPLE

### End extlinux.conf (or even better, syslinux.cfg) ###


### Start old.cfg ###

DEFAULT old

# We add a timer, so you have time to read the screen:
TIMEOUT 50

# Since you have 1 entry only, we also show the boot prompt.
# Otherwise, the timer is useless.
PROMPT 1

# And here we have the new "global" SAY,
# but it is "global" for this "old.cfg" only.
SAY *** You are booting an old kernel. ***
SAY *** Edit DEFAULT in your extlinux.conf when done. ***

LABEL old
    LINUX /vmlinuz.old
    APPEND              # WHATEVER YOU ALREADY HAVE HERE
    INITRD /initrd.img.old

### End old.cfg ###


HTH,
Ady.




More information about the Syslinux mailing list