Virtualbox permisos de carpeta compartida

429

Estoy usando Windows y Virtualbox con RedHat, en pocas palabras: he creado una carpeta compartida para poder usar Eclipse en mi sistema operativo Windows y hacer algunas pruebas en Linux.

Sin embargo, no puedo acceder a la carpeta compartida con mi usuario, inicié sesión con root y usé chmod 777e incluso moví a mi usuario al grupo de la carpeta.

Lo que sea que haga, el resultado es el mismo:

/media/sf_sharedFolder/: Permission denied

¿Que puedo hacer? ¿Cómo puedo acceder a la carpeta compartida con mi usuario?

SaintLike
fuente

Respuestas:

854

Agréguese al vboxsfgrupo dentro de la VM invitada.

Solución 1

Ejecutar sudo adduser $USER vboxsfdesde la terminal.
(En Suse es sudo usermod --append --groups vboxsf $USER)

Para que surta efecto, debe cerrar sesión y luego iniciar sesión, o puede que necesite reiniciar.

Solución 2

Edite el archivo /etc/group(necesitará privilegios de root). Busque la línea vboxsf:x:999y agregue al final :yourusername: use esta solución si no tiene sudo.

Para que surta efecto, debe cerrar sesión y luego iniciar sesión, o puede que necesite reiniciar.

Constantin
fuente
97
FWIW, cerrar sesión y entrar es suficiente para que el cambio surta efecto.
3c71
12
Gracias, para mí solo faltaba la parte de reinicio.
Pedro Reis
55
FWIW, dado que ya está en la línea de comentarios, no es necesario cerrar sesión y volver a iniciar sesión. Simplemente desmonte el recurso compartido y vuelva a montarlo. Host VirtualBox> Dispositivos> Carpeta compartida> pase el mouse sobre la carpeta que compartió para ver información de información sobre herramientas. Por ejemplo: sudo mount -t vboxsf VboxSharedFolderName /media/VboxSharedFolderName(esta función requiere adiciones de invitados).
firepol
10
Utilizo Ubuntu 17.04 como invitado y Windows 10 como sistema operativo host (ambos de 64 bits) y, por alguna razón, no funcionó hasta que reinicié el invitado. Usé la Solución 2.
Alex
14
El mismo resultado que @Alex aquí, usar Win7 como host y Ubuntu 17.04 como invitado, agregar usuario a vboxsf y el inicio / cierre de sesión no fue suficiente, fue necesario reiniciar completamente la máquina virtual para que los permisos surtieran efecto.
Hugh Nolan
193

Pruebe esto (en la máquina invitada, es decir, el sistema operativo que se ejecuta en el cuadro virtual):

sudo adduser your-user vboxsf

Ahora reinicie el sistema operativo que se ejecuta en la caja virtual.

aflorezd
fuente
8
¡¡Muchas gracias!! Funcionó muy bien. Lo único que debo agregar es que tuve que reiniciar el sistema operativo (no intenté simplemente cerrar sesión, pero podría ser suficiente)
Osmar
2
Incluso no hay necesidad de cerrar sesión / iniciar sesión, su - $ USER es suficiente. (para los programas iniciados desde el nuevo shell, por supuesto).
tzp
2
Para lo que quería hacer, se necesitaba un reinicio. Es más fácil reiniciar si desea que sea automático y no se base en su montaje manual.
J. Martin
52

Esto tambien funciona

sudo usermod -aG <group> <user>

Luego reinicie vm

GEverding
fuente
1
No es necesario reiniciar la máquina virtual, sólo tienes que entrar y volver a encenderla
ivandov
8
En mi sistema, fue necesario reiniciar por alguna razón.
Tensigh
1
Yo segundo @Tensigh. Aunque mi usuario se mostró en / etc / group, nunca apareció al escribir groups. Tuve que reiniciar la VM.
James Shrum
38

Para los realmente perezosos (sin escribir, solo copiar y pegar totalmente fácil):

sudo usermod -aG vboxsf $USER

Cierre sesión y vuelva a iniciarla para activar el cambio.

Sé que es una solución "yo también", pero soy realmente vago y no encontré ninguna otra solución para atraer mi apatía innata ... :)

ISparkes
fuente
2
Cerrar sesión no ayuda, tengo que reiniciarlo.
CodyChan
Se requiere reiniciar usando arriba en VirtualBox 6.1 usando Ubutun 18.04.xLTS
crajun
10

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

Inicie su RHEL Guest VM y abra una Terminal. Asegúrese de tener instaladas las Herramientas para desarrolladores.

sudo yum groupinstall 'Developer Tools'

Y el paquete de encabezados Kernel para que el script Guest Additions pueda actualizar su kernel.

sudo yum install kernel-devel*

Una vez que tenga los requisitos previos en su lugar, es hora de instalar Guest Additions. Con su VM en ejecución seleccionada, vaya al menú VirtualBox y seleccione Dispositivos -> Insertar imagen de CD de Guest Additions ...

ingrese la descripción de la imagen aquí

Espere unos segundos para que se produzca el montaje y se inicie el script de instalación. Una vez que hayan hecho clic en el botón "Ejecutar" en el cuadro de diálogo que apareció en su máquina virtual invitada.

Una vez que finalice el script, haga clic con el botón derecho en el icono del CD en el escritorio y elija Expulsar. Luego apague la máquina virtual invitada.

Cree la carpeta Compartida en su sistema Host usando Terminal, generalmente la pongo en mi carpeta Documentos y me aseguro de que su usuario pueda acceder a ella.

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

En Oracle VM Virtual Box Manager seleccione su VM y luego haga clic en el elemento de configuración "Carpetas compartidas". En el siguiente cuadro de diálogo, haga clic en el icono Agregar carpeta a la derecha de la Lista de carpetas.

Luego, en la ventana emergente, seleccione la Carpeta de host que acaba de crear como Ruta de la carpeta y asígnele un Nombre de carpeta que será utilizado por la VM invitada, también marque la casilla de verificación "Montaje automático".

ingrese la descripción de la imagen aquí

Después de reiniciar la VM Invitada, inicie un terminal en el Host y verifique que el usuario asociado con el proceso de VirtualBox Guest que se está ejecutando sea su usuario, muy probablemente, o esté en un grupo con acceso a la carpeta Compartida.

ps aux | grep VirtualBoxVM

Luego, según varias de las respuestas anteriores en una Terminal en la VM Invitada, agregue su usuario al grupo vboxsf.

sudo usermod -a -G vboxsf <user>

Cierre sesión y vuelva a iniciarla para recoger el cambio.

La carpeta compartida ahora debería estar disponible y accesible como sf_rhelshared asumiendo que usaste los mismos nombres que yo usé en la ventana emergente de arriba.

TJA
fuente
2

Para aclarar la última publicación:

El comando VBoxManage es:

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

El problema es que los permisos de la carpeta compartida están configurados para no permitir enlaces simbólicos de forma predeterminada. Puede habilitarlos en unos sencillos pasos.

  1. Apaga la máquina virtual.
  2. Anote el nombre de su máquina en Machine > Settings > General > Name
  3. Anote el nombre de su carpeta compartida en 'Máquina> Configuración> Carpetas compartidas`
  4. Encuentre su directorio raíz de VirtualBox y ejecute el siguiente comando. VBoxManage setextradata "" VBoxInternal2 / SharedFoldersEnableSymlinksCreate / 1
  5. Inicie la máquina virtual y la carpeta compartida ahora permitirá enlaces simbólicos.
Andy Jenkins
fuente
1
sudo adduser xxxxxxx vboxsf

donde xxxxxx es el nombre de tu cuenta de usuario. Cierre sesión y vuelva a iniciar sesión en Ubuntu.

Devesh Sharma
fuente
O simplemente "sudo adduser $ USER vboxsf" y deje que el nombre de usuario se lea del sistema automáticamente
Kaan Oğuzhan
-2

Después de agregar al usuario al grupo vboxsf, es posible que deba cerrar sesión por completo en gnome / xfce / ??? sesión, porque hace mucho tiempo alguien decidió que la afiliación grupal debería almacenarse en caché al primer inicio de sesión en el sistema de ventanas.

O ir a la vieja escuela:

% newgrp vboxsf

en cualquier shell que desee usar para acceder a la carpeta. Afortunadamente, newgrp busca la lista de grupos por sí misma y no utiliza los valores almacenados en caché. Aún necesitará cerrar sesión y volver a ingresar para acceder a la carpeta desde algo que no sea un shell.

Don Christensen
fuente
-4

En mi experiencia personal, es difícil habilitar carpetas compartidas en VirtualBox, pero es posible. Tengo una máquina virtual invitada Debian Buster instalada en mi host de Windows 10.

No reconozco exactamente qué lo hizo, pero recuerdo que fui al defensor de Windows, mi antivirus para ver si reconocen VirtualBox como un programa y no como un virus. Después de eso, presioné el botón derecho sobre el archivo del documento y permití compartir la carpeta y le di clic a algunos botones allí y acepté compartir con grupos y con muy usuarios en Windows 10.

Además, encontré una página web de Windows sobre algo como máquinas virtuales que no recuerdo bien, pero me llevó a un panel y tuve que cambiar tres cosas haciendo doble clic para que cuando actualice Windows, reconozca mi máquina virtual. Además, en muy debian, en la terminal, usando algunas líneas de comando, muy VirtualBox reconoció que mi usuario daba permisos, me basé en cierta información en los foros de Ubuntu. Puse todo lo que recuerdo.

Trabajador
fuente