Como compartir carpetas con Ubuntu corriendo dentro de Virtualbox

Ya varias personas me habían preguntado la forma de compartir archivos entre Windows y un Ubuntu virtual, asi que paso a explicarlo para el que lo necesite. La situación base es esta:

  • Tenemos Ubuntu, Xubuntu, Kubuntu o derivados (u otras distribuciones) corriendo sobre Virtualbox
  • Necesitamos compartir archivos entre el Sistema Operativo real (host) y el virtualizado (guest)
  • Queremos lograrlo mediante Virtualbox (con esto me refiero a no usar Samba, NFS u otras formas de compartir archivos en red)

¿Cómo podemos hacer? Fácil, en Linux, al instalar las Aplicaciones del Huésped (“Guest Additions”), obtendremos un nuevo sistema de archivos virtual: vboxsf. Este sistema nos permitirá montar los directorios que agreguemos en la interfaz de Virtualbox.

Pasos para agregar una carpeta

Siguiendo los pasos en la imagen, agregamos una carpeta compartida; hay que recordar el “Folder Name” que es lo que luego usaremos en nuestro Ubuntu virtualizado para montar el sistema de archivos. (No se preocupen por el Sistema Operativo de la máquina virtual de la foto, es Jolicloud, pero los pasos de agregar una carpeta no varían)

Luego, abrimos una consola en nuestro sistema virtualizado, creamos un directorio y montamos el sistema de archivos:

sudo mkdir /media/compartido
sudo mount.vboxsf ‘Escritorio’ /media/compartido

En el segundo comando, “Escritorio” vendría a ser el “Folder Name” de cuando agregamos la carpeta en Virtualbox. También podemos hacer sudo mount -t vboxsf Escritorio /media/compartido en lugar del segundo comando, es otra forma de hacer lo mismo. Luego, abrimos una consola en nuestro sistema virtualizado, creamos un directorio y montamos el sistema de archivos:

Con eso ya tenemos el directorio montado en nuestro sistema, y lo podemos utilizar para leer/escribir archivos.

Nota: En teoría estos pasos funcionan también para Debian y otras distibuciones Linux, yo los he hecho nombrando a Ubuntu sólo porque me preguntan como hacerlo en Ubuntu :) Si lo pruebas en otra distribución virtualizada y funcionan, ¡deja un comentario!

Curiosidad: No viene al tema del post, pero si se fijan en la imagen, pueden notar como la gente que hace Jolicloud le ha errado en la traducción y ha escrito “Rojo” en lugar de “Red”, que en inglés es “Network” (y a su vez, “Red” en inglés significa “Rojo”).

This entry was posted on Sábado, julio 25th, 2009 at 11:19 PM and is filed under Linux, Software Libre, ¿Cómo?. You can follow any responses to this entry through the RSS 2.0 feed.You can leave a response, or trackback from your own site.

14 Responses to “Como compartir carpetas con Ubuntu corriendo dentro de Virtualbox”

  1. ritibay Says:

    Hola gran aporte el que tienes, nada mas me queda una pregunta como hago para poder compartir toda una partición del disco duro por ejemplo D: me sale un error “E-invalidarg 0×80070057″

  2. Emilio Says:

    La verdad no tengo idea, y tampoco me parece muy seguro compartir toda una partición con una máquina virtual. Pero igualmente, eso suena a un error en Virtualbox, puedes reportarlo en su bugtracker como indican aquí: http://www.virtualbox.org/wiki/Bugtracker

  3. Muad'Dib Says:

    Jejejeje muchas gracias por el aporte habia intentado ya comunicar mi sistema operativo con el virtualizado en el Virtualbox y estaba ya desesperadito porque ni con el USB me funcionaba, muchas gracias!!! :)

  4. Tano Says:

    Muchas respuestas he encontrado pero la única que funciona fue esta. Tal vez haya que tener en cuenta las versiones tanto de virtualbox como de ubuntu.

  5. jenna Says:

    hay que joderse que cada vez que entro en un post como este no hay manera de entender nada
    a ver si haceis el favor de escribir para los que no sabemos nada. Concluyendo que sigo sin saber como compartir carpetas

  6. THOR Says:

    fijate aca amigo jenna:

    http://armandodiaz.wordpress.com/2007/08/04/compartir-carpetas-en-virtual-box-linux-xp/

    avisa si te sirvio!

    saludos!

  7. REIKO Says:

    jenna, sino entendes segui buscando…no compliques no somos culpables de tu ignorancia y falta de aprender…buen post

  8. Karen Says:

    Ala gracias muchas gracias, no me recordaba de ese detallito, ahora tengo una pregunta, mi computadora esta en red y necesito conectar la impresora a mi windows seven.
    Con el xp, simplemente le daba agregar impresora y la buscaba en la red y listo, ahora no me sale nada de eso y no sé como agregar la impresora.
    Si me pueden ayudar se los agradeceré mucho :P

  9. Nestor Says:

    he seguido las instrucciones pero me dice que reconoce el comando mount.vboxsf ni vboxfs solo, tengo windows xp (Host) y Debian lenny 5.0.4 (Guest) ya tengo instaladas las GuestAdditions.

    una cosa : cuando le das a compartir carpeta en el primer paso, ¿no deberia salir la ruta en Windows?;

    Disculpa la molestia, Gracias

  10. juanjhons Says:

    hahahahah!!!!! me parece bien esta opción GRACIAS!!!!

  11. Emilio Says:

    @Nestor: en el primer paso, si tu host es windows, efectivamente aparecerán paths de windows. El problema es que yo virtualizé Jolicloud (GNU/Linux) sobre un Ubuntu, y por eso ves paths de linux. Pero si usas GNU/Linux sobre windows deberías poder de igual forma, con eso cambiado ;)

    En cuanto a que no te tome el comando de vboxsf, revisa tu instalación de Guest Additions, probablemente no se hayan instalado bien.

  12. Snake! Says:

    Excelente! otro tip para montar las carpetas como unidades de disco en un guest windows:
    net use X: \\vboxsvr\NombreDeLaCarpetaCompartida
    X: puede ser cualquier letra de unidad que este libre.
    Saludos!

  13. jealr Says:

    El procedimiento descrito para compartir carpetas con virtual box en ubuntu no funciona. el comando sudo mount -t vboxfs “nombre_de_carpeta “punto de montahe” arroja el mensaje sistema de archivos vboxfs desconocido. El comando mount.vboxfs no existe en ubuntu!!!.
     

  14. Emilio Says:

    @jealr: para que exista en la máquina virtual tienes que instalar las Guest Additions de Virtualbox; luego de eso ya podrás usarlo.

Leave a Reply