Esta é a opção: -o default_permissions
.
guestmount --fuse-help
:
...
-o default_permissions enable permission checking by kernel
Dir criado dentro de um loop fs nega acesso, mas tem permissões corretas.
init.sh - cria uma imagem fs e monta-a (os IDs de usuário e grupo são 1000):
#!/bin/bash
mkdir -p out-dir
dd if=/dev/zero of=out-dir.img bs=1024 count=125
/sbin/mkfs.ext4 out-dir.img
guestmount -o uid=$(id -u) -o gid=$(id -g) -a out-dir.img -m/dev/sda out-dir
create.sh - cria um diretório e faz cd
:
#!/bin/bash
mkdir -m 700 out-dir/test
cd out-dir/test
O cd
dá:
./create.sh: line 4: cd: out-dir/test: Permission denied
Então, ls -lan out-dir
:
drwxr-xr-x 4 1000 1000 1024 Mar 21 15:27 .
drwxrwxr-x 3 1000 1000 4096 Mar 21 15:27 ..
drwx------ 2 1000 1000 12288 Mar 21 15:27 lost+found
drwx------ 2 1000 1000 1024 Mar 21 15:27 test
Como estabelecer o mapeamento correto?
Tags permissions mount fuse loop-device linux