Usando UEFI e ARM no Virt Manager

leandroramos
editado novembro 2019 em Fedora

Referências

Instalando os pacotes necessários

sudo dnf install edk2-ovmf edk2-arm qemu-system-arm

Reinicie o serviço libvirtd

sudo systemctl restart libvirtd


Criando uma máquina com UEFI

Abra o virt-manager e crie uma nova máquina virtual

Prossiga com a criação da máquina virtual. Na última tela da configuração,
selecione "Personalizar a configuração antes da instalação".

Configurando a máquina virtual com UEFI

Na tela de configuração da máquina virtual, na "Visão Geral", selecione
o firmware UEFI x86_64, clique no botão "Aplicar" e em "Iniciar Instalação".

Instalando o sistema na máquina virtual

Agora você pode instalar a máquina virtual normalmente, usando firmware UEFI.

Criando uma máquina virtual de arquitetura ARM

Pelo terminal, entre na pasta onde está a imagem do Fedora ARM e extraia
a imagem.

unxz Fedora-Server-armhfp-31-1.9-sda.raw.xz

Veja o arquivo descompactado

Instale o pacote 'libguestfs-tools' para usar o virt-builder

sudo dnf install -y libguestfs-tools

Extraia o Kernel e o initramfs que serão usados no boot.

virt-builder --get-kernel Fedora-Server-armhfp-31-1.9-sda.raw

Mova os arquivos raw, do Kernel e do initramfs para a pasta de imagens do libvirt

sudo mv Fedora-Server-armhfp-31-1.9-sda.raw vmlinuz-5.3.7-301.fc31.armv7hl \
initramfs-5.3.7-301.fc31.armv7hl.img /var/lib/libvirt/images/

Instale a máquina virtual usando o virt-install

Instale o pacote virt-install

sudo dnf install virt-install

A instalação pela linha de comando, nesse caso, é mais simples do que pela interface gráfica.
Copie e cole o comando abaixo no terminal - Importante: adapte os nomes dos arquivos para os que você estiver usando.
*Mais importante ainda: repare que o sistema é --os-variant fedora30, pois na criação deste tutorial era a última versão disponível. Você deve adaptar o tamanho da memória RAM, no meu caso coloquei 1400MB - (--ram 1400)
O comando demora um certo tempo para ser concluído

sudo virt-install \
    --name Fedora-Server-armhfp-31-1.9-sda --ram 1400 --arch armv7l --machine virt-2.11 --os-variant fedora30 --import \
    --disk /var/lib/libvirt/images/Fedora-Server-armhfp-31-1.9-sda.raw \
    --boot kernel=/var/lib/libvirt/images/vmlinuz-5.3.7-301.fc31.armv7hl,initrd=/var/lib/libvirt/images/initramfs-5.3.7-301.fc31.armv7hl.img,kernel_args="console=ttyAMA0 rw root=LABEL=_/ rootwait"

Abrindo a máquina virtual no virt-manager

Depois da instalação você pode abrir e gerenciar a máquina virtual pela ferramenta virt-manager.

Considerações finais

Se tiverem alguma dúvida ou alguma correção, deixem-me saber através dos comentários :smile:
Abraços!