Desabilitar o acesso do Windows ao UEFI NVRAM

1

Eu escrevi um script bash que adiciona o Grub Entry ao UEFI NVRAM. Scripts é invocado pelo linux USB inicializável. Este comando adiciona entrada:

efibootmgr -c -d /dev/sda -p 2 -L "Grub2" -l "\EFI\Boot\shimx64.efi" 

O script funciona corretamente. Mas depois instalei o Windows a partir da imagem do Partclone.

O Windows substitui a ordem de inicialização e adiciona uma nova entrada. Isso acontece durante o carregamento do Windows. Após a reinicialização, o Grub2 desaparece.

Eu não quero fazer alterações no Windows (bcdedit bootmgr), porque eu tenho imagem pronta (feita por partclone)

É possível desabilitar o acesso do Windows ao UEFI NVRAM? É possível executar o Windows From Grub EFI (inicialização segura) sem o gerenciador de inicialização do Windows (quero dizer diretamente winload.efi)?

Você tem alguma ideia?

    
por Michald86 29.01.2016 / 17:27

1 resposta

0

Não conheço uma maneira de impedir que o Windows grave na NVRAM e modifique as variáveis da EFI; no entanto, existem outras coisas que você poderia fazer ....

Veja minha resposta para esta pergunta para algumas ferramentas que podem ajudar. É mais provável que bcdedit seja útil nesse aspecto. Você também pode tentar EasyUEFI , que eu não usei quando escrevi essa resposta anterior.

Outra opção seria criar scripts de inicialização e / ou desligamento do sistema que restaurem automaticamente a configuração de inicialização desejada. Você usaria bcdedit para isso no Windows, mas não sou usuário suficiente do Windows para fornecer detalhes. Fazer isso no Linux provavelmente não será necessário, já que o Linux não é o culpado; mas se fosse, você poderia usar efibootmgr - ou para um toque um pouco mais leve, você poderia usar o refind-mkdefault script, que adicionarei à próxima versão do rEFInd. Por padrão, esse script define rEFInd como o programa de inicialização padrão, mas se você passar o nome (nome do arquivo ou descrição) de outra ferramenta por meio da opção -L , o script definirá como padrão.

Na pior das hipóteses, você pode renomear ou mover o arquivo do carregador de inicialização do Windows ( EFI\Microsoft\Boot\bootmgfw.efi no ESP) para outra coisa e colocar o Shim em seu lugar, com uma cópia do GRUB. Isso fará com que o GRUB seja iniciado em vez do carregador de inicialização do Windows. Você precisará reconfigurar sua configuração do GRUB para iniciar o gerenciador de inicialização do Windows corretamente. A ferramenta Reparo de inicialização pode fazer isso automaticamente; a opção está no menu Avançado e é chamada de algo como "fazer backup e substituir arquivos de inicialização do Windows" (não lembro o nome exato). A principal desvantagem dessa abordagem é que, se e quando o Windows atualizar seu carregador de inicialização, você precisará reaplicar essa correção. Também é confuso; os nomes dos arquivos de disco e as entradas de inicialização da NVRAM serão enganosas, o que pode complicar futuros reparos.

    
por 31.01.2016 / 21:12