Usando passagem do sistema de arquivos com convidados do KVM

1

Com um hypervisor 16.04 e um convidado 16.04, gostaria de ter acesso direto ao meu sistema de arquivos host de meus convidados. Eu criei o seguinte elemento dentro da seção :

<filesystem type='mount' accessmode='passthrough'>
  <source dir='/mnt/gsystem/fs'/>
  <target dir='/mnt/fs'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</filesystem>

Após a reinicialização do convidado, o dispositivo PCI no slot nº 3 aparece e eu posso vê-lo da seguinte forma (eu editei outros dispositivos PCI para maior clareza):

# lspci
...
00:03.0 Unclassified device [0002]: Red Hat, Inc Virtio filesystem
...

Mas o sistema de arquivos não está montado e o diretório de destino permanece local para o convidado.

Existe um próximo passo para tomar ou você é um driver na minha VM que está faltando?

    
por AlanObject 13.03.2018 / 19:57

1 resposta

1

Sua sintaxe é usada principalmente para hóspedes do LXC, o KVM é um pouco diferente. Atualize seu XML como abaixo:

<filesystem type='mount' accessmode='passthrough'>
 <source dir='/mnt/gsystem/fs'/>
 <target dir='mymount'/>
</filesystem>

Inicie o guest e adicione manualmente os módulos à inicialização do convidado.

cat >>/etc/modules <<EOF
loop
virtio
9p
9pnet
9pnet_virtio
EOF

Insira manualmente todos esses módulos com

service kmod start

E finalmente tente montar a pasta compartilhada

mount mymount /mnt/fs -t 9p -o trans=virtio

Se estiver funcionando, desmonte e adicione a seguinte linha no seu /etc/fstab para tornar a montagem persistente.

 mymount /mnt/fs            9p             trans=virtio    0       0

Finalmente, tente montá-lo novamente com

mount -a

Fontes: link

    
por olivierb2 13.03.2018 / 21:55