python 控制vbox虚拟机
2016-03-02 18:16
543 查看
(本机环境:win7;python 2.7.9; vbox 4.3.12)
目标:
完成官网(https://pypi.python.org/pypi/pyvbox)上的demo:
1 安装python——vbox组件
---------------------安装vboxapi------------------------------------------
这个路径下有个vboxapisetup.py
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302180858205-337432622.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/b9d735b9-5bd2-4ac5-9f4d-c382143f8a8f.png)
C:\Program Files\Oracle\VirtualBox\sdk\install
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/b9d735b9-5bd2-4ac5-9f4d-c382143f8a8f.png)
pyvbox需要用到vboxapi库。
python vboxapisetup.py install (如果成功,跳过看2;失败请继续)
可能会出现错误:
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302180930986-1829793803.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/e7e2b147-90db-47e8-bb49-25814335443c.png)
这是说安装脚本不知道vbox安装路径在哪里。我们需要指定。
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302180953892-877345522.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/116aa122-ac00-4d44-87ae-33aa4a83332c.png)
set VBOX_INSTALL_PATH="C:\Program Files\Oracle\VirtualBox"
这次安装试一下:
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/b5056790-aa20-4764-a002-6fefffc8ce27.png)
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181011970-1742215397.png)
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181034189-130125711.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/aefea20e-65ed-40e5-9541-3d9b229e8a7b.png)
成功!
独立安装vboxapi:
这个url下,有各个版本的vbox各种安装文件。
http://download.virtualbox.org/virtualbox/4.3.12
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181056361-394242367.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/ad745c79-6ae0-4e59-8fc9-e69419d806af.png)
其中有一个VirtualBoxSDK-4.3.12-93733.zip
解压
VirtualBoxSDK-4.3.12-93733\sdk\installer
中有vboxapisetup.py
用同上的方法安装。
---------------------安装pywin32------------------------------------------
https://sourceforge.net/projects/pywin32/
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181118330-1854325605.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/69894318-e959-4a11-a5a0-7eea8d3494c7.png)
下载相对应的版本。我的是32位python。(不会查看的话,进入python,会提示
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181134017-597282095.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/1eb832f5-fc44-4c03-9c3b-e0d8994a9e62.png)
)
2 简单使用
官网:https://pypi.python.org/pypi/pyvbox
试运行:
如果出现:
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181208564-1586395056.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/ae5e5676-8789-4469-bf62-148a1f3e9e7d.png)
去1查看“安装pywin32一节”
成功之后的样子:
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/685886b0-8d64-4def-b389-00fddd35a146.png)
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181223705-348930087.png)
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>
完毕!
目标:
完成官网(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
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302180858205-337432622.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/b9d735b9-5bd2-4ac5-9f4d-c382143f8a8f.png)
C:\Program Files\Oracle\VirtualBox\sdk\install
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/b9d735b9-5bd2-4ac5-9f4d-c382143f8a8f.png)
pyvbox需要用到vboxapi库。
python vboxapisetup.py install (如果成功,跳过看2;失败请继续)
可能会出现错误:
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302180930986-1829793803.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/e7e2b147-90db-47e8-bb49-25814335443c.png)
这是说安装脚本不知道vbox安装路径在哪里。我们需要指定。
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302180953892-877345522.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/116aa122-ac00-4d44-87ae-33aa4a83332c.png)
set VBOX_INSTALL_PATH="C:\Program Files\Oracle\VirtualBox"
这次安装试一下:
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/b5056790-aa20-4764-a002-6fefffc8ce27.png)
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181011970-1742215397.png)
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181034189-130125711.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/aefea20e-65ed-40e5-9541-3d9b229e8a7b.png)
成功!
独立安装vboxapi:
这个url下,有各个版本的vbox各种安装文件。
http://download.virtualbox.org/virtualbox/4.3.12
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181056361-394242367.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/ad745c79-6ae0-4e59-8fc9-e69419d806af.png)
其中有一个VirtualBoxSDK-4.3.12-93733.zip
解压
VirtualBoxSDK-4.3.12-93733\sdk\installer
中有vboxapisetup.py
用同上的方法安装。
---------------------安装pywin32------------------------------------------
https://sourceforge.net/projects/pywin32/
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181118330-1854325605.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/69894318-e959-4a11-a5a0-7eea8d3494c7.png)
下载相对应的版本。我的是32位python。(不会查看的话,进入python,会提示
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181134017-597282095.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/1eb832f5-fc44-4c03-9c3b-e0d8994a9e62.png)
)
2 简单使用
官网:https://pypi.python.org/pypi/pyvbox
试运行:
> 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
如果出现:
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181208564-1586395056.png)
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/ae5e5676-8789-4469-bf62-148a1f3e9e7d.png)
去1查看“安装pywin32一节”
成功之后的样子:
![](file:///C:/Users/z/Documents/My%20Knowledge/temp/d1375bb6-b76d-40c8-8100-ad1491aff72f_4_files/685886b0-8d64-4def-b389-00fddd35a146.png)
![](http://images2015.cnblogs.com/blog/398023/201603/398023-20160302181223705-348930087.png)
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设计模式中单例模式的实现及在Tornado中的应用
- python学习记录(五)
- python print
- Python学习记录(四)
- selenium python中引用js
- Python模拟登陆
- python使用pycurl抓取获取12306验证码
- 用Python写简单爬虫
- Python
- Python学习记录(三)
- 一次Python爬虫的修改,抓取淘宝MM照片
- Python多线程学习
- Python学习记录(二)
- 数据科学界华山论剑:R与Python巅峰对决
- 老李分享:Python开发性能测试脚本
- Python-----sorted
- Python-----filter
- python学习
- Python学习记录(一)
- Python-----map/reduce