VirtualBox en Fedora 10

winvm

La semana pasada tomé una importarte decisión (creo yo) en cuanto a la organización de mi desktop. Después de varios problemas con el sistema operativo con el que venía precargado mi equipo y el cual solamente utilizaba para tareas muy específicas, decidí mandarlo al carajo y mantener todo mi ambiente en Fedora. Ahora solo tengo Linux en mi desktop y cuando requiero otro sistema operativo lo corro en una máquina virtual utilizando VirtualBox de Sun Microsystems. Ahora mantengo mis datos en una partición aparte y los puedo acceder desde los sistemas operativos que tengo en mi PC.

El primer paso fue crear la partición de datos y respaldar los archivos que me interesaban, esto lo logré con parted, una utilería para crear, mover, y cambiar tamaño de particiones, pero esto es materia de otra discución.

VirtualBox debe instalar un módulo en el kernel para poder manejar las máquinas virtuales (VM), por lo que lo para agregar este módulo  necesitamos tener el código fuente del kernel. Esto es probablemente lo que más tiempo nos tome.

1.- Debemos obtener primeramente algunas herramientas que utilizaremos para bajar el kernel source.

Como root:

yum install rpmdevtools yum-utils

2.-  Obtenemos el código fuente del kernel

Como root:

yum downloader -e core-source -e updates-source --source kernel

Alternativamente puedes obtener un paquete .src.rpm desde el sitio de Fedora. Es importantísimo aseguarte que bajas la versión correcta.

uname -a

Esta instrucción nos muestra la versión instalada del kernel de tu equipo, y posteriormente la buscas y bajas desde http://download.fedora.redhat.com/pub/fedora/linux/updates/10/SRPMS/

3.- El paquete que obtuviste por cualquiera de los dos métodos fue creado con una herramienta  llamada mock, la cual crea chroots y construye paquetes dentro de ellos. Vamos a necesitar mock para reconstruir el paquete.

Como root:

yum install mock

4.-  mock utiliza un usuario propio para sus paquetes, este usuario no se genera cuando instalas mock por lo que debes agregarlo manualmente.

Como root:

adduser -m -G mock mockbuild
passwd mockbuild

5.- Ahora necesitamos reconstruir el paquete como usuario mockbuild. Mock utiliza un archivo de configuración de acuerda a la versión de Fedora que tengas instalada, estos archivos se encuentran en /etc/mock y deberás utilizar el específico para tu arquitectura.

su mockbuild
mock -r fedora-10-i386 rebuild kernel<version>.src.rpm
exit

Esto puede tardar un rato. Los paquetes reconstruidos se ubicarán en la ruta /var/lib/mock/fedora-10-i386/result

6.- Ahora necesitamos instalar el source del kernel,esto se hace como root

su
rpmbuild --rebuild  kernel<version>.src.rpm
rpm -ivh kernel<version>.src.rpm

Con esto terminamos la instalación del código fuente del kernel y ahora podemos instalar VirtualBox

7.- Descargamos VirtualBox desde www.virtualbox.org y lo instalamos

Como root:

rpm -ivh VirtualBox<version>.rpm

8.- Por último, agregamos el módulo de VirtualBox al kernel

Como root:

/etc/init.d/vboxdrv setup

9.- Una vez instalado todo lo anterior puedes ejecutar VirtualBox desde una ventana de comandos.

VirtualBox

Lo que sigue es que instales tus VMs nuevas ó a partir de VMs que ya tenías anteriormente. Yo he probado incluso con VM generadas con VMware y funciona de maravilla. Nuevamente, esto es materia de otras discusiones.

25 Responses to VirtualBox en Fedora 10

  1. Oscar dice:

    Hola,
    Yo para instalar virtualbox en mi fedora 10 solo he utilizado los siguientes paquetes (y sus dependencias):
    kernel-devel
    gcc

    No he compilado el kernel…

    ¿Tiene algún motivo técnico hacerlo así?

  2. No, realmente no lo tiene. El resultado final es el mismo, kernel-devel contiene los headers y los makes que requieres para agregar módulos al kernel. Aqui tomé el caminito largo para mostrar unas cuantas utilerias para el manejo de paquetes.

    Incluso puedes esperar el mismo resultado si bajas los tarballs de tu kernel y descomprimes tu código fuente, la desventaja de este método es que el motor de actualización si actualiza el kernel regularmente, más no lo que hayas compilado «a pie»

  3. joker dice:

    Hola, tengo una duda, como entro a mock porque no puedo crear el usuario que manejas en tu tuto.

    saludos

  4. Esta sección del wiki te puede ayudar, yo me basé en la misma.
    http://fedoraproject.org/wiki/Projects/Mock
    Espero que te sea de utilidad.
    Saludos

  5. Reinaldo dice:

    Disculpa que moleste pero tengo una consulta
    realice todos los pasos y todo bien hasta que llegue a esta parte /etc/init.d/vboxdrv setup y de da el siguiente error
    Stopping VirtualBox kernel module [ OK ]
    Recompiling VirtualBox kernel module [FALLÓ]
    y segun el log el error seria este
    Makefile:143: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR= and run Make again. Alto.

    Me podrias orientar para arreglarlo??

  6. Este comando agrega el módulo de VirtualBox al Kernel de tu sistema.

    El error menciona que te falta el código fuente del kernel que tienes actualmente.
    Intenta instalar el paquete kernel-devel desde yum o desde System->Administration->Add/Remove software.

    Cada vez que tu sistema actualice este paquete, VirtualBox te pedirá que corras el mismo comando: /etc/init.d/vboxdrv setup pero en el futuro deberá agregar el módulo sin problemas

    Espero que te haya podido ayudar
    Saludos

  7. manuel dice:

    buenas
    tengo una pregunta, cuando realizo el comando del kernel de Virtualbox
    me sale el siguiente error: (Look at /var/log/vbox-install.log to find out what went wrong)
    que puede ser?
    te lo agradeceria mucho
    gracias por la respuesta

  8. manuel dice:

    en el trabajo no me dio el mismo problema
    no se si fue donde no actualice nada allá
    ojala me ayudes desde fedora 9 que no soluciono el problem
    gracias

  9. Debes revisar el contenido del archivo que contiene la bitacora de instalación para saber de que se trata el error.
    Utiliza el comando cat /var/log/vbox-install.log para ver el contenido o enviame el archivo y con mucho gusto intentamos determinar la causa del error.

    Saludos

  10. Seba dice:

    He tenido los mismos problemas que los otros muchachos.
    Me gustaría saber la manera de bajar automàticamente el paquete necesario para virtualbox, ya que esto se produce cada vez que actualiza el kernel.

    Muchas gracias

    PD: sería más didáctico si el código del tutorial fuera más grande y legible, por lo menos como el resto de los comentarios

  11. Bueno, creo que realmente no es un gran problema. VirtualBox necesita registrar sus módulos a nivel de kernel y por lo tanto se deben recompilar cada vez que se actualiza el kernel.

    En mi caso, me doy cuenta cuando no puedo arrancar alguna máquina virtual y lo único que hago es ejecutar el siguiente comando en la terminal :

    sudo /etc/init.d/vboxdrv setup

    Ayer precisamente instalé la más reciente versión de VirtualBox (2.2.2) — OJO: para Fedora 9 y 10 aunque ya está disponible la de F11 — y no me pidió recompilar el módulo, sin embargo si sugirió que convirtiera el archivo de la VM al nuevo formato que manejarán las nuevas versiones.
    Espero que esto traiga nuevas mejoras.

    En cuanto al código tienes razón, lo que pasa es que solamente le di formato de código en WP y no me fije que apareció demasiado pequeño, gracias por el comentario

    Saludos

  12. Creo que te complicastes la instalacion, generando muchas dudas.
    Con instalar las cabeceras del kernel, bridge-utils, y VirtualBox, haces una instalacion sin tantas complicaciones.
    Una vez instalado ejecutas service vboxdrv setup para compilar unos modulos que son necesarios para la ejecucion del VB. Este proceso solo debes ejecutarlo cada vez que instales un nuevo kernel.

  13. carmen dice:

    Hola
    gracias por la explicación, he instalado las fuentes de kernel que me hacían falta.

    Estoy instalado otro soft, y me pide el directorio que contiene el código fuente del kernel. Me podrías ayudar? ya le he dado unos cuantos y ninguno es.

    Gracias anticipadas
    Carmen

  14. Los fuentes los encuentras en /usr/src/kernels

    Saludos 😉

  15. como instsalar virtualbox para fedora 11?

  16. Como se hace para instalar virtual box en fedora 11 es una lata y me marca un error con el kernel.

  17. AJME dice:

    BUenas tengo el siguiente problema instalando virtualbox en fedorra 11.

    # /etc/init.d/vboxdrv setup
    Stopping VirtualBox kernel module [ OK ]
    Recompiling VirtualBox kernel module [FALLÓ]

    Y en el archivo log,dice:

    Error! Your kernel source for kernel 2.6.29.4-167.fc11.x86_64 cannot be found at
    /lib/modules/2.6.29.4-167.fc11.x86_64/build or /lib/modules/2.6.29.4-167.fc11.x86_64/source.
    You can use the –kernelsourcedir option to tell DKMS where it’s located.
    Failed to install using DKMS, attempting to install without
    Makefile:147: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR= and run Make again. Alto.

    Necesito ayuda urgente, como resolver en este caso, y que libreria instalar, ya realize tambien un yum install kernel-devel, y me dice tengo la ultima version instalada.

    S.O.S

  18. @enrique intenta instalar el paquete kernel-devel

    yum install kernel-devel

    Yo actualicé a Fedora 11 mediante preupgrade y VirtualBox siguió funcionando perfectamente

    Saludos

  19. @AJME según lo que dice el error, no encuentra los sources del kernel en /lib/modules . Esto me parece muy inusual porque los sources generalmente los encuentras en /usr/src/kernels pero la verdad no lo había intentado en arquitecturas de 64 bits.

    Como te lo sugiere el error intenta correr con el modificador –kernelsource dir y especifica /usr/src/kernels/tu-versión-de-kernel

    Avisame por favor si esto funciona y si no le seguimos buscando,

    Saludos

  20. antonio ADL dice:

    MUY BUENAS NOCHES…..SOY NUEVO AKI EN EL FORO Y TENGO POCO CONOCIMIENTO EN LINUX…….Y MI DUDA ES QUE SI NO AFECTA EL INSTALARLE EL NUEVO SOURCE DEL KERNEL AL SISTEMA OPERATIVO……ESTOY PROBANDO VBox EN UNA MAQUINA DE LA ESCUELA…….Y YA TIENE INSTALADO EL WINDOWS VISTA……ENTONCES LO QUE QUIERO ES CORRER VISTA BAJO FEDORA PERO SIN NECESIDAD DE REINSTALAR VISTA…………….

    DE ANTEMANO LES AGRADESCO SU AYUDA…………………….ESPERO Y ME PUEDAN RESOLVER ESA DUDA

  21. @antonio, no solamente no afecta sino que es muy recomendable actualizar el kernel cada vez que sea liberada una nueva versión porque regularmente traen mejoras, parches y mejor soporte para hardware. Si utilizas Fedora como Sistema Operativo Guest en un Host de Win X, puedes probando tranquilamente sin dañar tu Host

    Saludos

  22. Felipe dice:

    Hola Amigos les cuento que estaba con fedora 11 y virtualbox mi kernel era 2.6.30.8-64.fc11.i686.PAE asi que lo que hice fue descarhgar la version del kernel, y nunca funciono….. me fui a añadir programas y encontre virtual box para la version del kernel que tenia, le descargue y todo funciono OK

  23. eulerss dice:

    Con FC11 Leonidas como hacer en pantalla completa la ventana del Virtualbox? tengo una hp dv6925ls pero no logro hacer la pantalla completa con el virtual box, trato de cambiar la resolución de pantalla desde el FC11 pero solo me aparece una opción (la que esta por defecto) y no mas, y desde el SO (XP) cambio la resolución pero se me queda trabado el virtual box?

    Alguna sugerencia?

  24. Luis Vargas dice:

    Alex, trate de seguir tus instrucciones para instalar el VirtualBox pero me tope con un problema al tratar de instalar las fuentes. El mensaje que recibi fue el siguiente:

    Installing kernel-2.6.31.12-174.2.22.fc12.src.rpm
    error: Failed build dependencies:
    redhat-rpm-config is needed by kernel-2.6.31.12-174.2.22.fc12.src
    xmlto is needed by kernel-2.6.31.12-174.2.22.fc12.src
    asciidoc is needed by kernel-2.6.31.12-174.2.22.fc12.src
    elfutils-libelf-devel is needed by kernel-2.6.31.12-174.2.22.fc12.src
    binutils-devel is needed by kernel-2.6.31.12-174.2.22.fc12.src
    [root@CHITLaptop01 result]#

    logre instalarlo sin la recompilación pero me gustaría saber cual fue mi error de todas maneras.

  25. El error indica que falló al compilar o instalar los paquetes de soporte del paquete que quieres instalar, también conocidos como dependencias.
    La alternativa para este caso específico es instalar alternativamente el paquete kernel-devel:
    # su -c yum install kernel-devel
    y este incluye e instala las fuentes del kernel.
    Otra opción menos (nada) recomendada es utilizar el modificador –skip-broken, el cual omite la instalación de los paquetes que tienen problemas de dependencias

    #su -c yum install --skip-broken

    Espero que haya ayudado
    Saludos

Deja un comentario