Grup de inicialização EFI no dispositivo USB

0

Estou tentando instalar o ParrotSec Linux em um pen drive MBR. A pasta raiz montada em sdc5 e eu tenho uma partição ext2 em sdc3 contendo configuração do grub, vmlinux e initrd. Eu tenho outra pequena partição no meu stick em sdc1 formatado em fat32 e estou tentando instalar o EFI grub nele para que eu possa inicializá-lo do meu computador.

Por enquanto, o que eu sou capaz de fazer é inicializar o grub cli de outro stick usb contendo apenas o grub e então usar o grub cli para carregar o linux e initrd e inicializar o sistema. Mas isso envolve conectar dois pen drives no meu computador, um com o sistema, o segundo com o grub.

Existe alguma maneira de instalar o grub diretamente no meu pendrive ParrotSec para que eu possa inicializar EFI nele? Eu não me importo de reinstalar todo o sistema.

    
por tourdetour 12.04.2016 / 21:38

2 respostas

1

Na minha experiência, fazer com que os GRUBs do modo BIOS e do modo EFI coexistam em uma mídia pode ser complicado, pois eles podem querer usar o mesmo arquivo de configuração, mas têm necessidades diferentes para isso. Para ter certeza, pode funcionar, mas a menos que você tenha muito conhecimento sobre o GRUB, tenha instruções muito explícitas de alguém que tenha esse conhecimento, ou tenha muita sorte, você pode acabar com um bagunça emaranhada. Percebo por sua própria resposta, tourdetour, que você trabalhou além desse obstáculo, e isso é ótimo; mas ....

Minha recomendação geral para essa tarefa é confiar em dois carregadores de inicialização diferentes, como o GRUB para o modo BIOS e o rEFInd (advertência: Eu mantenho o rEFInd) para a inicialização no modo EFI. Eles usam arquivos de configuração diferentes, então não há chance de conflito nesse ponto. Configurando-o para o modo BIOS primeiro, mas com uma partição FAT reservada para se tornar a partição do sistema EFI (ESP) , é um bom começo. O carregador de boot EFI deve ser instalado usando o nome do arquivo de fallback ( EFI/BOOT/bootx64.efi , pelo menos para sistemas x86-64) no ESP. No caso de rEFInd, isso pode ser feito com o script refind-install :

refind-install --usedefault /dev/sdb1

Este exemplo configura o rEFInd em /dev/sdb1 , que deve ser a partição FAT não montada na unidade USB - ajuste esse valor conforme necessário. Se você quiser usar ELILO, gummiboot / systemd-boot, ou algo diferente, você precisará consultar sua documentação para aprender a instalá-lo e configurá-lo.

Uma ressalva: Se você planeja inicializar em sistemas que suportam inicialização segura, pode ser mais fácil usar o GRUB 2 como o carregador de inicialização no modo EFI, pelo menos se a distribuição suportar inicialização segura. Em seguida, você usaria outra coisa (SYSLINUX, LILO ou GRUB Legacy) para a inicialização no modo BIOS. A razão é que a maioria das distribuições fornece um caminho completo, do Shim ao GRUB 2 até o kernel, com suporte a Boot Seguro. É possível trocar o GRUB 2 por alguma outra coisa, mas significa que você precisará adicionar pelo menos uma chave à sua lista MOK quando inicializar. Este não é um desafio muito grande em uma base única, mas se você mover a instalação de uma máquina para outra ou distribuí-la amplamente, isso pode ser uma dor.

    
por 19.04.2016 / 15:34
1

Parece que eu fiz isso. Eu instalei o grub usando o grub-install de outra distribuição do linux no pendrive. Isso permitiu que eu inicializasse no meu pendrive a partir do BIOS. Então, eu copiei outra cópia do grub dentro de uma pasta EFI que me permite inicializar a partir do EFI. Eu tenho duas grubs instaladas mas funciona ...

    
por 14.04.2016 / 18:32