Am 14.05.24 um 12:54 schrieb Markus Frank: > Signed-off-by: Markus Frank <m.fr...@proxmox.com> > --- > qm.adoc | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-- > 1 file changed, 92 insertions(+), 2 deletions(-) > > diff --git a/qm.adoc b/qm.adoc > index 42c26db..755e20e 100644 > --- a/qm.adoc > +++ b/qm.adoc > @@ -1081,6 +1081,95 @@ recommended to always use a limiter to avoid guests > using too many host > resources. If desired, a value of '0' for `max_bytes` can be used to disable > all limits. > > +[[qm_virtiofs]] > +Virtio-fs > +~~~~~~~~~ > + > +Virtio-fs is a shared file system that enables sharing a directory between > host > +and guest VM. It takes advantage of the locality of virtual machines and the > +hypervisor to get a higher throughput than the 9p remote file system > protocol.
A bit more general would be: "higher throughput than network-based protocols, like the 9p remote file system protocol." > + > +To use virtio-fs, the https://gitlab.com/virtio-fs/virtiofsd[virtiofsd] > daemon > +needs to run in the background. In {pve}, this process starts immediately > before > +the start of QEMU.> + > +Linux VMs with kernel >=5.4 support this feature by default. > + > +There is a guide available on how to utilize virtio-fs in Windows VMs. > +https://github.com/virtio-win/kvm-guest-drivers-windows/wiki/Virtiofs:-Shared-file-system > + > +Known Limitations > +^^^^^^^^^^^^^^^^^ > + > +* Virtiofsd crashing means no recovery until VM is fully stopped and > restarted. > +* Virtiofsd not responding may result in NFS-like hanging access in the VM. > +* Memory hotplug does not work in combination with virtio-fs (also results in > +hanging access). > +* Live migration does not work. > +* Windows cannot understand ACLs. Therefore, disable it for Windows VMs, > +otherwise the virtio-fs device will not be visible within the VMs. > + > +Add Mapping for Shared Directories > +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > + > +To add a mapping for a shared directory, either use the API directly with > +`pvesh` as described in the xref:resource_mapping[Resource Mapping] section: There is an "either" in the sentence above, but then there is no "or". > + > +---- > +pvesh create /cluster/mapping/dir --id dir1 \ > + --map node=node1,path=/path/to/share1 \ > + --map node=node2,path=/path/to/share2,submounts=1 \ > + --xattr 1 \ > + --acl 1 > +---- > + > +The `acl` parameter automatically implies `xattr`, that is, it makes no > +difference whether you set `xattr` to `0` if `acl` is set to `1`. > + > +Set `submounts` to `1` when multiple file systems are mounted in a shared > +directory to prevent the guest from creating duplicates because of file > system > +specific inode IDs that get passed through. > + > + > +Add virtio-fs to a VM > +^^^^^^^^^^^^^^^^^^^^^ > + > +To share a directory using virtio-fs, add the parameter `virtiofs<N>` (N can > be > +anything between 0 and 9) to the VM config and use a directory ID (dirid) > that > +has been configured in the resource mapping. Additionally, you can set the > +`cache` option to either `always`, `never`, or `auto` (default: `auto`), > +depending on your requirements. How the different caching modes behave can be > +read at https://lwn.net/Articles/774495/ under the title "Caching Modes". To s/title/section/ ? > +enable writeback cache set `writeback` to `1`. > + _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel