Deshabilite el acceso de Windows a UEFI NVRAM

Deshabilite el acceso de Windows a UEFI NVRAM

He escrito un script bash que agrega Grub Entry a UEFI NVRAM. Los scripts se invocan mediante un USB de arranque de Linux. Este comando agrega entrada:

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

El guión funciona correctamente. Pero luego instalé Windows desde la imagen de Partclone.

Windows sobrescribe el orden de inicio y agrega una nueva entrada. Ocurre durante la carga de Windows. Después de reiniciar, Grub2 desaparece.

No quiero hacer cambios en Windows (bcdedit bootmgr), porque tengo una imagen lista (realizada por partclone)

¿Es posible deshabilitar el acceso de Windows a UEFI NVRAM? ¿Es posible ejecutar Windows desde Grub EFI (arranque seguro) sin el administrador de arranque de Windows (me refiero directamente a winload.efi)?

¿Tiene alguna idea?

Respuesta1

No conozco una manera de evitar que Windows escriba en la NVRAM y modifique las variables EFI; sin embargo, hay otras cosas que puedes hacer...

Mira mi respuesta aesta preguntapara algunas herramientas que podrían ayudar. bcdeditEs muy probable que sea útil a este respecto. También podrías intentarFácilUEFI, que no había usado cuando escribí esa respuesta anterior.

Otra opción sería crear scripts de inicio y/o apagado del sistema que restablezcan automáticamente la configuración de inicio deseada. Lo usarías bcdeditpara esto en Windows, pero no soy lo suficientemente usuario de Windows para proporcionar detalles. Es poco probable que sea necesario hacer esto en Linux, ya que Linux no es el culpable; pero si lo fuera, podrías usar efibootmgr... o para un toque un poco más ligero, podrías usar elrefind-mkdefaultscript, que agregaré a la próxima versión de rEFInd. De forma predeterminada, este script establece rEFInd como el programa de arranque predeterminado, pero si le pasa el nombre (nombre de archivo o descripción) de otra herramienta a través de la -Lopción, el script lo establecerá como el predeterminado.

En el peor de los casos, puede cambiar el nombre o mover el archivo del cargador de arranque de Windows ( EFI\Microsoft\Boot\bootmgfw.efien el ESP) a otra cosa y colocar Shim en su lugar, con una copia de GRUB allí. Esto hará que se inicie GRUB en lugar del cargador de arranque de Windows. Sin embargo, necesitarás reconfigurar tu configuración de GRUB para iniciar correctamente el cargador de arranque de Windows. ElReparación de botasLa herramienta puede hacer esto automáticamente; la opción está en el menú Avanzado y se llama algo así como "hacer una copia de seguridad y reemplazar archivos de arranque de Windows" (no recuerdo el nombre exacto). El principal inconveniente de este enfoque es que, cuando Windows actualice su cargador de arranque, deberá volver a aplicar esta solución. También es confuso; Los nombres de los archivos del disco y las entradas de arranque de la NVRAM serán engañosos, lo que podría complicar futuras reparaciones.

información relacionada