python 控制vbox虚拟机

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 控制vbox虚拟机相关的知识,希望对你有一定的参考价值。

(本机环境:win7;python 2.7.9; vbox 4.3.12)
目标:
完成官网(https://pypi.python.org/pypi/pyvbox)上的demo:
> python
In [1]: import virtualbox

In [2]: vbox = virtualbox.VirtualBox()

In [3]: print("VM(s):\n + %s" % "\n + ".join([vm.name for vm in vbox.machines]))
VM(s):
 + filestore
 + xpsp3
 + win7
 + win8
 + test_vm
 
 
1 安装python——vbox组件
---------------------安装vboxapi------------------------------------------
这个路径下有个vboxapisetup.py
技术分享
技术分享
C:\Program Files\Oracle\VirtualBox\sdk\install
技术分享
pyvbox需要用到vboxapi库。
python vboxapisetup.py install (如果成功,跳过看2;失败请继续)
可能会出现错误:
技术分享
技术分享
这是说安装脚本不知道vbox安装路径在哪里。我们需要指定。
技术分享
技术分享
set VBOX_INSTALL_PATH="C:\Program Files\Oracle\VirtualBox"
这次安装试一下:
技术分享技术分享
 
技术分享
技术分享
成功!
 
独立安装vboxapi:
这个url下,有各个版本的vbox各种安装文件。
技术分享
技术分享
解压
VirtualBoxSDK-4.3.12-93733\sdk\installer
中有vboxapisetup.py
用同上的方法安装。
 
 
 
---------------------安装pywin32------------------------------------------
技术分享
技术分享
下载相对应的版本。我的是32位python。(不会查看的话,进入python,会提示
技术分享
技术分享
 
2 简单使用
 
试运行:
> python
In [1]: import virtualbox

In [2]: vbox = virtualbox.VirtualBox()

In [3]: print("VM(s):\n + %s" % "\n + ".join([vm.name for vm in vbox.machines]))
VM(s):
 + filestore
 + xpsp3
 + win7
 + win8
 + test_vm
 
如果出现:
技术分享
技术分享
去1查看“安装pywin32一节”
 
 
成功之后的样子:
技术分享
技术分享
 
3 高级应用
vbox官方出了一个功能比较强大的python脚本——vboxshell.py
D:\ccode\vbox>python vboxshell.py
Running VirtualBox version 4.3.12
vbox> help
Help page:
    alias: Control aliases
    attachCtr: Attach storage controller to the VM: attachCtr win Ctr0 IDE ICH6
    attachHdd: Attach HDD to the VM: attachHdd win /disk.vdi "IDE Controller" 0:1
    attachIso: Attach CD/DVD to the VM: attachIso win /os.iso "IDE Controller" 0:1
    attachUsb: Attach USB device to the VM (use listUsb to show available devices): attachUsb win uuid
    ... ...
    verbose: Toggle verbosity
vbox>
 
 
查看信息
vbox> info droid4x
 One can use setvar <mach> <var> <value> to change variable, using name in [].
  Name [name]: droid4x
    ... ...
    Location: D:\code\client\Refactor\Droid4X\tinyplayer\Release\VirtualBox VMs\droid4x\droid4x-disk3.vmdk
    Name: droid4x-disk3.vmdk
    Format: VMDK
 
  Shared folders:
vbox>
 
完毕!

以上是关于python 控制vbox虚拟机的主要内容,如果未能解决你的问题,请参考以下文章

vbox虚拟机使用vdi和vhd磁盘,性能有差别吗?

vbox虚拟机里面怎么设置无线上网,电脑是笔记本win7 64

Vbox隐藏虚拟机,实现后台运行

vm,vbox 虚拟机设置开机自动启动(创建虚拟机快捷方式的命令)

vbox虚拟机和vm虚拟机 虚拟机网络不通的解决方法

0. vagrant+vbox创建centos7虚拟机