J'ai plusieurs machines virtuelles dans mon Ubuntu12.04, chaque fois que j'éteins ou redémarre, je dois les démarrer une par une.
Je veux une aide pour écrire script pour démarrer automatiquement les machines VBox au démarrage.
J'ai plusieurs machines virtuelles dans mon Ubuntu12.04, chaque fois que j'éteins ou redémarre, je dois les démarrer une par une.
Je veux une aide pour écrire script pour démarrer automatiquement les machines VBox au démarrage.
Pour le serveur Ubuntu 16.04.1 LTS, j'ai résolu ce problème en faisant :
sudo systemctl enable rc-local.service
/etc/rc.local
su virtual_box_user -c "VBoxHeadless -startvm 'virtual_machine_name' &"
Notez que le virtual_box_user est celui qui peut voir la machine virtuelle (que vous souhaitez démarrer) exécuter la commande :
VBoxManage list vms
Ejemplo:
$ VBoxManage list vms
"virtualbox1" {2eb3ba3b-bcb3-4515-95d9-d33bce214c28}
"virtualbox2" {62365634-f2q4-40c0-b4ed-22f4ab84441a}
La version modifiée /etc/rc.local
devrait ressembler à ceci
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
su bob -c "VBoxManage startvm 'virtualbox1' --type headless &"
su bob -c "VBoxManage startvm 'virtualbox2' --type headless &"
exit 0
Si vous ne choisissez pas le bon propriétaire de virtualbox, vous devriez voir l'erreur en tapant la commande :
sudo systemctl status rc-local.service
J'espère que cela peut aider
1 - Créez un fichier :
nano /etc/init.d/vm-start
Collez ça :
#!/bin/bash
/bin/echo "* Starting VMS..."
/bin/sleep 1
/bin/su validuser -c "/usr/bin/vboxmanage startvm MACHINENAME--type headless"
/bin/sleep 1
/bin/su validuser -c "/usr/bin/vboxmanage startvm MACHINENAME2--type headless" /bin/sleep 1
2 - Rendez le fichier vm-start exécutable :
chmod +x /etc/init.d/vm-start
3 - Modifier rc.local
nano /etc/rc.local
Ajoutez ceci :
#!/bin/bash
/etc/init.d/vm-start
exit 0
4 - Redémarrage.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.