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.
Vous pouvez utiliser le service de démarrage automatique de VirtualBox. Un bon tutoriel décrivant comment le faire est posté sur le site de "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 ajouter quelques variables.
VBOXAUTOSTART_DB qui contient un chemin d'accès absolu au répertoire de la base de données autostart et
VBOXAUTOSTART_CONFIG qui contient l'emplacement des paramètres de configuration du démarrage automatique. Le fichier doit 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
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
}
Note : Si le nom de fichier vbox.cfg
ne fonctionne pas ci-dessus, essayez de le nommer autostart.cfg
.
Si vous êtes le seul utilisateur, vous pouvez simplement ajouter la ligne default_policy = allow
à la vbox.cfg
fichier.
Définissez les permissions sur le répertoire au groupe vboxuser et assurez-vous que les utilisateurs peuvent écrire sur le répertoire ainsi que sur le sticky bit.
sudo chgrp vboxusers /etc/vbox
sudo chmod 1775 /etc/vbox
Ajoutez chacun des utilisateurs au vboxusers
groupe.
sudo usermod -a -G vboxusers USERNAME
(remplacer USERNAME
avec le nom d'utilisateur)
NOTE : Si vous avez modifié les autorisations de groupe pour l'utilisateur actuel, déconnectez-vous et reconnectez-vous pour rafraîchir 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 du démarrage automatique avec la commande suivante
VBoxManage setproperty autostartdbpath /etc/vbox
et activer le démarrage automatique pour une VM individuelle avec
VBoxManage modifyvm <uuid|vmname> --autostart-enabled on
Cela créera un myuserid.start
dans /etc/vbox
répertoire
Maintenant redémarrez le service vboxautostart pour lire les changements.
sudo service vboxautostart-service restart
Redémarrez votre système et votre VM devrait démarrer
Vous pouvez utiliser vboxmanage startvm "my virtual machine" --type=headless|gui|sdl
(un de ceux-là). Utilisez "headless" si ce sont des serveurs auxquels vous vous connectez par d'autres moyens que l'utilisation de l'interface.
Pour exécuter ces commandes au bon moment pendant le démarrage, vous devez lire le document Upstart.
Après de nombreuses heures malheureuses à essayer d'obtenir les procédures dans de kdmurray ci-dessus pour travailler, sans succès, j'ai fini par trouver une méthode qui fonctionnait simplement.
Tout d'abord, mon hôte Linux (Mint 17) a été configuré au démarrage pour se connecter automatiquement à mon compte principal.
Ensuite, j'ai utilisé les fonctions de l'interface graphique de VirtualBox (v4.3.12) pour créer un raccourci pour chaque machine virtuelle sur le bureau. {Cliquez avec le bouton droit de la souris sur la VM dans la colonne de gauche et sélectionnez "Create Shortcut on Desktop"}.
Suivant : J'avais déjà trouvé qu'en faisant apparaître Menu->Control Centre -> Applications de démarrage -> Ajouter et l'ajout des raccourcis du bureau donnaient des fichiers qui ne fonctionnaient pas, j'ai remarqué grâce à d'autres réponses sur cette page que l'emplacement des démarrages est /home/USERNAME/.config/autostart J'ai donc fait un clic droit sur chacun des raccourcis de la VM du bureau et je les ai collés dans ce dossier, en écrasant les fichiers de merde précédents. Maintenant, ils ont développé les 'jolies' icônes de VirtualBox.
-)
Bill Williams
PS : hélas, il me manque encore quelque chose, car souvent les machines virtuelles ne démarrent pas au démarrage, mais génèrent une boîte de dialogue d'erreur qui dit qu'elles sont verrouillées, même si je leur ai dit de s'arrêter avant que l'hôte ne soit redémarré.
En plus de la bonne description du service vboxautostart ci-dessus, vous pouvez faire
VBoxManage modifyvm server --autostop-type savestate
pour arrêter automatiquement l'invité à l'arrêt. Pour Ubuntu 14.04, j'ai dû ajouter une fonction dormir 30 à la section vboxautostart-service stop, pour qu'il attende que l'invité soit complètement sauvegardé.
J'ai trouvé une méthode plus simple sous Ubuntu 16.04 avec VBox 5.1.34.
Dans VBox, cliquez avec le bouton droit de la souris sur la VM en cours d'exécution ou inactive dans la liste, puis sélectionnez "Créer un raccourci sur le bureau". Une fois que vous voyez l'icône sur votre bureau, ouvrez avec n'importe quel outil qui vous permet de voir la commande sous-jacente que VBox a créée (sur mon système, je fais un clic droit et je sélectionne 'propriétés') Copiez ceci dans le presse-papiers.
Ouvrez le programme de mise à jour des "applications de démarrage" et créez une nouvelle application qui démarre au moment du démarrage, en collant la commande que vous avez copiée à partir du lien du bureau créé par VirtualBox.
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.