我已多次重启服务器以更新内核,但微码并未更新。我已尝试使用echo 1 > /sys/devices/system/cpu/microcode/reload
等步骤手动启动它。
needrestart
一直告诉我
当前运行的处理器微码修订版为 0xb4,不是预期的微码修订版 0xb8。
dmesg
说
[ 0.000000] microcode: microcode updated early to revision 0xb4, date = 2019-04-01
[ 4.287003] microcode: sig=0x906e9, pf=0x2, revision=0xb4
[ 4.323918] microcode: Microcode Update Driver: v2.2.
(未过滤的输出中第一个消息之前没有其他消息dmesg
,因此没有线索表明为什么要加载旧消息。)
apt list --all-versions intel-microcode
说
intel-microcode/bionic-updates,bionic-security,now 3.20190618.0ubuntu0.18.04.1 amd64 [installed]
intel-microcode/bionic 3.20180312.0~ubuntu18.04.1 amd64
任何手动升级步骤均未显示错误,因此我猜测如果有错误,它会在启动时写在其他地方。
iucode-tool
显示 0xb4 和 0xb8 以及 0xae(之前的任何消息中都没有出现)的结果:
selected microcodes:
031/001: sig 0x000906e9, pf_mask 0x2a, 2019-04-01, rev 0x00b4, size 99328
073/001: sig 0x000906ea, pf_mask 0x22, 2019-04-01, rev 0x00b4, size 98304
001/001: sig 0x000906eb, pf_mask 0x02, 2019-04-01, rev 0x00b4, size 99328
048/001: sig 0x000906ec, pf_mask 0x22, 2019-02-14, rev 0x00ae, size 98304
024/001: sig 0x000906ed, pf_mask 0x22, 2019-03-17, rev 0x00b8, size 97280
答案1
以 root 身份运行:
iucode_tool -Sl /lib/firmware/intel-ucode
它会告诉您安装了哪些微码更新,以及可能在“类似您的”系统上可用。在其中搜索 0x906e9。
或者这样做:
iucode_tool -s 0x906e9 -l /lib/firmware/intel-ucode
并检查它找到的 ucode 的版本。
在最新版本的 Debian/Ubuntu 微码包中,它将是0xb4
,我不知道无论什么告诉你它应该在哪里0xb8
获取该信息。