

据用户反映,在更新Windows系统后,原本正常运行的Linux双系统突然无法启动。在尝试进入系统时,会出现“Verifying shim SBAT data failed: Security Policy Violation”等错误提示,导致系统无法正常启动。这一现象在多个Linux社区和论坛中均有用户反馈。

经过调查,发现这一问题的根源在于Windows更新与双系统之间的兼容性问题。在更新过程中,Windows系统对安全启动高级定位(Secure Boot Advanced Targeting,SBAT)进行了调整,导致Linux系统无法正常启动。具体来说,是SBAT更新与Linux可扩展固件接口(UEFI)存在冲突,从而影响了双系统的正常运行。

针对这一问题,微软已经发布了详细的解决方案,以帮助用户恢复双系统并防止类似问题再次发生。以下是具体步骤:
步骤一:禁用安全启动
进入BIOS设置,将安全启动(Secure Boot)关闭。如果不会设置,可以联系主板制造商客服咨询。
步骤二:删除SBAT更新
在禁用安全启动后,进入Linux系统。重启系统,进入Linux并打开终端管理器,执行以下命令:
sudo mokutil --set-sbat-policy delete
此操作需要root权限,执行时可能会提示输入账号密码,请按提示操作。操作完成后,重启Linux系统(此时仍然不要开启安全启动)。
步骤三:验证SBAT删除和撤销
再次进入Linux系统后,进入终端并执行以下命令:
mokutil --list-sbat-revocations
如果提示“没有任何可以撤销的内容”,则代表已经完成设置。此时,再次重启系统进入BIOS并开启安全启动。开启安全启动后,重新进入Linux系统并打开终端应用执行mokutil。
通过以上步骤,用户可以恢复双系统并防止类似问题再次发生。在此过程中,我们提醒广大用户,在更新系统时,一定要谨慎操作,确保系统稳定。同时,对于双系统用户,建议在更新前备份重要数据,以防止意外情况发生。