Posso atualizar meu BIOS dentro de uma VM?

Posso atualizar meu BIOS dentro de uma VM?

Eu tenho um Lenovo Y510P e ele está rodando Linux (Antergos). Eu li que preciso ter o Windows em execução para atualizar o BIOS.

Acho que não, porque é um ambiente em área restrita, mas quero ter certeza porque tive muitos problemas com os menus de inicialização para instalar novos sistemas operacionais.

Responder1

Tecnicamente, sim, é possível. Praticamente, não com nenhuma VM que tentei.

O problema é que você precisa

  1. Saiba em quais dispositivos de hardware o atualizador do BIOS grava. (Como alguns dispositivos NVRAM.)
  2. Informe seu sistema operacional host sobre esse hardware. (Como tê-los como um arquivo em /dev/. Um driver só é necessário para dispositivos aos quais está conectado... como um barramento, por exemplo.)
  3. Faça sua VM passar esses dispositivos para o convidado.

Com o Linux como host, as etapas 1 e 2 devem ser viáveis, se o hardware não for algo proprietário ou muito exótico. (Por exemplo, NVRAM é fácil.) O problema é que nenhuma VM que eu conheça pode passararbitráriohardware. Eles podem fazer USB e PCI e unidades, etc. Mas não qualquer peça aleatória de hardware. Porque, e esta é a minha resposta: o software VMtambémprecisa de uma espécie de “motorista” para saber como realmente fazer a passagem enquanto policia o que é permitido ao cliente.

Então, na prática, existem duas opções:

  1. Hardware que o Linux pode ver como hardware “normal”… Por exemplo, NVRAM pode ser apresentado apenas como um dispositivo de bloco normal que você pode dd. Você não precisa de nenhuma VM e pode fazer a atualização direto do Linux. (Mas tenha cuidado, pois os atualizadores originais do BIOS geralmente fazem algumas verificações muito importantes, como se são realmente compatíveis com o hardware, etc. Caso contrário, você pode acabar com um tijolo.)
  2. Qualquer outra coisa, onde você teria que contribuir com o KVM/qemu e adicionar passagem para seu hardware específico.

TL;DR: Tudo é possível, se você tiver todo o tempo para fazer. A menos que esteja fora do seu horizonte de eventos. ;)

Ou ainda mais curto: Não.

informação relacionada