如何正确更新英特尔微码?

如何正确更新英特尔微码?

我已经安装了intel-microcode=2.20140913.1ubuntu2,但仍然2014-05-29加载

dmesg | head -n1

我必须使用吗iucode-tool

答案1

手动方法

如何验证你的处理器是否有新的微码更新(英特尔)

前往英特尔驱动程序下载中心。下载最新的微码,然后解压文件,得到一个microcode.dat文件。

  1. 确保您拥有以下包裹iucode-tool

    sudo apt-get install iucode-tool
    
  2. 创建临时文件夹:

    mkdir /tmp/micro
    
  3. 将此文件“解压”microcode.dat到临时位置:

    iucode_tool -K/tmp/micro microcode.dat
    
  4. 您现在可以使用以下命令检查是否有更新的微码文件:

    modprobe cpuid && iucode_tool -tb -lS /tmp/micro
    

    (或者您将微代码解压到的任何地方)。

    在我的旧 Core 2 Duo 上,输出如下:

    iucode_tool: system has processor(s) with signature 0x0001067a
    selected microcodes:
    001: sig 0x0001067a, pf mask 0xa0, 2010-09-28, rev 0x0a0b, size 8192
    002: sig 0x0001067a, pf mask 0x11, 2010-09-28, rev 0x0a0b, size 8192
    003: sig 0x0001067a, pf mask 0x44, 2010-09-28, rev 0x0a0b, size 8192
    
  5. 将其与以下输出进行比较:

    dmesg | grep "updated"
    

    示例输出:

    [    1.056012] microcode: CPU0 updated to revision 0xa0b, date = 2010-09-28
    [    1.112010] microcode: CPU1 updated to revision 0xa0b, date = 2010-09-28
    

    这表明我的系统已经使用最新的微码。

使用存储库的方法

按照本教程(请注意,您不需要安装synaptic

  1. 安装以下软件包:

    sudo apt-get install microcode.ctl intel-microcode
    
  2. 重新启动计算机。

  3. 现在使用以下终端命令检查微码是否已正确加载:

    dmesg | grep microcode
    

    如果一切顺利,您应该会看到有关应用微码的几份报告。

答案2

这是英特尔发布的微代码池
http://ftp.ubuntu.com/ubuntu/pool/main/i/intel-microcode/
下载最新的 .deb 包并通过安装

sudo dpkg -i intel-microcode_3.20191115.1ubuntu3_amd64.deb  

在我的情况下它是 intel-microcode_3.20191115.1ubuntu3_amd64.deb

PS:ubuntu 18.04 附带 3.20180807a.0ubuntu0.18.04.1 并保持最新,因此不再需要手动安装它。

答案3

虽然@Rajat 有办法做到这一点,但他的链接已经过时了,您可以在这里找到最新的微码:http://ftp.ubuntu.com/ubuntu/pool/main/i/intel-microcode/?C=M;O=D

然后,以你的机器上的 root 身份执行如下操作:

wget http://ftp.ubuntu.com/ubuntu/pool/main/i/intel-microcode/intel-microcode_3.20191115.1ubuntu0.19.10.3_amd64.deb
dpkg -i intel-microcode_3.20191115.1ubuntu0.19.10.3_amd64.deb
reboot

相关内容