Failed to set MokListRT: Invalid Parameter Something as gone seriously wrong: import_mok_state() failed: Invalid Parameter

今天yum update升级centos7,重启后发现开不了机,报错如下:

Failed to set MokListRT: Invalid Parameter
Something as gone seriously wrong: import_mok_state() failed:
 Invalid Parameter

google之后,发现错误原因:

主要是由于shim和mokutil两个软件包升级高版本后,不支持机器的配置,所以解决方法就是对这两个版本进行降级。

首先先开机进去:

首先制作一个centos7的启动盘,U盘启动后,点第三个Troubleshooting,然后按照下面的顺序操作:

Troubleshooting -> Rescue media -> 输入1继续;

在终端下输入下面命令:

chroot /mnt/sysimage
cd /boot/efi/EFI/centos
cp grubx64.efi shimx64.efi
exit
reboot

 

重启后,应该可以进入系统,

然后进入管理员权限,在yum.conf中排除shim和mokutil的升级:

echo 'exclude=shim,mokutil' >> /etc/yum.conf
yum update

之后再进行yum update升级就不会升级上述两个包了。

另一方面降级shim和mokutil,在网上下载12-2版本的两个包;

首先使用 rpm-e *.rpm --nodeps 卸载目前15-1版本的两个安装包

使用 rpm -ivh *.rpm 安装两个包。

注意:

有时即使更改了上述的文件依然无法成功开机,就需要进入linux登陆管理器,进入以前的linux版本,一样可以进入系统。

 

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/wq242424/p/10119123.html