Ejecutar VirtualBox desde GDM


Algunas veces quieres usar una máquina virtual usando VirtualBox, pero primero debes entrar a Gnome o cualquier que sea el gestor de escritorio que estés usando. Luego tienes que lanzar el gestor de VirtualBox y finalmente iniciar la máquina virtual. ¿Y si no tuvieras que usar Gnome para nada?…¿Necesitas correr el gestor de VirtualBox cada vez para solo hacer clic  en “Start”?

Veamos cómo iniciar una máquina virtual desde GDM usando VirtualBox.

Xsessions

Puedes poner definiciones de sesión en el directorio /usr/share/xsessions.POr ejemplo, tu sesión de Gnome está definido en el archivo /usr/share/xsessions/gnome.desktop y tiene algo como esto:

[Desktop Entry]
Encoding=UTF-8
Name=GNOME
Comment=This session logs you into GNOME
Exec=/usr/bin/gnome-session
Icon=
Type=Application

Ergo, cuando seleccionas Gnome el binario es ejecutado, haciendo que Gnome inicie.

El archivo xsession de VirtualBox

Para iniciar VirtualBox sin manejador de escritorio o manejador de VirtualBox, solo invoca la máquina virtual como sigue::

[Desktop Entry]
Encoding=UTF-8
Name=VirtualBox
Comment=My VirtualMachine
Exec=/home/lgallard/.VirtualBox/Launchers/arthur
Icon=
Type=Application

Donde  /home/lgallard/.VirtualBox/Launchers/arthur es un script que hice con este contenido:

#!/bin/bash
/usr/bin/VirtualBox -startvm “Arthur”

“Arthur” es el nombre de mi máquina virtual con Debian para propósitos de enseñanza. Cuando hayas hechos los cambios, reinicia GDM  (e.g presionando Ctrl+Alt+Backspace) para que cuando hagas clic en  Sessions veas lo siguiente:

VirtualBox-GDM

¿Y si deseo correr el manejador de VirtualBox?

Es pan comido, solo invoca VirtualBox desde el archivo de xsession como se muestra a continuación:

[Desktop Entry]
Encoding=UTF-8
Name=VirtualBox
Comment=My VirtualMachine
Exec=/usr/bin/VirtualBox
Icon=
Type=Application

Referencia


,

  1. #1 by Luis Gallardo on 28/10/2010 - 7:57

    @Ronny de na da mi pana. Siempre a la orden!!

  2. #2 by Ronny on 26/10/2010 - 10:56

    Sera Luis.. Bueno gracias por el dato mi pana!!

  3. #3 by Luis Gallardo on 26/10/2010 - 9:29

    @Ronny debe ser un bug o algo raro del VirtualBox que tienes instalado, ya que no hay magia oculta en el archivo xml.

  4. #4 by Ronny on 26/10/2010 - 4:18

    Revise y todo esta bien!!

    la versión es 3.2.8

  5. #5 by Luis Gallardo on 26/10/2010 - 4:10

    @Ronny debes tener algo mal en este archivo ~/.VirtualBox/VirtualBox.xml. Puede ser por algún cambio de versión/actualización, etc. Échale un ojo a ver!!

    PD: Qué versión de VirtualBox estás usado?

  6. #6 by Ronny on 26/10/2010 - 3:57

    Mi pana mira esto:

    drwxrwxrwx 3 rrosales rrosales 4096 oct 26 15:22 openSUSE
    drwxr-xr-x 4 rrosales rrosales 4096 oct 26 15:42 ubuntu
    drwxr-xr-x 4 rrosales rrosales 4096 oct 26 15:06 xp

    Lo curioso es que la de xp inicia bien.. las demas no!!

  7. #7 by Luis Gallardo on 26/10/2010 - 3:54

    @Ronny el usuario con quien intentas levantar la máquina virtual es dueño de dichas máquinas?

  8. #8 by Ronny on 26/10/2010 - 3:51

    Te muestro algunos resultados:

    .VirtualBox/Machines# ls
    debian_squeeze open openSUSE ubuntu xp

    Luego
    /usr/bin/VirtualBox -startvm “openSUSE”

    Resultado
    No hay ninguna máquina virtual que se llame openSUSE.
    Could not find a registered machine named ‘openSUSE’.

    Gracias!!

  9. #9 by Luis Gallardo on 26/10/2010 - 3:46

    @Ronny usa el nombre que le pusiste a tu máquina virtual con Ubuntu, por ejemplo:

    /usr/bin/VirtualBox -startvm “Ubuntu 10.10”

  10. #10 by Ronny on 26/10/2010 - 3:38

    Probé iniciando con xp desde gdm y excelente.. pero quiero iniciar con ubuntu que es donde tengo un sistema de monitoreo y me dice que el nombre de la maquina no existe, ejecute este comando: VBoxManage list vms
    en consola y me aparece el siguiente resultado: “xp” {6399977f-3b6b-4a9b-a5d8-496841500441}

    Cuando en realidad tengo cuatro maquinas virtuales y todas arrancan perfectamente desde la interfaz gráfica de virtualbox

    Gracias!!

  11. #11 by Luis Gallardo on 26/10/2010 - 3:30

    @Ronny Qué pruebas hiciste? Si te fijas en el video la máquina virtual es un Debian, pero en teoría ebería funcionar para cualquiera que ya tengas virtualizada!!

  12. #12 by Ronny on 26/10/2010 - 3:11

    Luis esta muy bueno el dato.. pero mi pregunta es la siguiente: puedo iniciar maquinas virtuales en linux desde gdm sin problemas? porque hice unas pruebas y solo inicio bien con windows con xp

    Gracias!!!

  13. #13 by Luis Gallardo on 28/01/2010 - 1:08

    @sinuhecool Revisa que el script /home/sinuhe/windows.sh sea ejecutable y que funciona. Por ejemplo, córrelo desde un terminal para ver si inicia la máquina virtual

  14. #14 by Luis Gallardo on 28/01/2010 - 12:30

    @sinuhecool Asegúrate de que el script /home/sinuhe/windows.sh sea ejecutable y que funcione, es decir, prueba ejecutándolo desde un terminal para ver si arranca la máquina virtual.

  15. #15 by sinuhecool@gmail.com on 27/01/2010 - 11:18

    hola tengo ubuntu karmic y hago todo como tu lo dices solo que sigue iniciando gnome te dejo como lo tengo y com o lo hago ok

    sudo gedit /usr/share/xsessions/windows.desktop

    [Desktop Entry]
    Encoding=UTF-8
    Name=VirtualBox
    Comment=My VirtualMachine
    Exec=/home/sinuhe/windows.sh
    Icon=
    Type=Application

    sudo gedit /home/sinuhe/windows.sh

    #!/bin/bash
    /usr/bin/VirtualBox -startvm “windows2k”

    me falta algo ????

    espero y me puedas ayudar

  16. #16 by gticlayauri on 25/11/2009 - 1:28

    Les paso lo que yo hice para hacerlo funcionar en Karmic Koala, ya que lo anterior no me funcionaba, es decir no aparecía la sesión de la máquina virtual ni en GDM ni en KDM.
    Lo que hice fue primero crear, en base al enlace que está al inicio del artículo un script con lo siguiente:

    #!/bin/bash
    VBoxSDL -fullscreen -vm “Windows7″
    done

    A este scrip lo llamé windows-session, lo hice ejecutable haciendo clic derecho / propiedades / permisos marcando la casilla: permitir ejecutar como un programa. Este archivo lo guardé como root en /usr/bin/.

    Luego seguí con los pasos del post, es decir crear un archivo dentro de /usr/share/xsessions con el nombre windows.desktop que contiene:

    [Desktop Entry]
    Name=WINDOWS
    Comment=This session logs you into WINDOWS
    Exec=windows-session
    TryExec=windows-session
    Icon=
    Type=Application
    Name[es_PE]=WINDOWS

    Luego reinicias la pc y voila tienes, tanto en gdm como en kdm, en la zona donde puedes elegir sesión (en gdm una vez que seleccionas usuario en la parte inferior de la pantalla; en kdm en el primer círculo con rayas horizontales en la esquina inferior izquierda del cuadro de sesión) una alternativa que dice WINDOWS.

    El único problema o matiz es que al abrirlo en mi pc (una toshiba Satellite Pro A205) abre al modo widescreen, es decir como si vieras una película.

    Saludos

  17. #17 by Luis Gallardo on 30/08/2009 - 5:28

    Claro,si quieres red debes configuralo previamente en el script que lanza VirtualBox, que en este caso es Exec=/home/lgallard/.VirtualBox/Launchers/arthur. Puede sen tan sencillo como hacer dhclient eth0, o puede complicarse algo más si es una inalámbrica. Incluso, puedes configuralo desde el mismo VirtualBox en los scripts que le puedes pasar antes de levantar la interfaz de red de VirtualBox (la del guest).

  18. #18 by alvaro on 30/08/2009 - 6:12

    sí, pero tiene el inconveniente de que no puede utilizar servicios que se levantan con el gnome, como las conexiones de red.

  19. #19 by Luis Gallardo on 27/06/2009 - 11:22

    Exacto. Y hasta podrías tener cosas interesantes como dos máquinas virtuales servidas en dos instancias diferentes de GDM corriendo en monitores distintos.

  20. #20 by Richzendy on 27/06/2009 - 10:04

    Excelente post, en teoría podrías cargar un Microsoft Windows a un familiar en full screen y ni se daría cuenta que esta usando de backend un linux

  21. #21 by Luis Gallardo on 27/06/2009 - 8:17

    Si, es bien sencillo y práctico. Sobre todo si no tienes que entrar a Gnome para nada!

  22. #22 by Tensa Zangetsu on 27/06/2009 - 6:01

    Que buena entrada, había escuchado algo al respecto. No me imagine que fuese tan sencillo. Gracias por el dato.

(No será publicado)