O BLFS não tem os pacotes essenciais para suportar a Inicialização Segura. Para configurar o processo de inicialização com GRUB e UEFI no BLFS, a Inicialização Segura precisa ser desligada a partir interface de configuração do firmware. Leia a documentação fornecida pelo(a) fabricante do seu sistema para descobrir como.
          Garanta que um disco de inicialização de emergência esteja pronto
          para “resgatar” o sistema no caso do sistema se
          tornar não inicializável. Para produzir um disco de inicialização
          de emergência com o GRUB para um sistema baseado em EFI, encontre
          uma unidade flash USB sobressalente e crie um sistema de arquivos
          vfat nela. Instale o dosfstools-4.2 primeiro, então, como o(a)
          usuário(a) root:
        
          
            O comando a seguir apagará todos os diretórios e arquivos na
            partição. Certifique-se de que sua unidade flash USB não contém
            dados que serão necessários e mude sdx1 para o nó de dispositivo
            correspondente à primeira partição da unidade flash USB. Seja
            cuidado(a) para não sobrescrever sua unidade rígida com um erro
            de digitação!
          
mkfs.vfat /dev/sdx1
          Ainda como o(a) usuário(a) root,
          use o utilitário fdisk para configurar a primeira
          partição da unidade flash USB para ser uma partição do “sistema EFI” (mude
          sdx para o nó de
          dispositivo correspondente à sua unidade flash USB):
        
fdisk /dev/sdxWelcome to fdisk (util-linux 2.38.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help):tPartition number (1-9, default 9):1Partition type or alias (type L to list all):uefiChanged type of partition 'Linux filesystem' to 'EFI System'. Command (m for help):wThe partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
          Ainda como o(a) usuário(a) root,
          crie um ponto de montagem para a partição EFI na unidade flash USB
          e monte-o:
        
mkdir -pv /mnt/rescue && mount -v -t vfat /dev/sdx1 /mnt/rescue
Instale o GRUB para EFI na partição:
grub-install --target=x86_64-efi --removable --efi-directory=/mnt/rescue --boot-directory=/mnt/rescue
Desmonte a partição:
umount /mnt/rescue
Agora, a unidade flash USB pode ser usada como um disco de inicialização de emergência em qualquer plataforma UEFI x86-64. Ele inicializará o sistema e mostrará o shell do GRUB. Então você consegue digitar comandos para inicializar seu sistema operacional a partir da unidade rígida. Para saber como selecionar o dispositivo de inicialização, leia-se o manual da sua placa-mãe ou notebook.
Habilite as seguintes opções na configuração do núcleo e recompile o núcleo, se necessário:
Processor type and features --->
  [*] EFI runtime service support                              [CONFIG_EFI]
  [*]   EFI stub support                                        [CONFIG_EFI_STUB]
Enable the block layer --->
  Partition Types --->
    [*] Advanced partition selection                            [CONFIG_PARTITION_ADVANCED]
    [*] EFI GUID Partition support                              [CONFIG_EFI_PARTITION]
Device Drivers --->
  Firmware Drivers --->
    [*] Mark VGA/VBE/EFI FB as generic system framebuffer       [CONFIG_SYSFB_SIMPLEFB]
  Graphics support --->
    <*> Direct Rendering Manager                                [CONFIG_DRM]
    [*] Enable legacy fbdev support for your modesetting driver [CONFIG_DRM_FBDEV_EMULATION]
    <*> Simple framebuffer driver                               [CONFIG_DRM_SIMPLEDRM]
    Frame buffer Devices --->
      <*> Support for frame buffer devices --->                 [CONFIG_FB]
    Console display driver support --->
      [*] Framebuffer Console support                           [CONFIG_FRAMEBUFFER_CONSOLE]
File systems --->
  <DOS/FAT/EXFAT/NT Filesystems --->
    <*/M> VFAT (Windows-95) fs support                          [CONFIG_VFAT_FS]
  Pseudo filesystems --->
    <*/M> EFI Variable filesystem                               [CONFIG_EFIVAR_FS]
        O significado das opções de configuração:
CONFIG_EFI_STUB
            Em sistemas EFI, o GRUB inicializa o núcleo Linux invocando o firmware EFI para carregá-lo como um aplicativo EFI. Portanto, a raiz EFI é necessária para amarrar o núcleo como um aplicativo EFI.
CONFIG_SYSFB_SIMPLEFB, CONFIG_DRM, CONFIG_DRM_FBDEV_EMULATION,
              CONFIG_DRM_SIMPLEDRM,
              CONFIG_FB e CONFIG_FRAMEBUFFER_CONSOLE
            A combinação dessas opções fornece suporte ao console Linux no topo do framebuffer UEFI. Para permitir que o núcleo imprima mensagens de depuração em um estágio inicial da inicialização, elas não deveriam ser construídas como módulos do kernel, a menos que um initramfs seja usado.
          Em sistemas baseados em EFI, os carregadores de inicialização são
          instalados em uma partição especial FAT32 chamada EFI System Partition (ESP). Se o seu
          sistema suportar EFI e uma versão recente de alguma distribuição
          Linux ou Windows estiver pré-instalada, [então] é provável que o
          ESP já tenha sido criada. Como o(a) usuário(a) root, liste todas as partições em sua unidade
          rígida (substitua sda pelo dispositivo
          correspondente à unidade rígida apropriada):
        
fdisk -l /dev/sda
          A coluna “Type” da ESP deveria ser EFI System.
        
          Se o sistema ou a unidade rígida for novo(a) ou essa for a primeira
          instalação de um Sistema Operacional inicializado por UEFI no
          sistema, [então] a ESP possivelmente não exista. Nesse caso, crie
          uma nova partição, produza um sistema de arquivos vfat nela e configure o tipo de partição como
          “EFI system”.
          Vejam-se as instruções para o dispositivo de inicialização de
          emergência acima como uma referência.
        
          Algumas (antigas) implementações UEFI possivelmente exijam que a ESP seja a primeira partição no disco.
          Agora, como o(a) usuário(a) root,
          crie o ponto de montagem para a ESP e monte-a (substitua
          sda1 pelo nó de
          dispositivo correspondente à ESP):
        
mkdir -pv /boot/efi && mount -v -t vfat /dev/sda1 /boot/efi
          Adicione uma entrada para a ESP em /etc/fstab, de forma que ela será montada
          automaticamente durante a inicialização do sistema:
        
cat >> /etc/fstab << EOF
/dev/sda1 /boot/efi vfat defaults 0 1
EOF
      
          Em sistemas baseados em UEFI, o GRUB funciona instalando um
          aplicativo EFI (um tipo especial de executável) na ESP. O firmware
          EFI pesquisará carregadores de inicialização em aplicativos EFI a
          partir de entradas de inicialização registradas em variáveis EFI e,
          adicionalmente, um caminho rigidamente codificado, EFI/BOOT/BOOTX64.EFI. Normalmente, um carregador
          de inicialização deveria ser instalado em um caminho personalizado
          e o caminho deveria ser registrado nas variáveis EFI. O uso do
          caminho codificado rigidamente deveria ser evitado, se possível. No
          entanto, em alguns casos, temos que usar o caminho codificado
          rigidamente:
        
O sistema não foi inicializado com EFI ainda, tornando as variáveis EFI inacessíveis.
O firmware EFI é de 64 bits, mas o sistema LFS é de 32 bits, tornando as variáveis EFI inacessíveis porque o núcleo não consegue invocar serviços de tempo de execução EFI com um comprimento diferente de endereço virtual.
O LFS é construído para um Live USB, de forma que não podemos confiar nas variáveis EFI, as quais são armazenadas em NVRAM ou em EEPROM na máquina local.
Você não consegue ou não quer instalar o efibootmgr para manipular entradas de inicialização em variáveis EFI.
Nesses casos, siga estas instruções para instalar o aplicativo EFI do GRUB no caminho codificado rigidamente e faça uma configuração mínima de inicialização. Caso contrário, é melhor pular à frente e definir a configuração de inicialização normalmente.
          Para instalar o GRUB com o aplicativo EFI no caminho rigidamente
          codificado EFI/BOOT/BOOTX64.EFI,
          primeiro certifique-se de que a partição de inicialização esteja
          montada em /boot e de que a ESP
          esteja montada em /boot/efi. Então,
          como o(a) usuário(a) root, execute
          o comando:
        
          
            Este comando sobrescreverá /boot/efi/EFI/BOOT/BOOTX64.EFI. Ele
            possivelmente quebre um carregador de inicialização já instalado
            lá. Produza uma cópia de segurança dele se não tiver certeza.
          
grub-install --target=x86_64-efi --removable
          Esse comando instalará o aplicativo EFI do GRUB no caminho
          rigidamente codificado /boot/efi/EFI/BOOT/BOOTX64.EFI, de forma que o
          firmware EFI consiga achá-lo e carregá-lo. Os arquivos restantes do
          GRUB são instalados no diretório /boot/grub e serão carregados pelo BOOTX64.EFI durante a inicialização do sistema.
        
          O firmware EFI geralmente prefere os aplicativos EFI com um caminho armazenado em variáveis EFI ao aplicativo EFI no caminho codificado rigidamente. Portanto, você possivelmente precise invocar o menu de seleção de inicialização ou a interface de configuração de firmware para selecionar manualmente o GRUB recém-instalado na próxima inicialização. Leia-se o manual da sua placa-mãe ou laptop para aprender como.
Se você tiver seguido as instruções nesta seção e configurou uma configuração mínima de inicialização, agora pule à frente para “Criando o Arquivo de Configuração do GRUB”.
          A instalação do GRUB em uma plataforma UEFI exige que o sistema de
          arquivos de Variáveis EFI, efivarfs, esteja montado. Como o(a) usuário(a)
          root, monte-o se já não estiver
          montado:
        
mountpoint /sys/firmware/efi/efivars || mount -v -t efivarfs efivarfs /sys/firmware/efi/efivars
          Agora adicione uma entrada para o efivarfs em /etc/fstab, de forma que seja montado
          automaticamente durante a inicialização do sistema:
        
cat >> /etc/fstab << EOF
efivarfs /sys/firmware/efi/efivars efivarfs defaults 0 0
EOF
        
          
            Se o sistema não for inicializado com UEFI, [então] o diretório
            /sys/firmware/efi estará ausente.
            Nesse caso, você deveria inicializar o sistema no modo UEFI com o
            disco de inicialização de emergência ou usando uma configuração
            mínima de inicialização criada como acima, então montar o
            efivarfs e continuar.
          
          Em sistemas baseados em UEFI, o GRUB funciona instalando um
          aplicativo EFI (um tipo especial de executável) em /boot/efi/EFI/[id]/grubx64.efi, onde /boot/efi é o ponto de montagem da ESP e
          [id] é substituído por um
          identificador especificado na linha de comando do grub-install. O GRUB criará uma
          entrada nas variáveis EFI contendo o caminho EFI/[id]/grubx64.efi, de forma que o firmware EFI
          consiga encontrar o grubx64.efi e
          carregá-lo.
        
          O grubx64.efi é muito leve (136 KB
          com o GRUB-2.06), de forma que não usará muito espaço na ESP. Um
          tamanho típico da ESP é de 100 MB (para o gerenciador de
          inicialização do Windows, que usa cerca de 50 MB na ESP). Assim que
          o grubx64.efi tenha sido carregado
          pelo firmware, ele carregará os módulos do GRUB a partir da
          partição de inicialização. O local padrão é /boot/grub.
        
          Como o(a) usuário(a) root, instale
          os arquivos do GRUB em /boot/efi/EFI/LFS/grubx64.efi e em /boot/grub. Em seguida, configure a entrada de
          inicialização nas variáveis EFI:
        
grub-install --bootloader-id=LFS --recheck
Se a instalação for bem-sucedida, [então a saída gerada deveria ser:
Installing for x86_64-efi platform.
Installation finished. No error reported.
        Emita o comando efibootmgr | cut -f 1 para verificar novamente a configuração de inicialização EFI. Um exemplo da saída gerada é:
BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0005,0000,0002,0001,0003,0004
Boot0000* ARCH
Boot0001* UEFI:CD/DVD Drive
Boot0002* Windows Boot Manager
Boot0003* UEFI:Removable Device
Boot0004* UEFI:Network Device
Boot0005* LFS
        
          Observe que 0005 é o primeiro no
          BootOrder e Boot0005 é LFS. Isso
          significa que, na próxima inicialização, a versão do GRUB instalada
          pelo LFS será usada para inicializar o sistema.
        
          Gere o /boot/grub/grub.cfg para
          configurar o menu de inicialização do GRUB:
        
cat > /boot/grub/grub.cfg << EOF
# Início /boot/grub/grub.cfg
set default=0
set timeout=5
insmod part_gpt
insmod ext2
set root=(hd0,2)
if loadfont /boot/grub/fonts/unicode.pf2; then
  set gfxmode=auto
  insmod all_video
  terminal_output gfxterm
fi
menuentry "GNU/Linux, Linux 6.1.11-lfs-11.3"  {
  linux   /boot/vmlinuz-6.1.11-lfs-11.3 root=/dev/sda2 ro
}
menuentry "Configuração do Firmware" {
  fwsetup
}
EOF
        
          (hd0,2), sda2 e 6.1.11-lfs-11.3 precisam corresponder à sua
          configuração.
        
          
            Da perspectiva do GRUB, os arquivos são relativos às partições
            usadas. Se você usou uma partição /boot separada, [então] remova
            /boot dos caminhos acima (para o núcleo e para unicode.pf2). Você também precisará mudar a
            linha "set root" para apontar para a partição de inicialização.
          
          A entrada Firmware Setup pode ser
          usada para entrar na interface de configuração fornecida pelo
          firmware (às vezes chamada de “Configuração do BIOS”).
        
          Adicione uma entrada de menu para o Windows no grub.cfg:
        
cat >> /boot/grub/grub.cfg << EOF
# Início da adição do Windows
menuentry "Windows 11" {
  insmod fat
  insmod chain
  set root=(hd0,1)
  chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
EOF
        
          (hd0,1) deveria ser substituído pelo
          nome designado pelo GRUB para a ESP. A diretiva chainloader pode ser usada para dizer ao GRUB para
          executar outro executável EFI, nesse caso o Windows Boot Manager.
          Você pode colocar mais ferramentas utilizáveis no formato de
          executável EFI (por exemplo, um shell EFI) na ESP e, também, criar
          entradas do GRUB para elas.