постоянное обновление микрокода в Linux

Я просто попытался обновить микрокод для моего процессора Intel Core i3-3217U, следуя инструкциям от Intel. Я нахожусь на Linux Mint Debian edition 2 (ядро 3.16.0-5-amd64).

что я сделал:

  • есть /sys/devices/system/cpu/microcode/reload
  • нет /lib/firmware/intel-ucode, только /lib/firmware/intel. Я все равно добавил папку из загруженного пакета.
  • согласно инструкции, как Су и казнен

    echo 1 > /sys/devices/system/cpu/microcode/reload
    

cat /proc/cpuinfo | grep microcode дает мне 0x1f, которая является обновленной версией-но только до тех пор, пока система работает. После перезагрузки я вернулся к 0x12.

как я могу сделать обновление постоянное?

24
задан ccprog
04.02.2023 7:37 Количество просмотров материала 2989
Распечатать страницу

4 ответа

вы не можете сделать обновление микрокода Intel постоянным, оно должно загружаться после каждой загрузки. Микрокод хранится в энергозависимой оперативной памяти процессора.

2
отвечен Johan Myréen 2023-02-05 15:25

в качестве промежуточного решения, пока обновление микрокода не портировано в Debian, вы можете добавить "echo 1 > /sys/devices/system/cpu/microcode /reload" в/etc / rc.локальный после установки обновления микрокода в соответствии с инструкциями Intel. Это довольно позднее исправление, но, вероятно, хорошо, если Вы доверяете своей среде загрузки:)

2
отвечен port443 2023-02-05 17:42

я обнаружил, что могу загрузить микрокод на начальный ramdisk, используя код из пакета debian intel-microcode. В настоящее время на более старую версию прошивки, но они могут быть переопределены.

после установки пакета, я вручную удалил все файлы в /lib/firmware/intel-ucode и заменил их новыми версиями из загрузки Intel. После этого я мог обновить initrd.img-<kernel version> С

update-initramfs -u

grub-mkconfig также будет выполнять этот.

как я понимаю,intel-ucode.img упомянутый в другом ответе будет так называемым "ранним архивом initramfs". Похоже, что скрипт крюка initramfs-tools, который входит в пакет, сам выбирает, помещает ли он модуль обновления в отдельный .img или в основной initrd.НВФ.

изменить: кажется, новые версии микрокода уже приземлился в нестабильный пакет. Зависимости не изменяются, поэтому они могут работать Debian stretch (или jessie, на котором я все еще нахожусь.) Я подозреваю, что пройдет всего несколько дней, прежде чем новая версия пакета будет перенесена. Тогда установки будет достаточно.

1
отвечен ccprog 2023-02-05 19:59

обновления микрокода применяются во время загрузки, и, таким образом, должны быть добавлены в загрузчик, например, GRUB2 или systemd-boot. Говоря более конкретно, / boot / intel-ucode.img (или везде, где этот файл находится в вашей системе) должны быть добавлены в качестве первого образа initrd вашего процесса загрузки (но он должен не заменить обычное изображение initrd). После того, как пакет обновления микрокода установлен, сценарий grub-mkconfig обычно заботится об этом самостоятельно, но вы можете проверить, если файл /boot/grub/с жратвы.файл cfg имеет аналогичную строку:

initrd  /intel-ucode.img /initramfs-linux.img

если нет, вы можете либо переустановить пакет микрокода, либо запустить скрипт grub-mkconfig вручную.

0
отвечен kori 2023-02-05 22:16

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх