我在 Debian 主机上使用 libvirt 和 qemu。一台虚拟机定义了一个 9p 挂载点:
<filesystem type='mount' accessmode='mapped'>
<source dir='/mnt/pool/share'/>
<target dir='share'/>
<address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
</filesystem>
默认的 apparmor 配置(显然是由创建的virt-aa-helper
)不允许我在 9p 卷上创建硬链接。
我通过添加以下行来使其工作/etc/apparmor.d/abstractions/libvirt-qemu
"/mnt/pool/share/**" rwl,
此方法可行,但存在以下问题:
- 它允许全部主机读取/写入此目录,而不仅仅是我需要的一个主机
- 它需要编辑定期更新的 conffile,这可能不是一个好主意,因为它使更新 debian 软件包变得更加困难
- 它没有在 libvirt xml 文件中配置,这使得可移植性更加困难,并且需要额外的一步
有没有更好的办法?