As teclas F1 a F12 no ISOLINUX possuem a função de exibir textos na tela. Configurando seu uso, nós podemos implementar em nosso LiveCD um sistema de ajuda de boot. A maioria dos LiveCDs costuma associar a essas teclas textos que informam ao usuário as opções de boot e os parâmetros que podem ser passados para o kernel.
No arquivo de configuração do ISOLINUX, as tags responsáveis pela configuração das teclas F1 a F12 apresentam a seguinte sintaxe básica:
F[1-12] filename
Exibe na tela o conteúdo do arquivo passado como parâmetro toda vez que a tecla em questão for pressionada. Tem funcionamento semelhante à tag DISPLAY.
Vejamos como podemos montar um menu de ajuda bastante interessante, como o que encontramos no DVD de instalação do Debian
GNU/Linux. Para isso, na pasta de teste, crie os arquivos que mostrarei a seguir (explicações serão dadas mais adiante):
isolinux.cfg:
DEFAULT vesamenu.c32
TIMEOUT 300
PROMPT 0
INCLUDE menu.cfg
menu.cfg:
LABEL live
MENU LABEL ^Iniciar o
Linux em modo grafico
KERNEL /boot/vmlinuz
INITRD /boot/initrd.gz
APPEND boot=live nopersistent rw quiet splash
LABEL text_only
MENU LABEL Iniciar o Linux em modo ^texto
KERNEL /boot/vmlinuz
INITRD /boot/initrd.gz
APPEND boot=live nopersistent textonly rw quiet
LABEL memtest
MENU LABEL Testar a ^memoria
KERNEL /boot/memtest86
APPEND -
LABEL hd
MENU LABEL Iniciar a partir do ^disco rigido
LOCALBOOT 0x80
APPEND -
LABEL help
MENU LABEL ^Ajuda
CONFIG ajuda.cfg
ajuda.cfg:
PROMPT 1
DISPLAY f1.txt
TIMEOUT 0
INCLUDE menu.cfg
LABEL menu
CONFIG isolinux.cfg
F1 f1.txt
F2 f2.txt
F3 f3.txt
Nos arquivos a seguir são utilizados os caracteres ASCII não-imprimíveis explicados no tópico anterior. Ao gerar esses arquivos, você deve gerar esses caracteres por um dos métodos já explicados.
f1.txt:
*EM**FF**SI*0fAJUDA DE BOOT
*SI*07Este e o menu de ajuda. Abaixo, voce ve a lista de topicos tratados nesta ajuda.
Para acessar um dos topicos, pressione a tecla de funcao correspondente.
A qualquer momento voce pode iniciar o sistema, digitando no prompt "boot: " as
opcoes de boot e pressionando ENTER. Se desejar retornar ao menu principal,
digite menu e pressione ENTER.
*SI*0fIndice
Tecla Topico
*SI*09F1*SI*07 Esta pagina, o indice da ajuda
*SI*09F2*SI*07 Pre-requisitos para executar o LiveCD
*SI*09F3*SI*07 Opcoes de boot para utilizar este LiveCD
f2.txt:
*EM**FF**SI*0fPRE-REQUISITOS PARA EXECUTAR O LIVECD
Configuracao minima:
*SI*07Processador Intel Pentium II 266 MHz ou equivalente
Memoria RAM de 196 MB
*SI*0fConfiguracao recomendada:
*SI*07Processador AMD Athlon 1.0 GHz ou equivalente
Memoria RAM de 512 MB
*SI*0fPressione *SI*09F1*SI*0f para voltar ao indice da ajuda ou digite a opcao de boot desejada e pressione ENTER para inicia-la.
f3.txt:
*EM**FF**SI*0fOPCOES DE BOOT PARA UTILIZAR ESTE LIVECD
live
*SI*07Inicia o Linux normalmente, em modo grafico. Essa e a melhor forma de utilizar o Linux e tambem a opcao padrao deste LiveCD.
*SI*0ftext_only
*SI*07Inicia o Linux em modo texto. Escolhendo essa opcao, voce pode entrar
diretamente no console do Linux, sem ter que passar pelo ambiente grafico.
Para iniciar o ambiente grafico a partir do console, basta executar o
comando startx.
*SI*0fmemtest
*SI*07Nao inicia o Linux. Ao inves disso, inicia o MEMTEST86, um utilitario de
teste de memoria que diagnosticara erros na memoria do seu computador.
*SI*0fhd
*SI*07Nao inicia o Linux. Ao inves disso, inicia o sistema operacional instalado no
primeiro disco-rigido do seu computador.
*SI*0fPara usar uma dessas opcoes de boot, digite-a no prompt "boot: " e pressione
ENTER, como no exemplo a seguir.
*SI*07boot: text_only
*SI*0fPressione *SI*09F1*SI*0f para voltar ao indice da ajuda ou digite a opcao de boot desejada epressione ENTER para inicia-la.
Vou explicar agora o que fizemos com esses arquivos.
Em primeiro lugar, separamos as opções de boot em um arquivo a parte ("menu.cfg") para que pudéssemos reutiliza-las. Observe que a linha "INCLUDE menu.cfg" aparece tanto no arquivo "isolinux.cfg" quanto no arquivo "ajuda.cfg". Com isso, o usuário pode, do menu de ajuda, acionar qualquer uma das opções definidas para o menu principal.
No arquivo "ajuda.cfg" definimos o menu de ajuda. Nele não aparecem as opções do menu principal, apenas textos de ajuda e o prompt "boot: ", como você verá nas figuras a seguir. Então, se o usuário quiser acionar uma das opções definidas para o menu principal, deverá digitar o nome da opção no prompt "boot: " e apertar ENTER.
Observe que nesse arquivo foi definida uma nova opção de boot, "menu", que permite ao usuário, se acionada, voltar ao menu principal. Ela utiliza o mesmo mecanismo de submenus, explicado em um dos tópicos anteriores.
Observe também que a tag PROMPT está definida como 1, indicando que o prompt "boot: " deve ser sempre mostrado, e que a tag TIMEOUT está definida como 0, desabilitando a contagem regressiva para a execução da ação padrão.
Há, finalmente, a tag DISPLAY, indicando que deve ser exibido o conteúdo do arquivo "f1.txt" assim que for exibido o menu e as tags F1, F2 e F3, informando que devem ser exibidos os conteúdos dos arquivos "f1.txt", "f2.txt" e "f3.txt", quando forem pressionadas as teclas F1, F2 e F3, respectivamente.
Para entender melhor o funcionamento desse modelo de menu de ajuda que apresentei aqui, recomendo que você crie esses arquivos e teste o menu em uma máquina virtual. O resultado deve ser este: