Atualizando o carregador de inicialização

bootupd

A atualização do carregador de inicialização (ou bootloader) não é automática. O projeto bootupd está incluído no Fedora CoreOS e pode ser usado para atualizações manuais.

Isso geralmente é relevante apenas em cenários de máquina física ou hipervisores virtualizados que oferecem suporte a inicialização segura. Um exemplo de razão para atualizar o carregador de inicialização é para a vulnerabilidade BootHole.

No momento, apenas a partição do sistema EFI (ou seja, não o BIOS MBR) pode ser atualizada pelo bootupd.

Inspecione o status do sistema:

# bootupctl status
Component EFI
  Installed: grub2-efi-x64-1:2.04-31.fc33.x86_64,shim-x64-15-8.x86_64
  Update: At latest version
#

Se uma atualização estiver disponível, use bootupctl update para aplicá-la; a alteração entrará em vigor na próxima reinicialização.

# bootupctl update
...
Updated: grub2-efi-x64-1:2.04-31.fc33.x86_64,shim-x64-15-8.x86_64
#
Exemplo de unidade systemd para automatizar atualizações de bootupd
variant: fcos
version: 1.5.0
systemd:
  units:
    - name: custom-bootupd-auto.service
      enabled: true
      contents: |
        [Unit]
        Description=Bootupd automatic update

        [Service]
        ExecStart=/usr/bin/bootupctl update
        RemainAfterExit=yes

        [Install]
        WantedBy=multi-user.target

Usando imagens anteriores ao bootupd

Imagens mais antigas do CoreOS anteriores à existência do bootupd precisam de uma fase de "adoção" explícita. Se bootupctl status diz que o componente é Adoptable (adotável), execute a adoção com bootupctl adopt-and-update.

# bootupctl adopt-and-update
...
Updated: grub2-efi-x64-1:2.04-31.fc33.x86_64,shim-x64-15-8.x86_64
#

Versões futuras podem padronizar para atualizações automáticas

É possível que futuras versões do Fedora CoreOS possam automatizar as atualizações do carregador de inicialização semelhantes às anteriores.