J'ai de nombreuses machines virtuelles dans mon Ubuntu12.04, chaque fois que j'arrête ou que je redémarre, je dois les démarrer une par une.
Je veux une aide pour écrire un script pour démarrer automatiquement les machines VBox lors du démarrage.
Meilleure réponse
Vous pouvez utiliser le service de démarrage automatique de VirtualBox. Un bon tutoriel décrivant comment procéder est publié sur le blog "Life of a Geek Admin".
Les étapes suivantes sont adaptées de l'article de blog lié :
-
Vous devez d'abord créer le fichier
/etc/default/virtualbox
et ajoutez quelques variables.VBOXAUTOSTART_DB qui contient un chemin absolu vers le répertoire de la base de données de démarrage automatique et
VBOXAUTOSTART_CONFIG qui contient l'emplacement des paramètres de configuration de démarrage automatique. Le fichier devrait ressembler à ceci :# virtualbox defaults file VBOXAUTOSTART_DB=/etc/vbox VBOXAUTOSTART_CONFIG=/etc/vbox/vbox.cfg
-
Maintenant, nous devons créer le
/etc/vbox/vbox.cfg
fichier et ajouter# Default policy is to deny starting a VM, the other option is "allow". default_policy = deny # Create an entry for each user allowed to run autostart myuserid = { allow = true }
Remarque : Si le nom de fichier
vbox.cfg
ne fonctionne pas ci-dessus, essayez de le nommerautostart.cfg
.Si vous êtes le seul utilisateur, vous pouvez simplement ajouter la ligne
default_policy = allow
auvbox.cfg
fichier. -
Définissez les autorisations sur le répertoire pour le groupe vboxuser et assurez-vous que les utilisateurs peuvent écrire dans le répertoire ainsi que sticky bit.
sudo chgrp vboxusers /etc/vbox sudo chmod 1775 /etc/vbox
-
Ajoutez chacun des utilisateurs aux
vboxusers
groupe.sudo usermod -a -G vboxusers USERNAME
(remplacez
USERNAME
avec le nom d'utilisateur)
REMARQUE :Si vous avez modifié les autorisations de groupe pour l'utilisateur actuel, déconnectez-vous et reconnectez-vous pour actualiser les autorisations. (crédit @kR105)
-
Chaque utilisateur qui souhaite activer le démarrage automatique pour des machines individuelles doit définir le chemin d'accès au répertoire de la base de données de démarrage automatique avec
VBoxManage setproperty autostartdbpath /etc/vbox
et activer le démarrage automatique pour une machine virtuelle individuelle avec
VBoxManage modifyvm <uuid|vmname> --autostart-enabled on
Cela créera un
myuserid.start
fichier dans/etc/vbox
répertoire -
Redémarrez maintenant le service vboxautostart pour lire les modifications.
sudo service vboxautostart-service restart
-
Redémarrez votre système et votre VM devrait démarrer