Quero ter comigo um Fedora Live UEFI boot USB para emergências, mas não quero carregar duas unidades USB. Então, eu quero uma unidade USB com duas partições, uma para inicialização do Fedora Live e outra para minhas coisas. Sempre tive comigo um pen drive assim com o Fedora Live 26, e agora quero um para o Fedora 38 (mais ou menos).
Os problemas:
mediawriter
, a maneira padrão de gravar Live USBs no Fedora, grava apenas em um dispositivo USB, não em uma partição.
livecd-iso-to-disk
funcionaria, mas tem um bug muito antigo e não funciona .
unetbootin
funciona apenas para inicialização herdada, não para UEFI. E os novos computadores Dell inicializam apenas UEFI. Há um pedido aberto para isso desde 2015...
dd
: Eu tentei várias vezes com, dd
mas falhei miseravelmente.
Alguma ideia? Deve haver uma maneira fácil de fazer isso apenas com dd
!!!
############ EDITAR #############
Seguindo alguns dos links postados por @oldfred, consegui inicializar o UEFI a partir de uma partição de pen drive com o seguinte recibo:
Fedora USB LIVE para uma partição em um pen drive (digamos, /dev/sda1
):
Usando gparted ou similar, certifique-se que a primeira partição do pen drive é gpt, e tem label
<YOURLABEL>
(isso pode ser alterado de forma não destrutiva);Adicione o sinalizador de inicialização à partição com:
parted /dev/sda set 1 boot on
Monte
/dev/sda1
em a<MountPoint>
e extraia todo o conteúdo ISO com, digamos, 7z:7z x <PATH/TO/ISOFILE.iso> -o<MountPoint>
Mude
<MountPoint>/efi/boot/grub.cfg
e<MountPoint>/boot/grub2/grub.cfg
para refletir o dispositivo correto:menuentry 'Fedora-KDE-Live 38 EFI' --class fedora --class gnu-linux --class gnu --class os { linuxefi /images/pxeboot/vmlinuz root=live:LABEL=<YOURLABEL> rd.live.image quiet rhgb initrdefi /images/pxeboot/initrd.img }
Observação. A entrada correspondente no menu grub do computador pode ser adicionada adicionando ao arquivo /etc/grub.d/40_custom
:
menuentry 'Fedora-KDE-Live 38 EFI' --class fedora --class gnu-linux --class gnu --class os {
search --no-floppy --label <YOURLABEL> --set=root
linuxefi /images/pxeboot/vmlinuz root=live:LABEL=<YOURLABEL> rd.live.image quiet rhgb
initrdefi /images/pxeboot/initrd.img
}
Observação 2. Infelizmente, não consegui inicializar a partir do ISO diretamente quando o ISO está no pen drive. De acordo com este post, há um bug impedindo isso desde o Fedora 33.
Dois caminhos. Acabei de usar o loopmount do grub2 para inicializar o Fedora. Eu gosto de ter muitos ISO, vários Ubuntu, gparted, Boot-Repair e outros em uma pasta /ISO em uma partição em meus sistemas. Eu adiciono um link para um arquivo de texto em 40_custom, pois nunca me lembro de atualizar o menu do grub, mas o arquivo de texto simplesmente funciona.
Outra alternativa é criar uma partição FAT32 grande o suficiente, mover boot,esp flags para ela e extrair ISO para ela. Ele inicializará a partir de /EFI/Boot/bootx64.efi. Mova esp, boot flags de volta para o seu ESP padrão. Você pode então fazer com que seu grub padrão faça um arquivo de configuração nessa partição FAT32. O Grub não se importará mais com o ESP, mas você só pode inicializá-lo diretamente do UEFI com o sinalizador esp.
Obter o caminho e os parâmetros corretamente geralmente são os maiores problemas. Meu caminho é /ISO na partição (hd2,5), como visto quando nenhuma partição está montada.
Mostra minha entrada grub típica como configfile para arquivo de texto na minha pasta /ISO.
https://askubuntu.com/questions/1380683/how-to-install-ubuntu-based-os-on-internal-hard-drive-without-a-flash-drive-usin
https://www.linuxbabe.com/desktop-linux/boot-from-iso-files-using-grub2-boot-loader
https://help.ubuntu.com/community/Grub2/ISOBoot
https://askubuntu.com/questions/1251729/20-04-booting-iso-from-grub-menu
https://askubuntu.com/questions/395879/how-to-create-uefi-only-bootable-usb-live-media
Acredito porque uso uma entrada de arquivo de configuração para um arquivo de texto, que o conjunto grub é lembrado e é por isso que a entrada acima funcionou. Meu arquivo de texto é /ISO/livecdimage.cfg e tem a estrofe de inicialização acima que funciona para inicializar o Fedora 38 na minha unidade NVMe da qual eu inicializo e é vista como hd2.