O bootmgr do Windows pode inicializar o linux diretamente?

2

O bootmgr do Windows (gerenciador de inicialização do Windows usado desde o Vista *) inicializa o Linux diretamente, sem carregar o GRUB ou outro gerenciador de inicialização?

  • respostas sobre o NTLDR mais antigo também são bem-vindas
por David Balažic 10.11.2013 / 19:58

1 resposta

4

Em termos simples, não. A inicialização do Linux é um pouco mais complicada do que apenas copiar alguns dados para a memória e saltar para o início dessa área de memória, e a Microsoft escolheu, por razões óbvias, não adicionar suporte para isso em seu gerenciador de inicialização.

No entanto, se você estiver preocupado em simplesmente usar o carregador de inicialização do Windows como seu carregador de inicialização primário, existem vários métodos que você pode usar para carregar diferentes versões do GRUB do carregador de inicialização do Windows. Você também pode considerar a possibilidade de usar o GRUB4DOS, que possui um formato binário que pode ser carregado diretamente com o NTLDR. Ou você pode carregar um setor de inicialização de modo real para qualquer versão do GRUB a partir do bootmgr ou NTLDR.

Agora, você provavelmente fez a pergunta por curiosidade mais do que qualquer outra coisa, e isso despertou minha curiosidade também. Ao pesquisar o assunto, achei uma boa descrição do processo de inicialização do Linux . Ele menciona um setor de inicialização do kernel legado, que historicamente seria usado ao inicializar o kernel diretamente de um disquete. Este campo não é mais usado, como você verá em breve. Provavelmente porque o kernel se tornou maior que 1.44 MB atualmente.

Eu tentei descompactar um kernel e encadeá-lo de duas maneiras. Primeiro com chainloader /vmlinux do GRUB4DOS (embora qualquer outro grub possa funcionar da mesma forma, novamente assumindo que você descomprime o arquivo. Resultado: Estou recebendo a seguinte mensagem:

Direct booting from floppy is no longer supported.
Please use a boot loader instead.

Remove disk and press any key to reboot . . .

Eu também tentei C:\vmlinux="boot test" no boot.ini do XP, mas acabou de pendurar.

No entanto, isso levanta a questão se é possível fazer uma compilação especial do kernel que pode ser inicializada diretamente de um dos carregadores do Windows com alguma cola mínima para entrar no ponto de entrada do kernel realmdoe, bem como algumas outras correções, talvez.

No entanto, isso ainda seria muito inconveniente, já que esse método não teria todas as comodidades modernas que o kernel normalmente obtém do gerenciador de inicialização, como os parâmetros do kernel e um initrd. Pode simplesmente não valer a pena o esforço.

    
por 10.11.2013 / 20:56