Graças a uma dica do @dirkt acima, consegui determinar que vmhgfs-fuse
não permite o acesso root, por padrão. Do vmhgfs-fuse --help
output:
-o allow_other allow access to other users
-o allow_root allow access to root
A tentativa de -o allow_root
falhou inicialmente:
$ vmhgfs-fuse -o allow_root ".host:/$(vmware-hgfsclient)" ~/Shared
fusermount: option allow_other only allowed if 'user_allow_other' is set in /etc/fuse.conf
E, com certeza, /etc/fuse.conf
tem user_allow_other
comentou:
# Allow non-root users to specify the allow_other or allow_root mount options.
#user_allow_other
Mas a execução de vmhgfs-fuse
como root finalmente funcionou:
$ sudo vmhgfs-fuse -o allow_other ".host:/$(vmware-hgfsclient)" ~/Shared
$ sudo mount -t ext3 -o loop,ro ~/Shared/linux-ext3.img /mnt
$ ls /mnt/
...
Observe o uso de allow_other
not allow_root
. Usar sudo
plus -o allow_root
é redundante, pois vmhgfs-fuse
concede acesso apenas ao usuário que executa o comando. No entanto, sudo
sozinho significa apenas root
pode acessar ~/Shared
, mas não seu usuário comum. Usar sudo
plus -o allow_other
permite que o root e seu usuário normal (e qualquer outra pessoa) acessem ~/Shared
. Pode ser mais seguro, em um ambiente verdadeiramente compartilhado, habilitar user_allow_other
em /etc/fuse.conf
para que você possa usar -o allow_root
e evitar executar vmhgfs-fuse
com sudo
.
E, para registro, desmontar tudo isso:
$ sudo umount /mnt
$ sudo fusermount -u ~/Shared