Você não pode tornar a atualização do microcódigo da Intel permanente, ela deve ser carregada após cada inicialização. O microcódigo é armazenado em RAM volátil na CPU.
Eu apenas tentei atualizar o microcódigo para o meu processador Intel Core i3-3217U seguindo as instruções da Intel . Eu estou no Debian Mint Debian edição 2 (kernel 3.16.0-5-amd64).
O que eu fiz:
/sys/devices/system/cpu/microcode/reload
/lib/firmware/intel-ucode
, apenas /lib/firmware/intel
. Eu adicionei a pasta de qualquer maneira a partir do pacote baixado. Como por instrução, como SU eu executei
echo 1 > /sys/devices/system/cpu/microcode/reload
cat /proc/cpuinfo | grep microcode
me fornece 0x1f
, que é a versão atualizada, mas apenas enquanto o sistema estiver em execução. Depois de uma reinicialização, volto para 0x12
.
Como posso tornar a atualização permanente?
Você não pode tornar a atualização do microcódigo da Intel permanente, ela deve ser carregada após cada inicialização. O microcódigo é armazenado em RAM volátil na CPU.
Como uma solução intermediária enquanto a atualização do microcódigo não é portada para o Debian, você pode adicionar o "echo 1 > / sys / devices / system / cpu / microcode / reload" ao /etc/rc.local depois de instalar a atualização do microcódigo por instruções da Intel. Este é um patch bastante tardio, mas provavelmente OK se você confiar em seu ambiente de inicialização:)
Descobri que posso carregar o microcódigo no ramdisk inicial, aproveitando o código do pacote debian intel-microcode . Isso está atualmente em uma versão mais antiga dos microcódigos, mas eles podem ser substituídos.
Depois de instalar o pacote, removi manualmente todos os arquivos em /lib/firmware/intel-ucode
e os substituímos pelas novas versões do download da Intel. Depois disso, eu pude atualizar initrd.img-<kernel version>
com
update-initramfs -u
grub-mkconfig
também executaria isso.
Pelo que entendi, o intel-ucode.img
mencionado na outra resposta seria o chamado "arquivo initramfs inicial". Parece que o script de gancho initramfs-tools que está incluído no pacote escolhe para si mesmo se ele coloca o módulo de atualização em um .img separado ou no initrd.img principal.
Editar: Parece que as novas versões de microcódigo já chegaram ao pacote instável . Dependências são inalteradas, então elas podem funcionar no Debian stretch (ou jessie, que eu ainda estou usando). Eu suspeito que levará apenas alguns dias até que a nova versão do pacote seja portada. Então, a instalação será suficiente.
Atualizações de microcódigo são aplicadas durante a inicialização e, portanto, devem ser adicionadas ao carregador de inicialização, por exemplo, GRUB2 ou systemd-boot. Mais especificamente, /boot/intel-ucode.img (ou onde quer que este arquivo esteja localizado em seu sistema) deve ser adicionado como a primeira imagem initrd de seu processo de inicialização (mas não deve / strong> substitua sua imagem normal do initrd). Uma vez que o pacote de atualização do microcódigo é instalado, o script grub-mkconfig geralmente cuida disso sozinho, mas você pode verificar se o arquivo /boot/grub/grub.cfg tem uma linha similar:
initrd /intel-ucode.img /initramfs-linux.img
Caso contrário, você pode reinstalar o pacote do microcódigo ou executar o script grub-mkconfig manualmente.
Tags debian cpu linux-mint intel-core-i3