这篇文章主要介绍“如何在Linux上安装和更新Intel微码固件”,在日常操作中,相信很多人在如何在Linux上安装和更新Intel微码固件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何在Linux上安装和更新Intel微码固件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
以 root 用户运行下列命令:
# dmesg | grep microcode
输出如下:
Verify microcode update on a CentOS RHEL Fedora Ubuntu Debian Linux
请注意,你的 CPU 在这里完全有可能出现没有可用的微码更新的情况。如果是这种情况,它的输出可能是如下这样的:
[ 0.952699] microcode: sig=0x306a9, pf=0x10, revision=0x1c[ 0.952773] microcode: Microcode Update Driver: v2.2.
对于运行在 x86/amd64 架构的 CPU 上的 Linux 系统,Linux 自带了工具去更改或者部署微码固件。在 Linux 上安装 AMD 或者 Intel 的微码固件的过程如下:
鸿蒙官方战略合作共建——HarmonyOS技术社区
打开终端应用程序
Debian/Ubuntu Linux 用户推输入:sudo apt install intel-microcode
CentOS/RHEL Linux 用户输入:sudo yum install microcode_ctl
对于流行的 Linux 发行版,这个包的名字一般如下 :
microcode_ctl
和 linux-firmware
—— CentOS/RHEL 微码更新包
intel-microcode
—— Debian/Ubuntu 和衍生发行版的适用于 Intel CPU 的微码更新包
amd64-microcode
—— Debian/Ubuntu 和衍生发行版的适用于 AMD CPU 的微码固件
linux-firmware
—— 适用于 AMD CPU 的 Arch Linux 发行版的微码固件(你不用做任何操作,它是默认安装的)
intel-ucode
—— 适用于 Intel CPU 的 Arch Linux 发行版微码固件
microcode_ctl
、linux-firmware
和 ucode-intel
—— Suse/OpenSUSE Linux 微码更新包
警告 :在某些情况下,微码更新可能会导致引导问题,比如,服务器在引导时被挂起或者自动重置。以下的步骤是在我的机器上运行过的,并且我是一个经验丰富的系统管理员。对于由此引发的任何硬件故障,我不承担任何责任。在做固件更新之前,请充分评估操作风险!
在使用 Intel CPU 的 Debian/Ubuntu Linux 系统上,输入如下的 apt 命令/apt-get 命令:
$ sudo apt-get install intel-microcode
示例输出如下:
How to install Intel microcode firmware Linux
你 必须重启服务器以激活微码 更新:
$ sudo reboot
重启后检查微码状态:
# dmesg | grep 'microcode'
示例输出如下:
[ 0.000000] microcode: microcode updated early to revision 0x1c, date = 2015-02-26[ 1.604672] microcode: sig=0x306a9, pf=0x10, revision=0x1c[ 1.604976] microcode: Microcode Update Driver: v2.01 <tigran@aivazian.fsnet.co.uk>, Peter Oruba
如果你使用的是 RHEL/CentOS 系统,使用 yum 命令 尝试去安装或者更新以下两个包:
$ sudo yum install linux-firmware microcode_ctl$ sudo reboot$ sudo dmesg | grep 'microcode'
只有在你的 CPU 制造商建议这么做的时候,才可以使用下列的方法去更新/安装微码,除此之外,都应该使用上面的方法去更新。大多数 Linux 发行版都可以通过包管理器来维护、更新微码。使用包管理器的方法是经过测试的,对大多数用户来说是最安全的方式。
首先通过 AMD 或 Intel 网站 去获取***的微码固件。在本示例中,我有一个名称为 ~/Downloads/microcode-20180108.tgz
的文件(不要忘了去验证它的检验和),它的用途是去防范 meltdown/Spectre
bug。先使用 tar
命令去提取它:
$ mkdir firmware$ cd firmware$ tar xvf ~/Downloads/microcode-20180108.tgz$ ls -l
示例输出如下:
drwxr-xr-x 2 vivek vivek 4096 Jan 8 12:41 intel-ucode-rw-r--r-- 1 vivek vivek 4847056 Jan 8 12:39 microcode.dat-rw-r--r-- 1 vivek vivek 1907 Jan 9 07:03 releasenote
我只在 CentOS 7.x/RHEL、 7.x/Debian 9.x 和 Ubuntu 17.10 上测试了如下操作。如果你没有找到
/sys/devices/system/cpu/microcode/reload
文件的话,更老的发行版所带的更老的内核也许不能使用此方法。参见下面的讨论。请注意,在应用了固件更新之后,有一些客户遇到了系统重启现象。特别是对于那些运行 Intel Broadwell 和 Haswell CPU 的用于客户机和数据中心服务器上的系统。不要在 Intel Broadwell 和 Haswell CPU 上应用 20180108 版本。尽可能使用软件包管理器方式。
检查一下,确保存在 /sys/devices/system/cpu/microcode/reload
:
$ ls -l /sys/devices/system/cpu/microcode/reload
你必须使用 cp 命令 拷贝 intel-ucode
目录下的所有文件到 /lib/firmware/intel-ucode/
下面:
$ sudo cp -v intel-ucode/* /lib/firmware/intel-ucode/
你只需要将 intel-ucode
这个目录整个拷贝到 /lib/firmware/
目录下即可。然后在重新加载接口中写入 1
去重新加载微码文件:
# echo 1 > /sys/devices/system/cpu/microcode/reload
更新现有的 initramfs,以便于下次启动时它能通过内核来加载:
$ sudo update-initramfs -u$ sudo reboot
重启后通过以下的命令验证微码是否已经更新:
# dmesg | grep microcode
到此,关于“如何在Linux上安装和更新Intel微码固件”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。