С 16,04 гипервизорами и 16,04 гостями я хотел бы прямой доступ к своей файловой системе хоста от моих гостей. Я создал следующий элемент в разделе:
<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>
После перезагрузки гостя обнаруживается устройство PCI в слоте № 3, и я вижу его следующим образом (я вырезал другие устройства PCI для ясности):
# lspci
...
00:03.0 Unclassified device [0002]: Red Hat, Inc Virtio filesystem
...
Но файловая система не смонтирована, и целевой каталог остается локальным для гостя.
Существует ли следующий шаг, который возьмет, или действительно ли тебя драйвер в моем VM, который я пропускаю?
Вы синтаксис главным образом используется для гостя LXC, KVM, несколько отличаетесь. Обновите свой XML как рев:
<filesystem type='mount' accessmode='passthrough'>
<source dir='/mnt/gsystem/fs'/>
<target dir='mymount'/>
</filesystem>
Запустите Вас гость и вручную добавьте модули к гостевой начальной загрузке.
cat >>/etc/modules <<EOF
loop
virtio
9p
9pnet
9pnet_virtio
EOF
Вручную вставьте все те модули с
service kmod start
И наконец попытайтесь смонтировать совместно используемую папку
mount mymount /mnt/fs -t 9p -o trans=virtio
Если это работает, umount, и добавьте следующую строку в Ваш /etc/fstab
сделать монтирование персистентным.
mymount /mnt/fs 9p trans=virtio 0 0
Наконец попытайтесь смонтировать его снова с
mount -a
Источники: http://rabexc.org/posts/p9-setup-in-libvirt