Permissões de pasta compartilhada do Virtualbox

429

Estou usando o Windows e o Virtualbox com RedHat, simplificando: criei uma pasta compartilhada para poder usar o Eclipse no meu sistema operacional Windows e fazer alguns testes no Linux.

No entanto, não consigo acessar a pasta compartilhada com meu usuário, entrei com root e usei chmod 777e até mudei meu usuário para o grupo da pasta.

O que quer que eu faça, o resultado é o mesmo:

/media/sf_sharedFolder/: Permission denied

O que eu posso fazer? Como posso acessar a pasta compartilhada com meu usuário?

SaintLike
fonte

Respostas:

854

Adicione-se ao vboxsfgrupo na VM convidada.

Solução 1

Corra sudo adduser $USER vboxsfdo terminal.
(Em Suse é sudo usermod --append --groups vboxsf $USER)

Para entrar em vigor, você deve sair e, em seguida, fazer login, ou talvez seja necessário reiniciar.

Solução 2

Edite o arquivo /etc/group(você precisará de privilégios de root). Procure a linha vboxsf:x:999e adicione no final :yourusername- use esta solução se você não tiver o sudo.

Para entrar em vigor, você deve sair e, em seguida, fazer login, ou talvez seja necessário reiniciar.

Constantin
fonte
97
FWIW, sair e entrar é suficiente para que a alteração entre em vigor.
3c71 21/02
12
Obrigado, estava faltando a parte do reinício, para mim.
Pedro Reis
5
FWIW, como você já está na linha de comentários, não é necessário sair e fazer login novamente. Simplesmente desmonte o compartilhamento e monte-o novamente. Host VirtualBox> Dispositivos> Pasta compartilhada> passe o mouse sobre a pasta que você compartilhou para ver as informações da dica de ferramenta. Por exemplo: sudo mount -t vboxsf VboxSharedFolderName /media/VboxSharedFolderName(esse recurso requer acréscimos de convidados).
firepol 27/02
10
Eu uso o Ubuntu 17.04 como convidado e o Windows 10 como sistema operacional host (ambos de 64 bits) e, por algum motivo, não funcionou até reiniciar o convidado. Eu usei a Solução 2. #
1128 Alex Alex
14
O mesmo resultado que o @Alex aqui, usando o Win7 como host e o Ubuntu 17.04 como convidado, adicionar usuário ao vboxsf e o login / logout não foi suficiente, a reinicialização completa da máquina virtual foi necessária para que as permissões entrassem em vigor.
Hugh Nolan
193

Tente isto (na máquina convidada . Ou seja, o sistema operacional executando na caixa Virtual):

sudo adduser your-user vboxsf

Agora, reinicie o sistema operacional em execução na caixa virtual.

aflorezd
fonte
8
Muito obrigado!! Funcionou muito bem. A única coisa a acrescentar é que eu tive que reiniciar o sistema operacional (não tente apenas loggin off mas poderia ser suficiente)
Osmar
2
Não é necessário fazer logoff / logon, su - $ USER é suficiente. (para os programas iniciados a partir do novo shell, claro.)
TZP
2
Para o que eu queria fazer, era necessário reiniciar. É apenas mais fácil reiniciar se você quiser que seja auto-mágico e não baseado na sua montagem manual.
J. Martin
52

Isso também funciona

sudo usermod -aG <group> <user>

Em seguida, reinicie o vm

GEverding
fonte
1
Não é necessário reiniciar o VM, faça o login e voltar a ligar
ivandov
8
No meu sistema, era necessário reiniciar por algum motivo.
Tensigh 7/09/18
1
Eu segundo @ Tensigh. Embora meu usuário tenha sido exibido em / etc / group, ele nunca apareceu ao digitar groups. Eu tive que reiniciar a VM.
James Shrum
38

Para os verdadeiramente preguiçosos (sem digitação, apenas copiar e colar totalmente fáceis):

sudo usermod -aG vboxsf $USER

Efetue logout e logon novamente para ativar a alteração.

Sei que é uma solução "eu também", mas sou verdadeiramente preguiçosa e não encontrei nenhuma outra solução para apelar à minha apatia inata ... :)

ISparkes
fonte
2
Sair não ajuda, tenho que reiniciá-lo.
CodyChan
É necessário reiniciar o uso acima no VirtualBox 6.1 usando o Ubutun 18.04.xLTS
crajun 14/02
10

Para VirtualBox (5.0.24) Host = Mac (El Capitan) e Guest = RHEL (7.2)

Inicie sua RHEL Guest VM e abra um terminal. Verifique se você possui as Ferramentas do desenvolvedor instaladas.

sudo yum groupinstall 'Developer Tools'

E o pacote de cabeçalhos do kernel para que o script Guest Additions possa atualizar seu kernel.

sudo yum install kernel-devel*

Depois de instalar os pré-requisitos, é hora de instalar as adições de convidados. Com sua VM em execução selecionada, vá para o menu VirtualBox e selecione Dispositivos -> Inserir imagem do CD de adições de convidados ...

insira a descrição da imagem aqui

Aguarde alguns segundos para que a montagem ocorra e o script de instalação comece. Depois que eles clicarem no botão "Executar" na caixa de diálogo exibida na sua VM convidada.

Depois que o script terminar, clique com o botão direito do mouse no ícone do CD na área de trabalho e escolha Ejetar. Em seguida, encerre a VM convidada.

Crie a pasta Compartilhada no seu sistema Host usando o Terminal, eu geralmente a coloco na minha pasta Documentos e verifique se o usuário pode acessá-la.

sudo mkdir ~/Documents/RhelShared
sudo chmod 755 <user> ~/Documents/RhelShared

No Oracle VM Virtual Box Manager, selecione sua VM e clique no elemento de configuração "Pastas compartilhadas". Na próxima caixa de diálogo, clique no ícone Adicionar pasta à direita da lista de pastas.

Em seguida, na janela pop-up, selecione a Pasta Host que você acabou de criar como Caminho da Pasta e atribua a ela um Nome de Pasta que será usado pela VM Convidada, marque também a caixa de seleção "Montagem Automática".

insira a descrição da imagem aqui

Depois de reiniciar a VM Convidada, inicie um terminal no Host e verifique se o usuário associado ao processo em execução do VirtualBox Guest é seu usuário, muito provavelmente, ou em um grupo com acesso à pasta Compartilhada.

ps aux | grep VirtualBoxVM

Em seguida, conforme várias respostas anteriores em um terminal na VM convidada, adicione seu usuário ao grupo vboxsf.

sudo usermod -a -G vboxsf <user>

Efetue logout e logon novamente para receber a alteração.

A pasta compartilhada agora deve estar disponível e acessível como sf_rhelshared, supondo que você tenha usado os mesmos nomes que eu fiz na janela pop-up acima.

TJA
fonte
2

Para esclarecer a última postagem:

O comando VBoxManage é:

VBoxManage setextradata <VM_NAME> VBoxInternal2/SharedFoldersEnableSymlinksCreate/<SHARE_NAME> 1
Ian Owens
fonte
1

O problema é que as permissões da pasta compartilhada estão definidas para não permitir links simbólicos por padrão. Você pode habilitá-los em algumas etapas fáceis.

  1. Desligue a máquina virtual.
  2. Anote o nome da sua máquina em Machine > Settings > General > Name
  3. Anote o nome da pasta compartilhada em 'Máquina> Configurações> Pastas compartilhadas`
  4. Encontre o diretório raiz do VirtualBox e execute o seguinte comando. VBoxManage setextradata "" VBoxInternal2 / SharedFoldersEnableSymlinksCreate / 1
  5. Inicie a máquina virtual e a pasta compartilhada agora permitirá links simbólicos.
Andy Jenkins
fonte
1
sudo adduser xxxxxxx vboxsf

onde xxxxxx é o nome da sua conta de usuário. Saia e faça login novamente no Ubuntu.

Devesh Sharma
fonte
Ou simplesmente "sudo adduser $ USER vboxsf" e deixe o nome de usuário ser lido automaticamente no sistema
Kaan Oğuzhan
-2

Após adicionar o usuário ao grupo vboxsf, pode ser necessário sair completamente do gnome / xfce / ??? sessão, porque alguém há muito tempo decidiu que a afiliação de grupo deveria ser armazenada em cache no primeiro login no sistema de janelas.

Ou vá para a velha escola:

% newgrp vboxsf

em qualquer shell que você deseja usar para acessar a pasta. Felizmente, o newgrp consulta a lista de grupos por si mesmo e não usa os valores em cache. Você ainda precisará sair e fazer login novamente para acessar a pasta a partir de algo que não seja um shell.

Don Christensen
fonte
-4

Na minha experiência pessoal, é difícil habilitar pastas compartilhadas no VirtualBox, mas é possível. Eu tenho uma máquina virtual convidada debian Buster instalada no meu host do Windows 10.

Não reconheço exatamente o que fez, mas lembro que fui ao defensor do Windows, meu antivírus, para ver se eles reconheciam o VirtualBox como um programa e não como um vírus. Depois disso, pressionei o botão direito do mouse no arquivo do documento e permiti compartilhar a pasta, cliquei em alguns botões e aceitei compartilhar com grupos e com o usuário muy no Windows 10.

Além disso, encontrei uma página da Web do Windows sobre algo como máquinas virtuais das quais não me lembro bem, mas isso me levou a um painel e tive que mudar três coisas clicando duas vezes; assim, quando atualizo o Windows, ele reconhece minha máquina virtual. Além disso, no muy debian, no terminal, usando algumas linhas de comando, o muy VirtualBox reconheceu meu usuário dando permissões, com base em algumas informações nos fóruns do Ubuntu. Coloquei tudo o que me lembro.

Trabalhador
fonte