Adiciona partição física à máquina virtual QEMU / KVM no virt-manager

4

Eu segui as instruções desta resposta para uma pergunta relacionada: Adicionar disco físico à máquina virtual KVM

O código resultante no arquivo .xml da VM é o seguinte:

<disk type='block' device='disk'>
  <driver name='qemu' type='raw' cache='none'/>
  <source dev='/dev/disk/by-partuuid/d8b63353-34n6-6587-ac07-810dmf36d544'/>
  <target dev='vdb' bus='virtio'/>
  <boot order='2'/>
  <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
</disk>

Observe como usei /dev/disk/by-partuuid/d8b63353-34n6-6587-ac07-810dmf36d544 para o elemento <source> , em vez de /dev/sda4 .

O que me incomoda é que o meu caso de uso é passar uma partição para o QEMU, em vez de um disco . Instalei o Windows 10 nele, o instalador da Instalação não reconheceria o armazenamento, então tive que carregar o driver viostor do FedoraProject .

A instalação do Windows correu bem e o desempenho é incrível, mas quando a VM é desligada, o sistema host não reconhece o formato da partição.

Achei interessante que o instalador do Windows - com o driver viostor carregado - criou o partições adicionais normalmente requeridas pelo Windows em um disco nu . Em outras palavras, ele criou partições dentro do que é supostamente uma partição . Isso não deveria ser possível, ou foi o que pensei.

/dev/sda4 está presente no host, mas não é reconhecido nem como um sistema de arquivos NTFS (não esperado, na verdade), nem LVM, nem LDM (testado com ldmtool ).

A VM está inicializando corretamente no modo UEFI com o Chipset Q35 .

Pergunta: Meu procedimento para adicionar uma partição ao virt-manager é correto, ou deveria ser feito apenas para discos - e não para partições? Além disso, com qual tipo ou formato de partição acabei?

    
por Marc.2377 21.06.2017 / 04:21

1 resposta

2

A solução parece estar passando todo o dispositivo de bloco , como /dev/sda ou o equivalente de /dev/disk/by-id/ , para a configuração <source dev=''> .

Isso permite que a configuração do Windows veja as partições existentes, incluindo a partição raiz no host.

Não deve haver conflitos, desde que:

  • você não tenta montar / modificar uma partição no guest que já está montado no host; e

  • você não monta / modifica a partição atualmente usada pelo convidado do host, enquanto a VM está ligada.

Em relação ao primeiro ponto, é claro que é necessário desmontar o ESP (EFI System Partition) do host antes de iniciar a VM. Primeiro, escrevi um script para isso e, em seguida, criei uma solução melhor na forma de um gancho de automação do QEMU . Estou disponibilizando no link .

O que é legal sobre isso é que você também pode inicializar o SO virtualizado de forma nativa, como na inicialização dupla, selecionando sua nova entrada no menu de inicialização da placa-mãe.

Não sei exatamente se isso é "suportado". Mas ele está usando há quase um ano, sem nenhum problema.

    
por Marc.2377 20.04.2018 / 04:53