J'essaie de monter un dossier partagé à l'aide de qemu-kvm / 9p et cela ne fonctionne pas si je l'ajoute au fichier fstab. Je reçois une erreur au démarrage indiquant que le périphérique ne peut pas être monté, mais après le démarrage, si je lance "mount -a", le périphérique sera monté.
ligne fstab:
src_mnt /src 9p trans=virtio 0 0
De dmesg je peux voir:
[ 7.606258] 9p: Could not find request transport: virtio
Et quelques lignes plus tard, je vois les entrées "virtio-pci". Je ne sais pas comment je différerais le montage jusqu'à ce que cet appareil soit disponible.
ideal
solution. Le problème est que le module n'est pas monté pendant le montage du système de fichiers, votre solution est de l'ajouter à la liste des modules chargés au moment du montage.Sur Ubuntu 14.04, seul le
9pnet_virtio
module doit être préchargé conformément à la réponse de bhassel .Le dmesg quelques lignes avant celui cité indique que les deux autres sont déjà chargés mais ne peuvent pas trouver le transport requis.
Testé avec l'invité Ubuntu 14.04 sur qemu / KVM sur openSUSE 13.2.
la source
Le problème ici est de savoir comment le montage virtio est configuré sur l'hôte. Il existe deux façons de résoudre ce problème.
Solution 1: utiliser mappé au lieu du transport
Cela fonctionne, mais tous les fichiers appartiendront à l'utilisateur que libvirt exécute en tant que. Cela ne fonctionne pas bien pour les systèmes de fichiers tmp ou log.
Solution 2: exécutez libvirt en tant que root et utilisez le passthrough
Décommentez ensuite ou ajoutez:
Redémarrez l'hôte ou redémarrez tous les processus libvirt et qemu / kvm, et utilisez le passthrough:
Bien qu'il puisse y avoir des implications de sécurité pour l'hôte, cela rend l'id: gid des fichiers sur l'hôte identique à celui de l'invité, ce qui fonctionne bien pour les systèmes de fichiers log et tmp. C'est justement ce que je fais dans cette situation.
la source