SBAT ERROR EN DUALBOOT
A principios de esta semana, surgieron noticias sobre una actualización de Windows que rompía los sistemas de arranque dual con Windows y Linux instalados uno al lado del otro, incluyendo Deepin. Ahora, Microsoft ha reconocido oficialmente el problema y ha prometido investigarlo y solucionarlo.
Una notificación publicada en la documentación oficial de Windows confirma que la instalación de las actualizaciones del martes de parches de agosto de 2024 provoca el siguiente mensaje de error al intentar iniciar o instalar Linux en un sistema de arranque dual:
Verifying shim SBAT data failed: Security Policy Violation. Something has gone seriously wrong: SBAT self-check failed: Security Policy Violation. – Fallo en la verificación de los datos SBAT: Violación de la política de seguridad. Algo ha ido muy mal: la autocomprobación de SBAT ha fallado: Violación de la política de seguridad.
En sencillas palabras, sin embargo, queda claro que Microsoft volvió a hacer de las suyas, porque los de Redmond tuvieron que admitir que «En algunos dispositivos, la detección de arranque dual no reconoció algunos métodos de arranque dual definidos por el usuario y aplicó el valor SBAT cuando no debería haberse aplicado.»
Si tienes Deepin y Windows en arranque dual y has instalado la actualización en Windows de agosto de 2024 y te encuentras con el problema de arranque de Linux, debes momentáneamente desactivar Secure Boot en la UEFI. La forma exacta de hacerlo depende del fabricante de la UEFI (en algunas placas base, Secure Boot ya no se puede desactivar). Entonces sigue leyendo para conocer como arreglar el problema.
SOLUCIÓN
Ahora, Microsoft ha lanzado otra actualización y también ha proporcionado más información sobre cómo solucionar el problema manualmente en los sistemas afectados. Si su máquina Windows-Linux no puede arrancar en Linux o le es imposible instalar Linux, intente lo siguiente para devolverla a la vida:
Desactivar Secure Boot:
- 1 – Reinicie el sistema y entre en la configuración del firmware (BIOS o UEFI).
- 2- Desactive «Secure Boot» (los pasos varían según el fabricante) para así poder seguir los pasos siguientes.
Suprimir la actualización de SBAT:
- 3- Arranca en Linux.
- 4- Abra el terminal y ejecute el siguiente comando:
sudo mokutil --set-sbat-policy delete
- 5- Introduzca su contraseña de root si se le solicita.
- 6- Inicie Linux una vez más.
Verificar las revocaciones de SBAT:
- 7- En el terminal, ejecute el siguiente comando:
mokutil --list-sbat-revocations
- 8- Asegúrese de que la lista no muestra ninguna revocación.
Vuelva a activar Secure Boot:
- 9- Reinicie el sistema y entre en la configuración del firmware (BIOS o UEFI).
- 10- Vuelva a activar Secure Boot.
Compruebe el estado de arranque seguro:
- 11- Arranque en Linux. Ejecute el siguiente comando:
mokutil --sb-state
- 12- El resultado debería ser ‘
SecureBoot enabled
‘. Si no es así, vuelva a intentar el paso 4.
Evitar futuras actualizaciones de SBAT en Windows:
- 13- Inicie Windows.
- 14- Abra una ventana de «Command Prompt» «Windows Terminal» o «Windows Shell» en su sistema como administrador y ejecute el siguiente comando en una sola línea:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecureBoot\SBAT /v OptOut /d 1 /t REG_DWORD
En este punto, ya deberías poder arrancar en Deepin o Windows como antes. Es un buen momento para instalar cualquier actualización pendiente de Deepin para asegurarse de que su sistema es seguro.
Además de proporcionar esta solución alternativa y temporaria, Microsoft dijo que está trabajando con sus socios de Linux para solucionar el problema permanentemente lo antes posible, sin necesidad de la intervención del usuario.
NOTA: Al momento de esta publicación Deepin en Español aún no ha podido comprobar la eficacia de este procedimiento en Deepin. Si tienes éxito o no, déjanos saber en un comentario.