Comment puis-je démarrer une machine virtuelle à partir VirtualBox sans tête à l'aide pyvb
modules?À partir VirtualBox VM en utilisant Python
Répondre
Vous pouvez utiliser les véritables liaisons python à la place (et non un wrapper qui appelle la ligne de commande VBoxManager dans un sous-processus, disons pyvb) relativement facilement en utilisant le script vboxshell.py de la boîte virtuelle. Ou vous pouvez l'utiliser pour la documentation de référence des liaisons python. Il n'y a pas de documentation pour les bindings python et honnêtement ils ne sont pas implémentés de manière pythonique. Les attributs et les méthodes ne sont pas présents dans le __dict__
, il n'est donc pas possible de les trouver par introspection (ou par auto-complétion dans ipython) et il n'y a pas de docstring non plus. Une autre référence pour les liaisons Python sont le code source du projet vboxweb ici: VBoxWebSrv.py
Pour le démarrage sans tête, vous devez passer « sans tête » au troisième argument (type) de la vbox.openRemoteSession (session, UUID, type, "") appel de méthode. Regardez la fonction startVm() dans vboxshell.py et VBoxWebSrv.py pour référence.
Vous pouvez utiliser le module python pyvbox
au démarrage et l'arrêt virtualboxes utilisant le interaface Vbox: