Saltar la navegación

Carpetas compartidas

Las carpetas compartidas permiten intercambiar fácilmente ficheros entre una MV y el anfitrión, haciendo posible que VB pueda acceder a los archivos del anfitrión desde dentro del sistema invitado y a la inversa. Esta función requiere que las Guest Additions estén instaladas en la MV.

Las carpetas compartidas deben residir físicamente en el anfitrión y luego se comparten con los invitados, los cuales utilizan un controlador especial según el tipo de cliente. Para los clientes de Windows, las carpetas compartidas se implementan a través de unidades de red, y para los de GNU/Linux y Solaris, se proporciona el sistema de ficheros virtual vboxsf.

Para compartir una carpeta del anfitrión con una MV en VB, debemos especificar la ruta de la carpeta y su nombre compartido, el cual utilizará el invitado para acceder a ella. Por lo tanto, primero se debe crear la carpeta en el anfitrión y, a continuación, el invitado debe conectarse a ella.

Hay dos tipos de carpetas compartidas:

  • Permanentes: Se pueden crear con la MV apagada o encendida. Se caracterizan porque se mantienen cuando la MV se apaga.
  • Transitorias: Se crean con la MV encendida y se pierden cuando la MV se apaga.

Como ya se ha dicho, lo primero que hay que hacer, es crear una carpeta normal en la máquina anfitriona. Supongamos que para ello tenemos una carpeta denominada VB en el escritorio.

Vamos a hacer una carpeta compartida permanente. Entramos en la sección Carpetas compartidas de una MV, lo que podemos hacer de las siguientes formas, teniendo la MV seleccionada:

  • Pulsamos en la parte derecha del administrador de VB en la sección Carpetas compartidas.
  • Menú Máquina -> Configuración -> Carpetas compartidas
  • Ctrl+S -> Carpetas compartidas sobre el administrador de VB.

Carpetas compartidas 1

También es posible hacerlo usando los iconos de la parte inferior de la ventana de la MV cuando esta está corriendo.

Las carpetas compartidas permanentes van a colgar de la etiqueta Carpetas de la máquina. Pulsamos el icono de la derecha que tiene un signo más y nos sale la siguiente ventana pidiéndonos varios datos:

  • Ruta carpeta: Especificamos la carpeta del anfitrión que se va a usar como compartida.
  • Nombre carpeta: Es el nombre que se va a utilizar dentro de la MV. Normalmente pondremos el mismo nombre que el de la carpeta original.
  • Sólo lectura: Si marcamos, desde la MV no se podrá escribir en la carpeta compartida.
  • Automontar: La carpeta se montará automáticamente al arrancar y estará disponible sin que el usuario del SO de la MV tenga que hacer nada.

Carpetas compartidas 2

Según sea el cliente de la MV, Windows, GNU/Linux o Solaris, hay que tener en cuenta unas cosas u otras. En las MMVV con Windows, las carpetas compartidas se trabajan como unidades de red del servidor virtual vboxsrv.

Carpetas compartidas 3

En las MMVV con GNU/Linux, las carpetas compartidas se montan sobre una carpeta nueva dentro de la carpeta /media, cuyo nombre comienza por sf_ y le sigue el nombre que especificamos, para nuestro caso, la carpeta compartida será /media/sf_VB. Pero un punto fundamental a tener en cuenta, es que el usuario de GNU/Linux que quiera trabajar con la carpeta compartida permanente de VB debe pertenecer al grupo vboxsf. La operación de añadir un usuario a un grupo es necesario que se haga con los permisos del root. La orden a ejecutar (una sola vez, evidentemente) por usuario en el sistema Debian con el que trabajamos, sería:

$ su -c 'adduser usuario vboxsf'

Para que usuario sea reconocido como miembro del grupo vboxsf será necesario cerrar la sesión.

Carpetas compartidas 4

Desde la sección Carpetas compartidas de una MV, además de crear carpetas compartidas, podemos modificarlas o eliminarlas, usando los iconos que están debajo del icono que las crea.

Vamos ahora a crear una carpeta compartida transitoria. Para ello usaremos también la carpeta anterior llamada VB que se encuentra en el escritorio del anfitrión (la carpeta VB no se está usando como permanente, no se puede usar la misma carpeta dos veces). Previamente la eliminamos como permanente. Arrancamos la MV de Windows XP (luego veremos el cliente GNU/Linux) y pulsamos el menú Dispositivos -> Carpetas compartidas (o cualquier otro método que nos lleve al mismo sitio). Observamos que sale una nueva etiqueta denominada Carpetas transitorias, desde la que colgarán todas las carpetas transitorias que hagamos.

Carpetas compartidas 5

Pulsamos sobre el icono del signo más para crear la carpeta compartida y nos sale la misma ventana de antes pero con un cuadro de chequeo nuevo, titulado Hacer permanente, el cual dejaremos sin marcar, pues en caso contrario, la carpeta se haría permanente y no transitoria como pretendemos. Por otro lado, este tipo de carpetas hay que montarlas manualmente, de modo que si marcamos Automontar, no veremos ningún efecto, solo sirve si a su vez marcamos Hacer permanente.

Carpetas compartidas 6

La carpeta, como vemos, es una carpeta transitoria, desaparecerá cuando se apague la MV.

Carpetas compartidas 7

Ya sólo nos queda conectarnos a la carpeta compartida a través de una unidad de red. Abrimos el explorador de ficheros de Windows y pulsamos sobre el menú Herramientas -> Conectar a unidad de red.

Carpetas compartidas 8

Desmarcamos Conectar de nuevo al iniciar sesión, ya que si no, se producirá un error la próxima vez que arranquemos la MV, ya que al ser una carpeta transitoria, el recurso no existirá y Windows intentará volver a conectarse. Pulsamos el botón Examinar para localizar en el servidor vboxsrv la carpeta compartida.

Carpetas compartidas 9

En la siguiente ventana la localizamos, la seleccionamos y pulsamos el botón Aceptar.

Carpetas compartidas 10

Pulsamos el botón Finalizar y ya tenemos disponible la carpeta a través de la unidad de red Z.

Carpetas compartidas 11

Utilizando la terminal de comandos de Windows se puede hacer esto de una forma más rápida. El comando que debemos ejecutar es:

C:\Documents and Settings\Invitado> net use z: \\vboxsrv\VB

En los invitados GNU/Linux, lo único que cambia en este procedimiento, es la parte de la conexión de la unidad de red, pues este método no existe, y hay que sustituirlo por el montaje de una carpeta. El código que debemos escribir para montar la carpeta compartida transitoria denominada VB, es el siguiente:

$ su -c 'mount -t vboxsf VB /mnt'

En la anterior orden VB es el nombre que le pusimos a la carpeta compartida en VirtualBox y /mnt es la carpeta (punto de montaje) dentro del cliente para comunicarse con el anfitrión, la cual podría haber sido cualquier otra carpeta con permisos de acceso para el usuario, por ejemplo, las carpetas de su propia cuenta.

Licencia: licencia de software libre GPL