Lien :
https://dev.to/franzwong/mount-share-folder-in-qemu-with-same-permission-as-host-2980
util01@station40:~$ id
uid=1000(util01) gid=33(www-data) groups=33(www-data),4(adm),20(dialout),24(cdrom),27(sudo),30(dip),46(plugdev),109(kvm),120(lpadmin),136(libvirt),998(docker),999(sambashare)
util01@station40:~$ mkdir -p shared_dir
util01@station40:~$ cd shared_dir/
util01@station40:~/shared_dir$ echo "testtest" >> test.txt
util01@station40:~/shared_dir$ ls -l
total 4
-rw-r--r-- 1 util01 www-data 9 août 20 10:34 test.txt
util01@station40:~/shared_dir$
Ajouter :
-virtfs local,path=/home/util01/shared_dir,mount_tag=shared_dir,security_model=mapped-xattr
Soit :
#!/bin/bash
MACADDRESS=`printf 'DE:AD:BE:EF:%02X:%02X' $((RANDOM%256)) $((RANDOM%256))`
echo "Initialize Host Machine"
H_DESKTOP=lubuntu
H_DISTRIB=lubuntu
H_VERSION=2204
H_PROC=64
echo "Initialize Guest Hardware"
RAM=4096
CORE=2
echo "Configure Virtual Machine"
PART=part2
QEVER=9.0.2
G_DISTRIB=lubuntu
G_VERSION=2204
G_PROC=64
TAP=0
APP=base
VDA=vda
echo "Launch Virtual Machine"
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:../host/$H_DISTRIB/$H_VERSION/$H_PROC/qemu/$QEVER/lib/:../host/$H_DISTRIB/$H_VERSION/$H_PROC/qemu/$QEVER/qemu-$QEVER/pc-bios/ \
../host/$H_DISTRIB/$H_VERSION/$H_PROC/qemu/$QEVER/qemu-$QEVER/build/qemu-system-x86_64 \
-drive file=../../$PART/guest/$G_DISTRIB/$G_VERSION/$G_PROC/$APP/vd/$VDA.qcow2,format=qcow2,index=0,media=disk \
-enable-kvm -m $RAM \
-display sdl,window-close=off \
-device AC97 \
-smp $CORE \
-rtc base=localtime \
-netdev tap,id=mynet0,ifname=tap0,script=no,downscript=no \
-device e1000,netdev=mynet0,mac=52:55:00:d1:55:01 \
-bios ../host/$H_DISTRIB/$H_VERSION/$H_PROC/qemu/$QEVER/qemu-$QEVER/pc-bios/bios-256k.bin \
-name Lubuntu2204 \
-virtfs local,path=/home/util01/shared_dir,mount_tag=shared_dir,security_model=mapped-xattr
util01@station01:~$ sudo useradd -m util02
util01@station01:~$ sudo passwd util02
util02@station01:~$ id
uid=1001(util02) gid=1001(util02) groups=1001(util02)
util02@station02:~$ mkdir -p shared
util02@station02:~$ sudo mount -t 9p -o trans=virtio,version=9p2000.L shared_dir ~/shared
util02@station02:~$ ls -l
total 4
-rw-r--r-- 1 util01 www-data 9 août 20 10:34 test.txt
util02@station01:~$ ls -l -d ~/shared/
drwxr-xr-x 2 util01 www-data 4096 août 20 10:34 /home/util02/shared/
util02@station01:~$ cd shared/
util02@station01:~/shared$
util02@station01:~/shared$ echo "test01test01" >> test01.txt
bash: test01.txt: Permission denied
util02@station01:~$ sudo apt-get install bindfs
bindfs --map=<uid de l'hôte>/<uid de l'invité>:@<nom du groupe de l'hôte>/@<guid de l'invité> ~/shared ~/shared
Soit :
util02@station01:~$ sudo bindfs --map=1000/1001:@www-data/@1001 ~/shared ~/shared
util02@station01:~$ ls -l -d ~/shared/
drwxr-xr-x 2 util02 util02 4096 août 20 11:31 /home/util02/shared/
util02@station01:~$ echo "test01test01" >> ~/shared/test01.txt
util02@station01:~$ ls -l ~/shared/test01.txt
-rw-rw-r-- 1 util02 util02 13 août 20 11:44 /home/util02/shared/test01.txt
util01@station40:~$ ls -l ~/shared_dir/
total 12
-rw------- 1 util01 www-data 13 août 20 11:44 test01.txt
-rw-r--r-- 1 util01 www-data 9 août 20 10:34 test.txt