Criando links simbólicos dentro de pastas compartilhadas com o sistema host do Windows

0

Então eu tenho um projeto que requer uma versão específica (e modificada) do jdk, que eu recebo como tar.gz .

Estou executando um Kubuntu "zesty" (Ubuntu 17.04) como convidado em um host Win10 (usando o virtualbox) porque o disco único do meu laptop é particionado demais para configurar o boot duplo, infelizmente.

Para economizar espaço e evitar a necessidade de mover arquivos do convidado para o host ou vice-versa, criei uma pasta compartilhada onde guardo a maioria das minhas coisas.

E é nessa pasta que eu tento extrair o jdk.

sudo tar xzf jdk-7u65-linux-x64.tar.gz 

tar: jdk1.7.0_65/bin/ControlPanel: Cannot create symlink to ‘jcontrol’: Read-only file system
tar: jdk1.7.0_65/man/ja: Cannot create symlink to ‘ja_JP.UTF-8’: Read-only file system
tar: jdk1.7.0_65/jre/bin/ControlPanel: Cannot create symlink to ‘jcontrol’: Read-only file system
tar: jdk1.7.0_65/jre/lib/amd64/server/libjsig.so: Cannot create symlink to ‘../libjsig.so’: Read-only file system
tar: Exiting with failure status due to previous errors

Também estou recebendo esses erros quando tento descompactar o tarball com o winrar no host, a menos que eu execute o winrar como administrador. Ainda assim, eu realmente não gosto de fazer isso dessa maneira, porque não tenho idéia se a extração no Windows não vai estragar alguns arquivos para uso no linux.

Existe uma maneira de fazer isso funcionar a partir do sistema convidado linux? E se não, por que não?

Permissões:

user@linux-VB:~$ namei -l ~/SHRD_FLDR
f: /home/user/SHRD_FLDR
drwxr-xr-x root    root    /
drwxr-xr-x root    root    home
drwxr-xr-x user user user
lrwxrwxrwx user user SHRD_FLDR -> /media/sf_SHRD_FLDR/
drwxr-xr-x root    root      /
drwxr-xr-x root    root      media
drwxrwx--- root    vboxsf    sf_SHRD_FLDR
    
por User1291 22.10.2017 / 17:01

1 resposta

0

Certifique-se de que todas as VMs, bem como a GUI do VirtualBox, estejam fechadas.

Vá para onde o VirtualBox está instalado.

No meu caso, isso é C:\Program Files\Oracle\VirtualBox .

Lá, execute o comando

VBoxManage.exe setextradata VM_NAME VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARED_NAME 1

Em que VM_NAME é o nome que você forneceu à VM do VirtualBox e SHARED_NAME é o nome dado à pasta compartilhada quando você a configura.

Por exemplo se eu tiver uma máquina virtual chamada Linux , para a qual eu configurei uma pasta compartilhada SHARED que eu possa acessar com ~/SHARED de dentro do convidado, o comando será

VBoxManage.exe setextradata Linux VBoxInternal2/SharedFoldersEnableSymlinksCreate/SHARED 1

Apesar deste comando - e do jeito que eu entendo, dependendo da sua versão do Windows - você também pode ter que executar o VirtualBox como administrador para poder criar links simbólicos.

Testado com o Virtualbox Version 5.1.22 r115126 (Qt5.6.2) .

    
por User1291 07.11.2017 / 12:27