2019年4月15日 星期一

舊的服務器安裝的CentOS yum update 后不能啓動

舊的服務器安裝的CentOS yum update 后出現

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


主要是由於shim和mokutil兩個套件不支持機器的硬件配置,必需進行降級。

          -----這個問題CentOS7.8 (1908) 版本似乎解決了-----


找張Centos7的DVD盤,啟動後點第三個Troubleshooting,然後按照下面的順序操作:

Troubleshooting -> Rescue media -> 輸入1繼續;

在終端下輸入下面命令:
chroot /mnt/sysimage
cd /boot/efi/EFI/centos
cp grubx64.efi shimx64.efi
exit
reboot

重啟後以root進入系統,在yum.conf 排除shim和mokutil的升級

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

這樣再進行 yum update 就不會升級上面兩個套件
然后找張Centos7.4 或者7.3 的DVD (也可以從網上下載)

mount -t auto /dev/cdrom /mnt/cdrom

再使用 rpm -ivh shim*.rpm 和rpm -ivh mokutil* .rpm 將低版本的兩個套件裝回去


如果是新的安裝, 從這里下載7.4以下版本的CentOS, 安裝完成后先別 yum update , 而是在yum.conf 排除shim和mokutil的升級

echo ‘exclude=shim,mokutil’ >> /etc/yum.conf

實際上最好連核心也排除升級

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

也可以用vi 在 yum.conf 的 main 下面加上

exclude=shim*,mokutil*,kernel*

然后才 yum update

沒有留言:

張貼留言

 YUM ( or DNF) upgrade PHP  listed running PHP version yum list installed |grep PHP Remove the old version yum remove php* Then install the ...