Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Usar virtualbox en servidor sin entorno gráfico.

1,190 views
Skip to first unread message

Pablo Braulio

unread,
Apr 9, 2010, 4:10:03 AM4/9/10
to
Hola a todos.

Seguro que hay gente en la lista que tiene experiencia con esto y espero
que me puedan ayudar.

Tengo un servidor con debian, sin entorno gráfico. Quiero instalarle
virtualbox y crearle una máquina virtual en la que instalaré debian. La
razón de hacer esto es para meter en dicha máquina virtual mi servidor
web y de ese modo separar lo que está disponible al exterior de mi
servidor. Hago esto pues no dispongo de un segundo servidor para poder
configurar una dmz en el firewall.

Se como instalar Virtualbox. Se que se puede crear las máquinas
virtuales sin entorno gráfico (consola). Lo que no si es posible es
arrancar una máquina virtual sin disponer de entorno gráfico.

Esto me preocupa, pues ahora, si quiero reiniciar mi servidor en remoto,
conecto por ssh y lo reinicio sin mas. Si necesito arrancar el entorno
gráfico para ejecutar la máquina virtual, necesitaré estar delante del
servidor.

¿Alguien sabe algo de esto?.

Muchas gracias.
--
Saludos cordiales.
Pablo.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Archive: http://lists.debian.org/4BBEDFB1...@gmail.com

Camaleón

unread,
Apr 9, 2010, 4:30:03 AM4/9/10
to
El Fri, 09 Apr 2010 10:05:05 +0200, Pablo Braulio escribió:

(...)

> Se como instalar Virtualbox. Se que se puede crear las máquinas
> virtuales sin entorno gráfico (consola). Lo que no si es posible es
> arrancar una máquina virtual sin disponer de entorno gráfico.

"VBoxHeadless --startvm" creo que es lo que buscas.

http://www.virtualbox.org/manual/ch07.html#vboxheadless

Saludos,

--
Camaleón


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/pan.2010.04...@gmail.com

Pablo Braulio

unread,
Apr 9, 2010, 4:50:01 AM4/9/10
to
>
> "VBoxHeadless --startvm" creo que es lo que buscas.
>
> http://www.virtualbox.org/manual/ch07.html#vboxheadless
>
> Saludos,
>


Cierto, así es. ¿Y para pararla?.
--
Saludos cordiales.
Pablo.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/4BBEE987...@gmail.com

Pablo Braulio

unread,
Apr 9, 2010, 5:00:01 AM4/9/10
to

Pablo Braulio escribió:


>>
>> "VBoxHeadless --startvm" creo que es lo que buscas.
>>
>> http://www.virtualbox.org/manual/ch07.html#vboxheadless
>>
>> Saludos,
>>
>
>
> Cierto, así es. ¿Y para pararla?.

Creo que debe ser VBoxManage controlvm NOMBRE poweroff

¿Cierto?.
--
Saludos cordiales.
Pablo.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/4BBEEAB9...@gmail.com

Camaleón

unread,
Apr 9, 2010, 5:00:02 AM4/9/10
to
El Fri, 09 Apr 2010 10:47:03 +0200, Pablo Braulio escribió:


>> "VBoxHeadless --startvm" creo que es lo que buscas.
>>
>> http://www.virtualbox.org/manual/ch07.html#vboxheadless
>>
>> Saludos,
>>
>>
>
> Cierto, así es. ¿Y para pararla?.

Con VBoxManage deberías poder pausarla o detenerla...

Ah, mira:

http://www.virtualbox.org/manual/ch08.html#vboxmanage-controlvm

VBoxManage controlvm <vm> poweroff

Saludos,

--
Camaleón


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/pan.2010.04...@gmail.com

Pablo Braulio

unread,
Apr 9, 2010, 5:10:01 AM4/9/10
to
>
> Con VBoxManage deberías poder pausarla o detenerla...
>
> Ah, mira:
>
> http://www.virtualbox.org/manual/ch08.html#vboxmanage-controlvm
>
> VBoxManage controlvm <vm> poweroff
>
> Saludos,
>

El caso es que al pararla me da error.

La inicio como me has dicho

VBoxHeadless --startvm ubuntu

Y luego intento pararla.

VBoxManage controlvm ubuntu poweroff
Sun VirtualBox Command Line Management Interface Version 3.1.6
(C) 2005-2010 Sun Microsystems, Inc.
All rights reserved.

ERROR: The machine 'ubuntu' does not have an open session
Details: code VBOX_E_INVALID_SESSION_STATE (0x80bb000b), component
Machine, interface IMachine, callee nsISupports
Context: "OpenExistingSession(a->session, machineuuid)" at line 94 of
file VBoxManageControlVM.cpp


Me dice que no tiene una sesión abierta.
--
Saludos cordiales.
Pablo.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/4BBEED5D...@gmail.com

Pablo Braulio

unread,
Apr 9, 2010, 5:30:03 AM4/9/10
to

Camaleón escribió:
> El Fri, 09 Apr 2010 11:03:25 +0200, Pablo Braulio escribió:
>
>>> VBoxManage controlvm <vm> poweroff


>>>
>>>
>>>
>> El caso es que al pararla me da error.
>>
>> La inicio como me has dicho
>>
>> VBoxHeadless --startvm ubuntu
>
>

> ¿Y se inicia, realmente?
>

Si se inicia. Lo ejecuto en mi equipo fuera del entorno gráfico y luego
en el escritorio lo puedo comprobar con la interfaz de VirtualBox.

>
>> Y luego intento pararla.
>>
>> VBoxManage controlvm ubuntu poweroff
>> Sun VirtualBox Command Line Management Interface Version 3.1.6 (C)
>> 2005-2010 Sun Microsystems, Inc.
>> All rights reserved.
>>
>> ERROR: The machine 'ubuntu' does not have an open session Details: code
>> VBOX_E_INVALID_SESSION_STATE (0x80bb000b), component Machine, interface
>> IMachine, callee nsISupports Context: "OpenExistingSession(a->session,
>> machineuuid)" at line 94 of file VBoxManageControlVM.cpp
>>
>>
>> Me dice que no tiene una sesión abierta.
>
>

> Curioso :-?
>
> Sólo he encontrado ese mismo error en un mensaje reciente de los foros de
> VirtualBox:
>
> ERROR: The machine 'debian' does not have an open session
> http://forums.virtualbox.org/viewtopic.php?f=6&t=26393
>
> Pero no tiene ninguna respuesta :-/
>
> Saludos,
>

Vaya.

--
Saludos cordiales.
Pablo.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/4BBEF230...@gmail.com

Camaleón

unread,
Apr 9, 2010, 5:30:01 AM4/9/10
to
El Fri, 09 Apr 2010 11:03:25 +0200, Pablo Braulio escribió:

>> VBoxManage controlvm <vm> poweroff
>>
>>
>>

> El caso es que al pararla me da error.
>
> La inicio como me has dicho
>
> VBoxHeadless --startvm ubuntu


¿Y se inicia, realmente?

> Y luego intento pararla.
>
> VBoxManage controlvm ubuntu poweroff
> Sun VirtualBox Command Line Management Interface Version 3.1.6 (C)
> 2005-2010 Sun Microsystems, Inc.
> All rights reserved.
>
> ERROR: The machine 'ubuntu' does not have an open session Details: code
> VBOX_E_INVALID_SESSION_STATE (0x80bb000b), component Machine, interface
> IMachine, callee nsISupports Context: "OpenExistingSession(a->session,
> machineuuid)" at line 94 of file VBoxManageControlVM.cpp
>
>
> Me dice que no tiene una sesión abierta.


Curioso :-?

Sólo he encontrado ese mismo error en un mensaje reciente de los foros de
VirtualBox:

ERROR: The machine 'debian' does not have an open session
http://forums.virtualbox.org/viewtopic.php?f=6&t=26393

Pero no tiene ninguna respuesta :-/

Saludos,

--
Camaleón


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/pan.2010.04...@gmail.com

Camaleón

unread,
Apr 9, 2010, 6:00:02 AM4/9/10
to
El Fri, 09 Apr 2010 11:24:00 +0200, Pablo Braulio escribió:

> Camaleón escribió:



>> ¿Y se inicia, realmente?
>>
>>
> Si se inicia. Lo ejecuto en mi equipo fuera del entorno gráfico y luego
> en el escritorio lo puedo comprobar con la interfaz de VirtualBox.

Se me ocurre una "chapuzilla".

Para la VM en remoto, para que no se cierre a lo bruto e intenta
iniciarla de nuevo:

VBoxManage startvm --type headless ubuntu

Y luego, intenta detenerla.

VBoxManage controlvm ubuntu poweroff

A ver qué nos cuenta...

Saludos,

--
Camaleón


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/pan.2010.04...@gmail.com

Javier Silva

unread,
Apr 9, 2010, 7:10:01 AM4/9/10
to
No mencionas que VBox tienes instalado, pero hay algunas versiones que permiten controlar las VM por VNC/RDP.

Por otro lado para apagar el servidor, también puedes conectarte a el y apagar con poweroff o shutdown.

Para abrir aplicaciones en modo gráfico de forma remota usando SSH, sin iniciar el GDM al arranque y sin desplazarse al servidor físicamente, te conectas de la siguiente forma:

ssh -X -l root <IP de tu máquina>

a continuación, puedes iniciar cualquier aplicación gráfica, por ejemplo escribes:

synaptic

y te abre el actualizador/instalador de paquetes.

Un saludo a todos/as.
Javier Silva.

Ricardo Marcelo Alvarez

unread,
Apr 9, 2010, 8:30:01 AM4/9/10
to

Hola,

Tambien para hacer un apagado limpio puedes ejecutar este comando, lo unico despues tienes es esperar que la maquina virtual termine de cerrar bien

VBoxManage -nologo controlvm NOMBRE_MAQUINA acpipowerbutton

Te dejo este script, que te puede servir de ejemplo , las maquinas las tenia creadas con el usuario virtualbox (lo cree para correr todo lo que sea virtualbox)

/etc/init.d/virtualbox-manejador.sh
====================================================================================================
#! /bin/sh

### BEGIN INIT INFO
# Provides: virtualbox-manejador
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Virtualbox Manejador
# Description: Script que arranca las maquinas virtuales de virtualbox
### END INIT INFO

# Author: Ricardo Marcelo Alvarez <rmal...@gnupanel.org>
#
# Please remove the "Author" lines above and replace them
# with your own name if you copy and modify this script.

# Do NOT "set -e"

# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Arrancando maquinas virtuales VIRTUALBOX"
NAME=virtualbox-manejador.sh
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/virtualbox-manejador.sh

. /lib/init/vars.sh

. /lib/lsb/init-functions

. /etc/default/virtualbox-manejador

MAQUINAS=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo list vms" | /usr/bin/mawk '{print $1;}' | /usr/bin/sort -r `

do_start()
{
##subir_redes
for maquina in ${MAQUINAS}
do
ARRANCAR=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo list runningvms" | /usr/bin/mawk '{print $1;}' | /bin/grep ${maquina} | /usr/bin/wc -l `
if [ ${ARRANCAR} -eq 0 ]
then

NOMBRE=${maquina}
/bin/echo "Arrancando maquina virtual: ${NOMBRE} "
/bin/su ${USUARIO} -c "/usr/bin/VBoxHeadless --vrdp off --startvm ${maquina} & " 1>/dev/null
/bin/echo Listo
/bin/sleep 4
else
/bin/echo "${maquina} ya se encontraba funcionando"
fi
echo ""
/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo controlvm ${maquina} setlinkstate1 on "
/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo controlvm ${maquina} setlinkstate2 on "
done
/bin/sleep 5
/bin/echo "1" > /var/run/checkea_virtualbox
}

parar_maquinas()
{
PARAR=0
for maquina in ${MAQUINAS}
do
PARAR=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo list runningvms " | /bin/grep ${maquina} | /usr/bin/wc -l `
if [ ${PARAR} -eq 1 ]
then
/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo controlvm ${maquina} acpipowerbutton"
fi
done
}

parar_maquinas_prepo()
{
PARAR=0
for maquina in ${MAQUINAS}
do
PARAR=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo list runningvms " | /bin/grep ${maquina} | /usr/bin/wc -l `
if [ ${PARAR} -eq 1 ]
then
/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo controlvm ${maquina} poweroff "
fi
done
}

subir_redes()
{
PARAR=0
for maquina in ${MAQUINAS}
do
PLACA_RED=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage showvminfo ${maquina} -details" | /bin/grep "NIC 1" | /usr/bin/mawk -F "\'" '{print $2;}'`
/usr/bin/VBoxAddIF ${PLACA_RED} ${USUARIO} ${PUENTE} 1>/dev/null 2>/dev/null
/usr/bin/VBoxTunctl -u ${USUARIO} -g ${GRUPO} -t ${PLACA_RED} 1>/dev/null 2>/dev/null
#/sbin/ifconfig ${PLACA_RED} down
#CAMBIO=${PLACA_RED}"_mac"
#MAC_CAMBIO=${!CAMBIO}
#/usr/bin/macchanger -m ${MAC_CAMBIO} ${PLACA_RED} 1>/dev/null 2>/dev/null
#/sbin/ifconfig ${PLACA_RED} up arp
#/usr/sbin/brctl addif ${PUENTE} ${PLACA_RED}
#/bin/echo "0" > /proc/sys/net/ipv4/ip_forward
#/bin/echo "0" > /proc/sys/net/ipv4/conf/${PLACA_RED}/proxy_arp
done
}

bajar_redes()
{
PARAR=0
for maquina in ${MAQUINAS}
do
PLACA_RED=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage showvminfo ${maquina} -details" | /bin/grep "NIC 1" | /usr/bin/mawk -F "\'" '{print $2;}'`
/usr/bin/VBoxTunctl -d ${PLACA_RED} 1>/dev/null 2>/dev/null
/usr/bin/VBoxDeleteIF ${PLACA_RED} 1>/dev/null 2>/dev/null
done
}

#
# Function that stops the daemon/service
#
do_stop()
{
/bin/echo "0" > /var/run/checkea_virtualbox
/bin/echo -n "Deteniendo las siguientes maquinas virtuales VIRTUALBOX: "

for maquinal in ${MAQUINAS}
do
NOMBRE=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo showvminfo ${maquinal} | /bin/grep Name: " | /usr/bin/mawk '{print $2;}' `
echo -n "${NOMBRE} "
done

parar_maquinas
CANTIDAD=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo list runningvms | /usr/bin/wc -l " `
CONTADOR=0
CONTADOR_PREPO=0

while [ ${CANTIDAD} -ne 0 ]
do
/bin/echo -n "."

CANTIDAD=`/bin/su ${USUARIO} -c "/usr/bin/VBoxManage -nologo list runningvms | /usr/bin/wc -l " `
/bin/sleep 1

if [ ${CONTADOR} -eq 60 ]
then
CONTADOR=0
parar_maquinas
/bin/sleep 1
fi

CONTADOR=$[ ${CONTADOR} + 1 ]

if [ ${CONTADOR_PREPO} -eq ${MAX_STOP_TIME} ]
then
CONTADOR_PREPO=0
echo ""
echo "El tiempo de espera a superado los ${MAX_STOP_TIME} segundos, se forzara el apagado de las maquinas que permanezcan encendidas"
parar_maquinas_prepo
CANTIDAD=0
/bin/sleep 21
fi

CONTADOR_PREPO=$[ ${CONTADOR_PREPO} + 1 ]
done
/bin/echo "."
##bajar_redes
/bin/echo "Listo"
/bin/sleep 2
/bin/echo ""
}

#
# Function that sends a SIGHUP to the daemon/service
#
do_restart() {
do_stop
/bin/sleep 2
do_start
}

case "$1" in
start)
if [ ${ACTIVADO} = "yes" ]
then
/etc/init.d/vboxdrv start
/bin/sleep 21
do_start
/usr/local/bin/montar-gnupanel start
else
/bin/echo "Maquinas virtuales estan desabilitadas."
/bin/sleep 4
fi
;;
stop)
if [ ${ACTIVADO} = "yes" ]
then
/usr/local/bin/montar-gnupanel stop
do_stop
else
/bin/echo "Maquinas virtuales estan desabilitadas."
/bin/sleep 4
fi
;;
restart)
if [ ${ACTIVADO} = "yes" ]
then
/bin/sleep 21
/etc/init.d/vboxdrv start
do_restart
fi
;;
reload)
if [ ${ACTIVADO} = "yes" ]
then
do_restart
fi
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
exit 3
;;
esac


====================================================================================================


/etc/default/virtualbox-manejador
====================================================================================================

ACTIVADO=no
MONTAR=yes

MAX_STOP_TIME=150

USUARIO=virtualbox

GRUPO=virtualbox

PUENTE=vboxbr0

vbox0_mac=00:FF:92:ED:22:D0
vbox1_mac=00:FF:92:ED:22:D1
vbox2_mac=00:FF:92:ED:22:D2
vbox3_mac=00:FF:92:ED:22:D3
vbox4_mac=00:FF:92:ED:22:D4
vbox5_mac=00:FF:92:ED:22:D5
vbox6_mac=00:FF:92:ED:22:D6
vbox7_mac=00:FF:92:ED:22:D7
vbox8_mac=00:FF:92:ED:22:D8
vbox9_mac=00:FF:92:ED:22:D9

====================================================================================================


Saludos.


--
Ricardo Marcelo Alvarez desarrollador de GNUPanel
Panel de control de hosting GPL para debian
GPL hosting control panel for Debian
http://www.gnupanel.org
__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/20100409092108.4b520081@california

Pablo Braulio

unread,
Apr 9, 2010, 10:20:01 AM4/9/10
to
Gracias por el script, lo tendré en cuenta para hacer el mio que
arranque las máquinas virtuales en el arranque y las pare.

De momento estoy creando la máquina virtual mediante comandos. Cuando
termine os cuento que tal.

--
Saludos cordiales.
Pablo.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/4BBF3703...@gmail.com

Pablo Braulio

unread,
Apr 9, 2010, 11:50:02 AM4/9/10
to
Hola de nuevo.

He conseguido crear mi máquina virtual en consola, siguiendo el manual
http://www.virtualbox.org/manual/ch07.html#id2533145

El problema que me encuentro ahora es que tras hacer la instalación y
apagar la máquina virtual, me sigue iniciando de la imagen .iso que he
descargado para la instalación.

He cambiado esto:

VBoxManage modifyvm VmBruli --boot1 disk

Pero me sigue iniciando de la imagen de ubuntu para hacer de nuevo la
instalación.

¿Alguien sabe como solucionar esto?.

--
Saludos cordiales.
Pablo.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/4BBF4AFC...@gmail.com

Pablo Braulio

unread,
Apr 9, 2010, 12:20:02 PM4/9/10
to

Pablo Braulio escribió:


> Hola de nuevo.
>
> He conseguido crear mi máquina virtual en consola, siguiendo el manual
> http://www.virtualbox.org/manual/ch07.html#id2533145
>
> El problema que me encuentro ahora es que tras hacer la instalación y
> apagar la máquina virtual, me sigue iniciando de la imagen .iso que he
> descargado para la instalación.
>
> He cambiado esto:
>
> VBoxManage modifyvm VmBruli --boot1 disk
>
> Pero me sigue iniciando de la imagen de ubuntu para hacer de nuevo la
> instalación.
>
> ¿Alguien sabe como solucionar esto?.
>

Vale ya lo he encontrado.

VBoxManage modifyvm NOMBRE --boot1 disk
--
Saludos cordiales.
Pablo.


--
To UNSUBSCRIBE, email to debian-user-s...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Archive: http://lists.debian.org/4BBF51CA...@gmail.com

0 new messages