Ein Ubuntu Server 14.04-Host hostet einen Ubuntu Server 14.04-Gast über libvirt / qemu-kvm. Das System läuft einwandfrei, aber als Gast habe ich Probleme beim Schreiben in einen freigegebenen Ordner ( <filesystem>
), die mich verrückt machen. Beide Maschinen sind relative Vanille-Installationen.
Ich habe den angegebenen Ordner folgendermaßen angehängt:
[host] $ virsh edit guest-vm-name
# ...
<filesystem type='mount' accessmode='mapped'>
<source dir='/data'/>
<target dir='/data'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</filesystem>
# ...
Vom Gast aus mounte ich das Dateisystem wie folgt:
[guest] $ sudo -u www-data mkdir /tmp/mnt
[guest] $ sudo mount -t 9p -otrans=virtio,rw,version=9p2000.L /data /tmp/mnt
Ich benutze den www-data
Benutzer, da dies später der efftive-Benutzer sein wird und Gruppen- und Benutzer-IDs übereinstimmen müssen, wenn p9 verwendet wird. Das bedeutet auch, dass auf dem Host / data (das ist ext4-Partition, LVM auf RAID übrigens) so aussieht
[host] $ ls -lha /data
[host] $ drwxrwxr-x 4 www-data www-data 4.0K Nov 11 08:34 .
[host] $ drwxr-xr-x 24 root root 4.0K Nov 7 16:58 ..
[host] $ drwxr-xr-x 2 www-data www-data 4.0K Nov 11 08:34 jail
# ...
Wenn ich im Gast versuche, auf etwas im freigegebenen Dateisystem zu schreiben, erhalte ich Berechtigungsfehler (unabhängig vom verwendeten Benutzer):
[guest] $ sudo -u www-data touch /tmp/mnt/jail/letmeout
touch: cannot touch ‘/tmp/mnt/jail/letmeout’: Permission denied
Ich kann aber Dateien lesen
[guest] $ cat /tmp/mnt/jail/throughthewindow
Great Weather!
Ich habe verschiedene Dinge ausprobiert, insbesondere:
- Apparmor Service gestoppt und aa-Beschwerde angerufen (ich hoffe, das war effektiv)
- Setzen Sie die Sicherheit auf keine in
/etc/libvirt/qemu.conf
- Setzen Sie Benutzer und Gruppe auf root in
/etc/libvirt/qemu.conf
/ var / log / syslog und dmesg zeigen nichts Verdächtiges an.
Irgendwelche Hinweise?! Vielen Dank.