Bonjour à tous,
Je suis sous Ubuntu 9.04 (Jaunty) et j'utilise Virtualbox version 3.1.6
et, je préfère vous prévenir, je ne suis pas très calé en shell etc.
Je souhaiterais lancer une machine virtuelle au démarrage (et non à
l'ouverture de session) de mon PC. En fait, je pensais que ce n'était
pas possible, mais quelques recherches sur Internet semblaient indiquer
que si.
Voici mes deux tentatives qui ne marchent pas :
1) Si je lance en ligne de commandes
~$ /usr/bin/VBoxVRDP --startvm XPpro
alors ma machine virtuelle "XPpro" se lance sans interface graphique et
je peux bien accéder à cette machine via une prise en main à distance.
J'ai pu voir, qu'au démarrage de Ubuntu, le script /etc/rc.local était
le dernier script exécuté. Du coup, j'ai édité rc.local comme ceci :
#--------------------
/usr/bin/VBoxVRDP --startvm XPpro > /home/francois/Bureau/sortie.txt 2>&1 &
exit 0
#--------------------
Je redémarre le PC : pas de machine virtuelle lancée. Dans, le fichier
sortie.txt, rien, le vide complet.
2) Autre tentative, qui dépasse largement mes compétences, faire un
service via les scripts du dossier /etc/init.d/. Je ne sais pas faire
mais il y avait cette page qui avait l'air bien :
http://www.glump.net/howto/virtualbox_as_a_service#create_the_init.d_script
J'ai suivi (je crois) les étapes, mais ça ne marche pas. Quand je lance
/etc/init.d/virtualbox-XPrpo start
je ne reprends jamais la main sur le prompt. Des processus sont bien
lancés, mais manifestement pas de machine virtuelle lancée.
Bonjour à tous,
Je suis sous Ubuntu 9.04 (Jaunty) et j'utilise Virtualbox version 3.1.6
et, je préfère vous prévenir, je ne suis pas très calé en shell etc.
Je souhaiterais lancer une machine virtuelle au démarrage (et non à
l'ouverture de session) de mon PC. En fait, je pensais que ce n'était
pas possible, mais quelques recherches sur Internet semblaient indiquer
que si.
Voici mes deux tentatives qui ne marchent pas :
1) Si je lance en ligne de commandes
~$ /usr/bin/VBoxVRDP --startvm XPpro
alors ma machine virtuelle "XPpro" se lance sans interface graphique et
je peux bien accéder à cette machine via une prise en main à distance.
J'ai pu voir, qu'au démarrage de Ubuntu, le script /etc/rc.local était
le dernier script exécuté. Du coup, j'ai édité rc.local comme ceci :
#--------------------
/usr/bin/VBoxVRDP --startvm XPpro > /home/francois/Bureau/sortie.txt 2>&1 &
exit 0
#--------------------
Je redémarre le PC : pas de machine virtuelle lancée. Dans, le fichier
sortie.txt, rien, le vide complet.
2) Autre tentative, qui dépasse largement mes compétences, faire un
service via les scripts du dossier /etc/init.d/. Je ne sais pas faire
mais il y avait cette page qui avait l'air bien :
http://www.glump.net/howto/virtualbox_as_a_service#create_the_init.d_script
J'ai suivi (je crois) les étapes, mais ça ne marche pas. Quand je lance
/etc/init.d/virtualbox-XPrpo start
je ne reprends jamais la main sur le prompt. Des processus sont bien
lancés, mais manifestement pas de machine virtuelle lancée.
Bonjour à tous,
Je suis sous Ubuntu 9.04 (Jaunty) et j'utilise Virtualbox version 3.1.6
et, je préfère vous prévenir, je ne suis pas très calé en shell etc.
Je souhaiterais lancer une machine virtuelle au démarrage (et non à
l'ouverture de session) de mon PC. En fait, je pensais que ce n'était
pas possible, mais quelques recherches sur Internet semblaient indiquer
que si.
Voici mes deux tentatives qui ne marchent pas :
1) Si je lance en ligne de commandes
~$ /usr/bin/VBoxVRDP --startvm XPpro
alors ma machine virtuelle "XPpro" se lance sans interface graphique et
je peux bien accéder à cette machine via une prise en main à distance.
J'ai pu voir, qu'au démarrage de Ubuntu, le script /etc/rc.local était
le dernier script exécuté. Du coup, j'ai édité rc.local comme ceci :
#--------------------
/usr/bin/VBoxVRDP --startvm XPpro > /home/francois/Bureau/sortie.txt 2>&1 &
exit 0
#--------------------
Je redémarre le PC : pas de machine virtuelle lancée. Dans, le fichier
sortie.txt, rien, le vide complet.
2) Autre tentative, qui dépasse largement mes compétences, faire un
service via les scripts du dossier /etc/init.d/. Je ne sais pas faire
mais il y avait cette page qui avait l'air bien :
http://www.glump.net/howto/virtualbox_as_a_service#create_the_init.d_script
J'ai suivi (je crois) les étapes, mais ça ne marche pas. Quand je lance
/etc/init.d/virtualbox-XPrpo start
je ne reprends jamais la main sur le prompt. Des processus sont bien
lancés, mais manifestement pas de machine virtuelle lancée.
tu peux mettre un dump de ton script stp ?
tu peux mettre un dump de ton script stp ?
tu peux mettre un dump de ton script stp ?
Je suis sous Ubuntu 9.04 (Jaunty) et j'utilise Virtualbox version 3.1.6
et, je préfère vous prévenir, je ne suis pas très calé en shell etc.
Je souhaiterais lancer une machine virtuelle au démarrage (et non à
l'ouverture de session) de mon PC. En fait, je pensais que ce n'était
pas possible, mais quelques recherches sur Internet semblaient indiquer
que si.
Voici mes deux tentatives qui ne marchent pas :
1) Si je lance en ligne de commandes
~$ /usr/bin/VBoxVRDP --startvm XPpro
alors ma machine virtuelle "XPpro" se lance sans interface graphique et
je peux bien accéder à cette machine via une prise en main à distance.
J'ai pu voir, qu'au démarrage de Ubuntu, le script /etc/rc.local était
le dernier script exécuté. Du coup, j'ai édité rc.local comme ceci :
#--------------------
/usr/bin/VBoxVRDP --startvm XPpro > /home/francois/Bureau/sortie.txt 2>&1 &
exit 0
#--------------------
Je suis sous Ubuntu 9.04 (Jaunty) et j'utilise Virtualbox version 3.1.6
et, je préfère vous prévenir, je ne suis pas très calé en shell etc.
Je souhaiterais lancer une machine virtuelle au démarrage (et non à
l'ouverture de session) de mon PC. En fait, je pensais que ce n'était
pas possible, mais quelques recherches sur Internet semblaient indiquer
que si.
Voici mes deux tentatives qui ne marchent pas :
1) Si je lance en ligne de commandes
~$ /usr/bin/VBoxVRDP --startvm XPpro
alors ma machine virtuelle "XPpro" se lance sans interface graphique et
je peux bien accéder à cette machine via une prise en main à distance.
J'ai pu voir, qu'au démarrage de Ubuntu, le script /etc/rc.local était
le dernier script exécuté. Du coup, j'ai édité rc.local comme ceci :
#--------------------
/usr/bin/VBoxVRDP --startvm XPpro > /home/francois/Bureau/sortie.txt 2>&1 &
exit 0
#--------------------
Je suis sous Ubuntu 9.04 (Jaunty) et j'utilise Virtualbox version 3.1.6
et, je préfère vous prévenir, je ne suis pas très calé en shell etc.
Je souhaiterais lancer une machine virtuelle au démarrage (et non à
l'ouverture de session) de mon PC. En fait, je pensais que ce n'était
pas possible, mais quelques recherches sur Internet semblaient indiquer
que si.
Voici mes deux tentatives qui ne marchent pas :
1) Si je lance en ligne de commandes
~$ /usr/bin/VBoxVRDP --startvm XPpro
alors ma machine virtuelle "XPpro" se lance sans interface graphique et
je peux bien accéder à cette machine via une prise en main à distance.
J'ai pu voir, qu'au démarrage de Ubuntu, le script /etc/rc.local était
le dernier script exécuté. Du coup, j'ai édité rc.local comme ceci :
#--------------------
/usr/bin/VBoxVRDP --startvm XPpro > /home/francois/Bureau/sortie.txt 2>&1 &
exit 0
#--------------------
Je pense qu'il faut que le serveur X soit lancé... De plus la commande
-startvm semble prendre la machine "XPpro" définie pour l'utilisateur
courant. Dans rc.local, l'utilisateur est root...
Il faut donc le démarrer avec l'interface graphique au login de francois
donc rajouter ça dans "programmes au démarrage" de francois...
Je pense qu'il faut que le serveur X soit lancé... De plus la commande
-startvm semble prendre la machine "XPpro" définie pour l'utilisateur
courant. Dans rc.local, l'utilisateur est root...
Il faut donc le démarrer avec l'interface graphique au login de francois
donc rajouter ça dans "programmes au démarrage" de francois...
Je pense qu'il faut que le serveur X soit lancé... De plus la commande
-startvm semble prendre la machine "XPpro" définie pour l'utilisateur
courant. Dans rc.local, l'utilisateur est root...
Il faut donc le démarrer avec l'interface graphique au login de francois
donc rajouter ça dans "programmes au démarrage" de francois...
Toxico Nimbus a écrit :tu peux mettre un dump de ton script stp ?
Aye, désolé je ne sais pas de quoi tu parles. De quel script parles tu
et c'est quoi un dump ?
Toxico Nimbus a écrit :
tu peux mettre un dump de ton script stp ?
Aye, désolé je ne sais pas de quoi tu parles. De quel script parles tu
et c'est quoi un dump ?
Toxico Nimbus a écrit :tu peux mettre un dump de ton script stp ?
Aye, désolé je ne sais pas de quoi tu parles. De quel script parles tu
et c'est quoi un dump ?
Je pense qu'il faut que le serveur X soit lancé... De plus la commande
-startvm semble prendre la machine "XPpro" définie pour l'utilisateur
courant. Dans rc.local, l'utilisateur est root...
Je pense qu'il faut que le serveur X soit lancé... De plus la commande
-startvm semble prendre la machine "XPpro" définie pour l'utilisateur
courant. Dans rc.local, l'utilisateur est root...
Je pense qu'il faut que le serveur X soit lancé... De plus la commande
-startvm semble prendre la machine "XPpro" définie pour l'utilisateur
courant. Dans rc.local, l'utilisateur est root...
Ce que je veux dire, c'est qu'il faudrait que tu nous mette le listing
du script /etc/init.d/virtualbox-XPrpo tel que tu l'as modifié.
Ce que je veux dire, c'est qu'il faudrait que tu nous mette le listing
du script /etc/init.d/virtualbox-XPrpo tel que tu l'as modifié.
Ce que je veux dire, c'est qu'il faudrait que tu nous mette le listing
du script /etc/init.d/virtualbox-XPrpo tel que tu l'as modifié.
Toxico Nimbus a écrit :Ce que je veux dire, c'est qu'il faudrait que tu nous mette le listing
du script /etc/init.d/virtualbox-XPrpo tel que tu l'as modifié.
Ah, pardon je n'avais pas compris. Ok, donc, en suivant les instructions
de cette page,
http://www.glump.net/howto/virtualbox_as_a_service#create_the_init.d_script
j'ai :
a) créé le fichier /etc/default/virtualbox qui contient ça :
#--------------------------------
SHUTDOWN_USERS="francois" # space-delimited list of users who might have
runnings vms
SHUTDOWN=savestate # if any are found, suspend them to disk
#--------------------------------
b) et j'ai créé le fichier /etc/init.d/virtualbox-XPpro qui contient ça :
#---------(désolé c'est un peu gros)-----------------------
#! /bin/sh
### BEGIN INIT INFO
# Provides: virtualbox-XPpro
# Required-Start: $local_fs $remote_fs vboxdrv vboxnet
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: XPpro virtual machine
# Description: XPpro virtual machine hosted by VirtualBox
### END INIT INFO
# Author: Brendan Kidwell
#
# Based on /etc/init.d/skeleton from Ubuntu 8.04. Updated for Ubuntu 9.10.
# If you are using Ubuntu <9.10, you might need to change "Default-Stop"
# above to "S 0 1 6".
# Do NOT "set -e"
# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="XPpro virtual machine"
NAME=virtualbox-XPpro
SCRIPTNAME=/etc/init.d/$NAME
MANAGE_CMD=VBoxManage
VM_OWNER=francois
VM_NAME="XPpro" #This has to be the name exactly as it appears in your
VirtualBox GUI control panel.
# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep
"^State:s*running" >/dev/null && {
echo "$VM_NAME" is already running.
return 1
}
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>/dev/null || {
echo Failed to start "$VM_NAME".
return 2
}
echo "$VM_NAME" started or resumed.
return 0
}
#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep
"^State:s*running" >/dev/null || {
echo "$VM_NAME" is already stopped.
return 1
}
sudo -H -u $VM_OWNER $MANAGE_CMD controlvm "$VM_NAME" savestate || {
echo Failed to stop "$VM_NAME".
return 2
}
echo "$VM_NAME" suspended.
return 0
}
#
# Display "State" field from showinfo action
#
do_status()
{
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep "^State:s*.*$"
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
restart|force-reload)
#
# If the "reload" option is implemented then remove the
# 'force-reload' alias
#
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
status)
do_status
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2
exit 3
;;
esac
#--------------------------------
Ensuite, quand je tape :
:~$ /etc/init.d/virtualbox-XPpro status
State: powered off (since 2010-04-29T15:56:41.525000000)
Ok. Mais si je tape :
~$ /etc/init.d/virtualbox-XPpro start
je ne reprends jamais la main sur le prompt. J'ai bien des processus
VBoxXPCOMIPCD, VBoxSVC et VBoxHeadless qui apparaîssent dans "moniteur
système", mais pas de machines virtuelles lancé, ça c'est sûr : je le
vois grâce à la RAM utilisée par le PC qui est trop faible et grâce au
fait que je ne peux pas "pinguer" la machine virtuelle, chose que je
peux faire quand je lance la machine virtuelle via la commande
~$ /usr/bin/VBoxVRDP --startvm XPpro
Voilà, j'espère que j'ai bien répondu à la question cette fois. :-)
Toxico Nimbus a écrit :
Ce que je veux dire, c'est qu'il faudrait que tu nous mette le listing
du script /etc/init.d/virtualbox-XPrpo tel que tu l'as modifié.
Ah, pardon je n'avais pas compris. Ok, donc, en suivant les instructions
de cette page,
http://www.glump.net/howto/virtualbox_as_a_service#create_the_init.d_script
j'ai :
a) créé le fichier /etc/default/virtualbox qui contient ça :
#--------------------------------
SHUTDOWN_USERS="francois" # space-delimited list of users who might have
runnings vms
SHUTDOWN=savestate # if any are found, suspend them to disk
#--------------------------------
b) et j'ai créé le fichier /etc/init.d/virtualbox-XPpro qui contient ça :
#---------(désolé c'est un peu gros)-----------------------
#! /bin/sh
### BEGIN INIT INFO
# Provides: virtualbox-XPpro
# Required-Start: $local_fs $remote_fs vboxdrv vboxnet
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: XPpro virtual machine
# Description: XPpro virtual machine hosted by VirtualBox
### END INIT INFO
# Author: Brendan Kidwell <brendan@glump.net>
#
# Based on /etc/init.d/skeleton from Ubuntu 8.04. Updated for Ubuntu 9.10.
# If you are using Ubuntu <9.10, you might need to change "Default-Stop"
# above to "S 0 1 6".
# Do NOT "set -e"
# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="XPpro virtual machine"
NAME=virtualbox-XPpro
SCRIPTNAME=/etc/init.d/$NAME
MANAGE_CMD=VBoxManage
VM_OWNER=francois
VM_NAME="XPpro" #This has to be the name exactly as it appears in your
VirtualBox GUI control panel.
# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep
"^State:s*running" >/dev/null && {
echo "$VM_NAME" is already running.
return 1
}
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>/dev/null || {
echo Failed to start "$VM_NAME".
return 2
}
echo "$VM_NAME" started or resumed.
return 0
}
#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep
"^State:s*running" >/dev/null || {
echo "$VM_NAME" is already stopped.
return 1
}
sudo -H -u $VM_OWNER $MANAGE_CMD controlvm "$VM_NAME" savestate || {
echo Failed to stop "$VM_NAME".
return 2
}
echo "$VM_NAME" suspended.
return 0
}
#
# Display "State" field from showinfo action
#
do_status()
{
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep "^State:s*.*$"
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
restart|force-reload)
#
# If the "reload" option is implemented then remove the
# 'force-reload' alias
#
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
status)
do_status
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2
exit 3
;;
esac
#--------------------------------
Ensuite, quand je tape :
:~$ /etc/init.d/virtualbox-XPpro status
State: powered off (since 2010-04-29T15:56:41.525000000)
Ok. Mais si je tape :
~$ /etc/init.d/virtualbox-XPpro start
je ne reprends jamais la main sur le prompt. J'ai bien des processus
VBoxXPCOMIPCD, VBoxSVC et VBoxHeadless qui apparaîssent dans "moniteur
système", mais pas de machines virtuelles lancé, ça c'est sûr : je le
vois grâce à la RAM utilisée par le PC qui est trop faible et grâce au
fait que je ne peux pas "pinguer" la machine virtuelle, chose que je
peux faire quand je lance la machine virtuelle via la commande
~$ /usr/bin/VBoxVRDP --startvm XPpro
Voilà, j'espère que j'ai bien répondu à la question cette fois. :-)
Toxico Nimbus a écrit :Ce que je veux dire, c'est qu'il faudrait que tu nous mette le listing
du script /etc/init.d/virtualbox-XPrpo tel que tu l'as modifié.
Ah, pardon je n'avais pas compris. Ok, donc, en suivant les instructions
de cette page,
http://www.glump.net/howto/virtualbox_as_a_service#create_the_init.d_script
j'ai :
a) créé le fichier /etc/default/virtualbox qui contient ça :
#--------------------------------
SHUTDOWN_USERS="francois" # space-delimited list of users who might have
runnings vms
SHUTDOWN=savestate # if any are found, suspend them to disk
#--------------------------------
b) et j'ai créé le fichier /etc/init.d/virtualbox-XPpro qui contient ça :
#---------(désolé c'est un peu gros)-----------------------
#! /bin/sh
### BEGIN INIT INFO
# Provides: virtualbox-XPpro
# Required-Start: $local_fs $remote_fs vboxdrv vboxnet
# Required-Stop: $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: XPpro virtual machine
# Description: XPpro virtual machine hosted by VirtualBox
### END INIT INFO
# Author: Brendan Kidwell
#
# Based on /etc/init.d/skeleton from Ubuntu 8.04. Updated for Ubuntu 9.10.
# If you are using Ubuntu <9.10, you might need to change "Default-Stop"
# above to "S 0 1 6".
# Do NOT "set -e"
# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="XPpro virtual machine"
NAME=virtualbox-XPpro
SCRIPTNAME=/etc/init.d/$NAME
MANAGE_CMD=VBoxManage
VM_OWNER=francois
VM_NAME="XPpro" #This has to be the name exactly as it appears in your
VirtualBox GUI control panel.
# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep
"^State:s*running" >/dev/null && {
echo "$VM_NAME" is already running.
return 1
}
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>/dev/null || {
echo Failed to start "$VM_NAME".
return 2
}
echo "$VM_NAME" started or resumed.
return 0
}
#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep
"^State:s*running" >/dev/null || {
echo "$VM_NAME" is already stopped.
return 1
}
sudo -H -u $VM_OWNER $MANAGE_CMD controlvm "$VM_NAME" savestate || {
echo Failed to stop "$VM_NAME".
return 2
}
echo "$VM_NAME" suspended.
return 0
}
#
# Display "State" field from showinfo action
#
do_status()
{
sudo -H -u $VM_OWNER $MANAGE_CMD showvminfo "$VM_NAME"|grep "^State:s*.*$"
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
restart|force-reload)
#
# If the "reload" option is implemented then remove the
# 'force-reload' alias
#
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
status)
do_status
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2
exit 3
;;
esac
#--------------------------------
Ensuite, quand je tape :
:~$ /etc/init.d/virtualbox-XPpro status
State: powered off (since 2010-04-29T15:56:41.525000000)
Ok. Mais si je tape :
~$ /etc/init.d/virtualbox-XPpro start
je ne reprends jamais la main sur le prompt. J'ai bien des processus
VBoxXPCOMIPCD, VBoxSVC et VBoxHeadless qui apparaîssent dans "moniteur
système", mais pas de machines virtuelles lancé, ça c'est sûr : je le
vois grâce à la RAM utilisée par le PC qui est trop faible et grâce au
fait que je ne peux pas "pinguer" la machine virtuelle, chose que je
peux faire quand je lance la machine virtuelle via la commande
~$ /usr/bin/VBoxVRDP --startvm XPpro
Voilà, j'espère que j'ai bien répondu à la question cette fois. :-)
1. essayer de voir la sortie si tu lance manuellement la vm comme le
fait le script:
sudo -H -u francois VBoxManage startvm "XPpro" -type vrdp
2. rediriger la sortie du lancement dans le script vers un log en
remplacant le >/dev/null par un >>/var/log/XPpro.log
3. essayer de remplacer la ligne de lancement dans le script par
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null
1. essayer de voir la sortie si tu lance manuellement la vm comme le
fait le script:
sudo -H -u francois VBoxManage startvm "XPpro" -type vrdp
2. rediriger la sortie du lancement dans le script vers un log en
remplacant le >/dev/null par un >>/var/log/XPpro.log
3. essayer de remplacer la ligne de lancement dans le script par
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null
1. essayer de voir la sortie si tu lance manuellement la vm comme le
fait le script:
sudo -H -u francois VBoxManage startvm "XPpro" -type vrdp
2. rediriger la sortie du lancement dans le script vers un log en
remplacant le >/dev/null par un >>/var/log/XPpro.log
3. essayer de remplacer la ligne de lancement dans le script par
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null
Déjà merci Toxico Nimbus pour ton aide. Voici les résultats des tests
que tu m'as demandé de faire.
Toxico Nimbus a écrit :1. essayer de voir la sortie si tu lance manuellement la vm comme le
fait le script:
sudo -H -u francois VBoxManage startvm "XPpro" -type vrdp
J'ai essayé cette commande manuellement et ça marche très bien. Non
seulement je reprends la main sur le prompt immédiatement après avoir
tapé la commande, mais en plus la machine virtuelle XPpro est bien
lancée et accessible sur le réseau.2. rediriger la sortie du lancement dans le script vers un log en
remplacant le >/dev/null par un >>/var/log/XPpro.log
Dans le script virtualbox-XPpro que j'ai mis dans mon message précédent,
plus exactement dans le contenu de la fonction do_start(), j'ai remplacé
la ligne
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>/dev/null || {
par la ligne
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>>/home/francois/Bureau/XPpro.log || {
Ensuite, avec le compte "francois" (qui est le compte sur lequel je suis
toujours connecté), je tape en ligne de commande
/etc/init.d/virtualbox-XPpro start
Dans ce cas :
a) Je ne reprends jamais la main sur le prompt.
b) un fichier XPpro.log apparaît sur mon Bureau mais il est complètement
vide (et le restera du début à la fin).
c) aucun machine virtuelle lancée3. essayer de remplacer la ligne de lancement dans le script par
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null
Si je mets la ligne
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null || {
et que je tape
/etc/init.d/virtualbox-XPpro start
alors là c'est intéressant car, certes, je ne reprends jamais la main
sur le prompt (ce qui n'est pas normal, n'est-ce pas ?), mais par contre
la machine virtuelle XPpro est lancée. Si je me connecte à celle-ci via
le réseau et que je l'éteins, alors je récupère la main sur le prompt
avec, juste avant, ce message.
XPpro started or resumed.
Déjà merci Toxico Nimbus pour ton aide. Voici les résultats des tests
que tu m'as demandé de faire.
Toxico Nimbus a écrit :
1. essayer de voir la sortie si tu lance manuellement la vm comme le
fait le script:
sudo -H -u francois VBoxManage startvm "XPpro" -type vrdp
J'ai essayé cette commande manuellement et ça marche très bien. Non
seulement je reprends la main sur le prompt immédiatement après avoir
tapé la commande, mais en plus la machine virtuelle XPpro est bien
lancée et accessible sur le réseau.
2. rediriger la sortie du lancement dans le script vers un log en
remplacant le >/dev/null par un >>/var/log/XPpro.log
Dans le script virtualbox-XPpro que j'ai mis dans mon message précédent,
plus exactement dans le contenu de la fonction do_start(), j'ai remplacé
la ligne
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>/dev/null || {
par la ligne
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>>/home/francois/Bureau/XPpro.log || {
Ensuite, avec le compte "francois" (qui est le compte sur lequel je suis
toujours connecté), je tape en ligne de commande
/etc/init.d/virtualbox-XPpro start
Dans ce cas :
a) Je ne reprends jamais la main sur le prompt.
b) un fichier XPpro.log apparaît sur mon Bureau mais il est complètement
vide (et le restera du début à la fin).
c) aucun machine virtuelle lancée
3. essayer de remplacer la ligne de lancement dans le script par
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null
Si je mets la ligne
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null || {
et que je tape
/etc/init.d/virtualbox-XPpro start
alors là c'est intéressant car, certes, je ne reprends jamais la main
sur le prompt (ce qui n'est pas normal, n'est-ce pas ?), mais par contre
la machine virtuelle XPpro est lancée. Si je me connecte à celle-ci via
le réseau et que je l'éteins, alors je récupère la main sur le prompt
avec, juste avant, ce message.
XPpro started or resumed.
Déjà merci Toxico Nimbus pour ton aide. Voici les résultats des tests
que tu m'as demandé de faire.
Toxico Nimbus a écrit :1. essayer de voir la sortie si tu lance manuellement la vm comme le
fait le script:
sudo -H -u francois VBoxManage startvm "XPpro" -type vrdp
J'ai essayé cette commande manuellement et ça marche très bien. Non
seulement je reprends la main sur le prompt immédiatement après avoir
tapé la commande, mais en plus la machine virtuelle XPpro est bien
lancée et accessible sur le réseau.2. rediriger la sortie du lancement dans le script vers un log en
remplacant le >/dev/null par un >>/var/log/XPpro.log
Dans le script virtualbox-XPpro que j'ai mis dans mon message précédent,
plus exactement dans le contenu de la fonction do_start(), j'ai remplacé
la ligne
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>/dev/null || {
par la ligne
sudo -H -u $VM_OWNER $MANAGE_CMD startvm "$VM_NAME" -type vrdp
>>/home/francois/Bureau/XPpro.log || {
Ensuite, avec le compte "francois" (qui est le compte sur lequel je suis
toujours connecté), je tape en ligne de commande
/etc/init.d/virtualbox-XPpro start
Dans ce cas :
a) Je ne reprends jamais la main sur le prompt.
b) un fichier XPpro.log apparaît sur mon Bureau mais il est complètement
vide (et le restera du début à la fin).
c) aucun machine virtuelle lancée3. essayer de remplacer la ligne de lancement dans le script par
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null
Si je mets la ligne
sudo -H -u $VM_OWNER VBoxVRDP --startvm $VM_NAME >/dev/null || {
et que je tape
/etc/init.d/virtualbox-XPpro start
alors là c'est intéressant car, certes, je ne reprends jamais la main
sur le prompt (ce qui n'est pas normal, n'est-ce pas ?), mais par contre
la machine virtuelle XPpro est lancée. Si je me connecte à celle-ci via
le réseau et que je l'éteins, alors je récupère la main sur le prompt
avec, juste avant, ce message.
XPpro started or resumed.