Сначала немного справочной информации о сервере:
ОС: Debian Linux Squeeze + qemu-kvm версии 1.0 + dfsg-8 ~ bpo60 + 1
Гостевая ОС: Debian Linux Squeeze
Я использую qemu-kvm через libvirt. Я установил 9p VirtFS со следующим в конфигурации гостя XML:
<filesystem type='mount' accessmode='passthrough'>
<source dir='/srv/www'/>
<target dir='wwwdata'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</filesystem>
То есть я хочу передать / srv / www гостевой ОС с помощью тега монтирования wwwdata.
Когда я пытаюсь смонтировать общий ресурс VirtFS из гостевой системы, я получаю сообщение об ошибке:
root@server:~# mount -t 9p -o trans=virtio,version=9p2000.L2 wwwdata /srv/www/
mount: wwwdata: can't read superblock
Я также пробовал virtfs target dir / mount_tag www
вначале. У меня такое же сообщение об ошибке. Однако я смог смонтировать общий ресурс VirtFS с помощью тега монтирования www1111
, или www1
или похожие.
Еще несколько примечаний по этому поводу. dmesg не показывает ничего полезного ни в гостевой, ни в хост-системе. Единственный знак - это запись в гостевом dmesg:
[ 36.054936] Installing v9fs 9p2000 file system support
Кто-нибудь знает, как заставить это работать правильно? Google не дает никакой полезной информации по этому вопросу; Я пробовал несколько поисков.
Вам нужно переопределить информацию об адресе PCI? Из документации QEMU:
Libvirt также автоматически назначит PCI-адрес для устройства 9p, хотя при желании его можно изменить.
Если вам на самом деле не нужно это переопределение, пытались ли вы удалить конфигурацию гостевого XML только
<filesystem type='mount' accessmode='passthrough'>
<source dir='/srv/www'/>
<target dir='wwwdata'/>
</filesystem>