Гість KVM не може записати на 9p акцію, що належить не-root


14

Я маю на меті створити повний доступ для запису до 9p для гостя KVM. І хост, і гість мають однакових користувачів / груп з однаковими ідентифікаторами. І хост, і гість повинні мати можливість запису на папку, використовуючи однакові імена користувачів, і я не хочу розрізняти, чи файл написав хост або гість. Процес кв працює як корінь - I набір userі groupдо rootв /etc/libvirt/qemu.conf.

У визначенні гостя для хоста частка визначається таким чином:

<filesystem type='mount' accessmode='passthrough'>
  <source dir='/mnt/storage/data'/>
  <target dir='data'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</filesystem>

У гостя частка монтується як:

mount -t 9p -o rw,trans=virtio,version=9p2000.L,msize=262144 data /mnt/data

Проблема полягає в тому, що користувач root у гості не може писати у файли / папки, що належать некорінному користувачу на хості. Ще дивно, що корінь гостя може перейменовувати та видаляти такі файли. Тобто, коли на хост-машині я створюю файл як некорінний користувач, то я просто не можу редагувати його як корінь гостя, хоча я можу перейменувати та видалити його!

Я також виявив, що там, де папка, створена на хості під користувачем, що не користується коренем, має дозволи, встановлені на 777, корінь гостя може записувати на неї (тобто створювати в ній файли). Однак це не стосується файлів - вони все ще не можуть бути відредаговані незалежно від дозволів.

І хост, і гість мають Linux-сервер 3.2.0-4-amd64 # 1 SMP Debian 3.2.51-1 x86_64 GNU / Linux. У Debian SELinux відключений за замовчуванням, і я не ввімкнув його. Я спробував все три доступних режиму доступу 9p ( passthrough, mappedі squash) - ніякої різниці.

Мені цікаво, чи є щось, що я можу налаштувати, щоб змусити його працювати, чи це просто помилка?

Зауважте, що тут повідомляється про подібну проблему: Читання / запис доступу для прохідних (9p) файлових систем з libvirt / qemu? але на відміну від цього випадку, я маю 100% доступ до запису, де файли, що належать root, це просто некоренні користувацькі файли, які я не можу записати, навіть будучи root на гості.


2
Тільки для інформації, я ніколи не змушував це працювати правильно і натрапив на всі ці самі проблеми. Отже, найновіші впровадження файлової системи p9 застаріли в останніх версіях qemu / libvirt.
Спулер

2
Аналогічно тут. Червоний капелюх, здається, вважає, що 9p не готовий до прайм- тайму .
Діагон

Відповіді:


0

Чи можете ви перевірити додаткові атрибути файлової системи, такі як acl у спільному каталозі? Я підозрюю видачу дозволу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.