Como alterar o proprietário do diretório linux montado de uma pasta compartilhada VMWare?

1

Meu sistema operacional host é o Windows 10 , minha máquina virtual é o Ubuntu Mate 16 . A versão VMWare é 12.5
O caminho de montagem é assim: / mnt / hgfs / {mysharedfolder}.
E é definido como ' root ' usuário / grupo por padrão. Quero alterá-lo para " www-data ".

O problema é que nenhum dos métodos propostos na Internet está trabalhando para alterar a propriedade da pasta compartilhada. Aparentemente, com a última versão, eles mudaram alguma coisa.

Isso é o que eu tentei até agora:

  • em ' etc / init.d ' editei o arquivo ' vmware-tool s':
    # Mount all hgfs filesystems

    vmware_mount_vmhgfs() {
      if [ "'is_vmhgfs_mounted'" = "no" ]; then
        if [ "'vmware_vmhgfs_use_fuse'" = "yes" ]; then
          mkdir -p $vmhgfs_mnt
          vmware_exec_selinux "$vmdb_answer_BINDIR/vmhgfs-fuse \
             -o subtype=vmhgfs-fuse,allow_other,uid=33,gid=33 $vmhgfs_mnt"
        else
          vmware_exec_selinux "mount -t vmhgfs .host:/ $vmhgfs_mnt -o uid=33,gid=33"
        fi
      fi
    }
  • tentou editar diretamente ' / etc / fstab ' e o sistema operacional não inicializou mais a GUI, tive que remover a linha da linha de comando.

    .host:/{shared-folder} /{path-to-mount-on} vmhgfs defaults, ttl = 5, uid = 33, gid = 33 0 0

  • Tentativas ingênuas como desmontar manualmente e remontar o caminho usando chown ou chmod são inúteis, já que o sistema reverte as alterações correspondentes imediatamente. Também tentei montar com isso:

    vmhgfs-fusível .host: / / mnt / hgfs -o uid = 1000 -o gid = 1000 -o umask = 0033

Existe alguma solução atualizada para isso?

    
por Anil Bakirci 21.05.2017 / 02:25

1 resposta

0

Obrigado pela sua postagem. Recentemente, comecei a ter o mesmo problema.

Meu sistema operacional host é o MacOS, minha máquina virtual é o Debian GNU / Linux 9 (teste). A versão do VMWare é Fusion 8.5. O caminho de montagem é assim: / mnt / hgfs / {mysharedfolder}.

Minha solução anterior era editar / etc / fstab para ter uid, gid set como você mostra na sua segunda opção. Isso funcionou sem problemas até um mês atrás, depois de uma atualização rotineira do Debian. Em seguida, a máquina virtual não inicializaria. Então eu também tive que remover essa linha do / etc / fstab.

Em seguida atualizei o vmware para o Fusion 8.5 e o Debian de estável para teste. O mesmo problema permaneceu. Se eu usar as ferramentas mais recentes do VMware (10.1.6), os arquivos compartilhados serão montados na inicialização, mas com o uid errado, gid. Se eu, em vez disso, usar o open-vm-tools (pacote debian, como recomendado pelo vmware), os arquivos compartilhados não serão montados.

Eu apenas tentei sua primeira solução (edite /etc/init.d/vmware-tools). Isso funcionou para mim. Obrigado!

Se não funcionar para você, talvez o ubuntu não esteja rodando este script na inicialização.

Esta linha (ou algo similar) funciona se você tentar na linha de comando?

sudo vmhgfs-fusível .host: / {nome} / mnt / hgfs / {nome} -o não vazio, rw, uid = 1000, gid = 1000

O -o nonempty é necessário para tentar montar um compartilhamento que já esteja montado pelo sistema. Eu não acho que você quer usar este comando como a solução, mas apenas para diagnosticar se isso mudaria com sucesso o seu uid, gid. Se isso acontecer, você pode precisar descobrir o script que o Ubuntu está realmente usando na inicialização. Se o comando não funcionar, não tenho certeza do que sugerir. Não consegui obter um comando de montagem para funcionar.

    
por 04.06.2017 / 14:41