• 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):
     + %s" % "
     + ".join([vm.name for vm in vbox.machines]))
    VM(s):
     + filestore
     + xpsp3
     + win7
     + win8
     + test_vm
     
     
    1 安装python——vbox组件
    ---------------------安装vboxapi------------------------------------------
    这个路径下有个vboxapisetup.py
    C:Program FilesOracleVirtualBoxsdkinstall
    pyvbox需要用到vboxapi库。
    python vboxapisetup.py install (如果成功,跳过看2;失败请继续)
    可能会出现错误:
    这是说安装脚本不知道vbox安装路径在哪里。我们需要指定。
    set VBOX_INSTALL_PATH="C:Program FilesOracleVirtualBox"
    这次安装试一下:
     
    成功!
     
    独立安装vboxapi:
    这个url下,有各个版本的vbox各种安装文件。
    解压
    VirtualBoxSDK-4.3.12-93733sdkinstaller
    中有vboxapisetup.py
    用同上的方法安装。
     
     
     
    ---------------------安装pywin32------------------------------------------
    下载相对应的版本。我的是32位python。(不会查看的话,进入python,会提示
     
    2 简单使用
     
    试运行:
    > python
    In [1]: import virtualbox
    
    In [2]: vbox = virtualbox.VirtualBox()
    
    In [3]: print("VM(s):
     + %s" % "
     + ".join([vm.name for vm in vbox.machines]))
    VM(s):
     + filestore
     + xpsp3
     + win7
     + win8
     + test_vm
     
    如果出现:
    去1查看“安装pywin32一节”
     
     
    成功之后的样子:
     
    3 高级应用
    vbox官方出了一个功能比较强大的python脚本——vboxshell.py
    D:ccodevbox>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:codeclientRefactorDroid4X inyplayerReleaseVirtualBox VMsdroid4xdroid4x-disk3.vmdk
        Name: droid4x-disk3.vmdk
        Format: VMDK
     
      Shared folders:
    vbox>
     
    完毕!
  • 相关阅读:
    高性能MySQL学习总结二----常见数据类型选择及优化
    springboot admin图文+视频教程
    xxl-job图文教程+视频讲解
    mybatis-plus视频教程
    springcloud视频教程
    springcloud系统化学习图文+视频教程
    docker系统化学习图文+视频教程
    【分享】docker全套视频教程
    是用Git还是SVN?
    NOIP知识点汇总
  • 原文地址:https://www.cnblogs.com/jogger/p/5236036.html
Copyright © 2020-2023  润新知