Como criar USB híbrido ao vivo

3

Eu tenho um laptop executando o UEFI e o Windows 8.1. Eu quero criar um stick USB Linux inicializável ao vivo que pode ser usado para inicializar o meu sistema BIOS mais antigo ou o meu sistema UEFI mais recente. Eu estou bem com duas cópias separadas da distribuição ao vivo em diferentes partições do pendrive, se necessário. Quais são os passos para conseguir isso?

Eu li outros posts que parecem indicar que isso é possível, mas nenhum deles ilustra claramente como fazer isso:

Como você cria uma partição MBR / GPT Drive USB?

É um híbrido Linux USB-Stick para UEFI & BIOS legado possível?

    
por taz 23.08.2015 / 00:16

1 resposta

4

Ao solicitar uma ilustração clara de como fazê-lo, aqui está. Eu suponho que você tenha o seu live Linux inicializado.

  1. Particione o pen drive USB

    Eu recomendo a ferramenta de linha de comando gdisk . Produz resultados muito limpos. Como alternativa, você pode usar gparted .

    1. Crie uma nova tabela de partição. Use o GPT com um MBR protetor.

    2. Defina estas partições:

      • (opcional) Uma partição de dados
      • Uma partição do Linux
      • Uma partição de inicialização de BIOS herdada (1 MB é suficiente)
      • Uma partição do sistema EFI (pelo menos 32 MB)
    3. Exemplo: no meu pen drive de 64 GB, o resultado é assim:

      Number  Start (sector)    End (sector)  Size       Code  Name
         1            2048       107632639   51.3 GiB    0700  DATA
         2       107632640       124411903   8.0 GiB     8300  Linux filesystem
         3       124411904       124413951   1024.0 KiB  EF02  BIOS boot partition
         4       124413952       124822453   199.5 MiB   EF00  EFI System
      
  2. Instale o Linux no pendrive USB usando qualquer método.

    Durante o processo, formate a partição Linux com um sistema de arquivos de sua escolha, preferencialmente ext4 . Use esta partição como root / .
    Formate a partição do sistema EFI com FAT16.
    A partição de inicialização do BIOS permanece não formatada.

  3. Instale o GRUB duas vezes

    Em uma etapa final, instale o GRUB para os dois métodos de inicialização, inicialização de estilo UEFI e inicialização de BIOS legado.

    grub-install --target=x86_64-efi --removable /dev/sdx
    
    grub-install --target=i386-pc /dev/sdx
    

    Onde /dev/sdx é o seu pen drive, obviamente.
    Esse --removable é importante. Demorei três horas para perceber que preciso de um pendrive USB removível ...

    Se você instalar o GRUB no pen drive a partir do "outside" (sem ter inicializado o Linux a partir do pen drive USB), é necessário montar a partição Linux primeiro. Talvez você monte em /mnt . Em seguida, monte a partição do sistema EFI no diretório /mnt/boot/efi das partições do Linux. Use --root=/mnt como parâmetro para grub-install . Só então grub-install encontra todos os diretórios necessários.

Feito.

Para leitura adicional:
Nós realmente não definimos partições no MBR. Então você pode perguntar por que ele funciona em máquinas BIOS legadas. Tenha em mente que instalamos o GRUB no MBR. Durante o processo de inicialização do BIOS, o bootloader armazenado no MBR é executado. Isso carrega o estágio 1 do GRUB, que então passa a carregar o estágio 2 da partição de inicialização do BIOS. Mas neste momento, o GRUB não sabe nada sobre partições MBR ou de outra forma. Por esse motivo, as informações sobre a posição da partição de inicialização do BIOS foram incorporadas ao estágio 1 do GRUB. Consequentemente, se a partição de inicialização do BIOS for movida, será necessário reinstalar o GRUB. Depois que o estágio 2 do GRUB é carregado, o GRUB entende a GPT e pode continuar com a inicialização do kernel do Linux.

    
por 02.03.2016 / 14:28