(本机环境: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虚拟机的更多相关文章

  1. python应用-使用python控制win2003服务器

    经调研和测试,服务端可通过ansible控制各linux服务器(容器),进行各类操作,且支持远程控制windows服务器,但windows操作系统中,需安装.net及powershell3.0及以上版 ...

  2. vbox 虚拟机共享文件夹 debian

    主机64位windows7 虚拟机Debian 8 64位 注意:在网络更新时,可能需要修改 etc/apt/sources.list 文件,把前几条从CD更新删除掉,这样就会从网络更新 1.vbox ...

  3. Mac系统下使用VirtualBox虚拟机安装win7--第一步 安装vbox虚拟机

    Mac系统下使用VirtualBox虚拟机安装win7操作步骤: 第一步 安装vbox虚拟机 1.先下载vbox,下载地址:: https://www.virtualbox.org/wiki/Down ...

  4. 主机通过host-only虚拟网卡连接VBOX虚拟机

    主机通过host-only虚拟网卡连接VBOX虚拟机 How to set up host-only virtual machines that host can access it... 问题 因为 ...

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

    vm网络不通的情况: 第一步 :打开物理机, 选中“计算机”*(,右键—管理—服务,找到以VM开头的服务,选中后,右键—启动,就可以了.如图: 第二步: 这样基本就可以了,如果还不行 如果重启失效了, ...

  6. python控制selenium点击登录按钮时报错 unknown error: Element is not clickable at point

    利用python控制selenium进行一个网页的登录时报错: C:\Users\Desktop\selenium\chrome>python chrome.py selenium.common ...

  7. 使用Python控制1602液晶屏实时显示时间(附PyCharm远程调试)

    前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 本文介绍一下UP板的GPIO资源使用,以及一个使用Python演示一个简单的demo. 本文使用Markdown写成,为获得更好的 ...

  8. vbox虚拟机配置Redhat6.4本地yum源

    作为一个新手,配置这个yum源配了4天,遇到了各种问题,也按照网络上面一些方法在163上面下载CentOS6的yum源来替换Redhat本地的yum源,但是配置过程中,出现很多错误,发现直接在本地配置 ...

  9. ubuntu安装vbox虚拟机

    ubuntu安装vbox虚拟机 一.安装准备 1.查看主机配置 二.下载安装包    (建议将安装包下载并保存) a.下载virtualbox安装包 下载链接https://www.virtualbo ...

随机推荐

  1. Jquery实现手机上下滑屏滑动的特效代码

    要引入两个jquery插件 可以去网上下载 <script src="jquery-1.11.1.min.js"></script><script s ...

  2. SpotLight的下载地址以及注册码可供参考

    ToadDBASuiteforOracle_101R2.exe 试用版http://worlddownloads.quest.com.edgesuite.net/Repository/www.ques ...

  3. PySide 简易教程<一>-------Hello PySide

    PySide 是一个python绑定的跨平台GUI Qt库.目前,支持Python的Qt库有两个PyQt和PySide.PySide是一个免费的软件,与PyQt不同之处在于使用了LGPL,允许PySi ...

  4. 兼容IE,Firefox,Opera等浏览器的添加到收藏夹js代码实现

    function AddToFavorites() { var title = document.title; var url = location.href; if (window.sidebar) ...

  5. (转载)Cocos2dx-OpenGL ES2.0教程:纹理贴图(6)

    在上一篇文章中,我们介绍了如何绘制一个立方体,里面涉及的知识点有VBO(Vertex Buffer Object).IBO(Index Buffer Object)和MVP(Modile-View-P ...

  6. 0ffice365 Calendar API

    Calendar REST API in Office 365 APIs Preview http://msdn.microsoft.com/EN-US/library/office/dn792114 ...

  7. MyBatis对不同数据库的主键生成策略

    本文转自:http://289972458.iteye.com/blog/1001851  http://hi.baidu.com/zim_it/blog/item/8a2bd11205f5b56ec ...

  8. 总有你需要的之 ios 小技巧 (下)

    图片上绘制文字 写一个UIImage的category NSMutableParagraphStyle* paragraphStyle = [[NSParagraphStyle defaultPara ...

  9. fzu 2105 Digits Count ( 线段树 ) from 第三届福建省大学生程序设计竞赛

    http://acm.fzu.edu.cn/problem.php?pid=2105 Problem Description Given N integers A={A[0],A[1],...,A[N ...

  10. [DP] 堆盒子问题

    给一堆盒子,知道每个盒子的三围(长宽高),盒子正面朝你,不能旋转摆放,按照大的放在小的下面的原则堆起来,必须是 strictly larger,同样大小的盒子不行,问怎么样堆到最大的高度? 思路:动态 ...