home start up prev next

Глава 8. VBoxManage

Оглавление

Введение
Обзор команд
VBoxManage list
VBoxManage showvminfo
VBoxManage registervm / unregistervm
VBoxManage createvm
VBoxManage modifyvm
Основные настройки
Сетевые настройки
Настройки COM порта, звука, буфера обмена, удаленного рабочего стола и USB
Настройка удаленных ВМ
Настройка телепортации (Teleporting)
VBoxManage clonevm
VBoxManage import
VBoxManage export
VBoxManage startvm
VBoxManage controlvm
VBoxManage discardstate
VBoxManage adoptstate
VBoxManage snapshot
VBoxManage closemedium
VBoxManage storageattach
VBoxManage storagectl
VBoxManage bandwidthctl
VBoxManage showhdinfo
VBoxManage createhd
VBoxManage modifyhd
VBoxManage clonehd
VBoxManage convertfromraw
VBoxManage getextradata/setextradata
VBoxManage setproperty
VBoxManage usbfilter add/modify/remove
VBoxManage sharedfolder add/remove
VBoxManage guestproperty
VBoxManage guestcontrol
VBoxManage debugvm
VBoxManage metrics
VBoxManage hostonlyif
VBoxManage dhcpserver
VBoxManage extpack

Введение

Как кратко упоминалось в разделе “Alternative front-ends”, VBoxManage является интерфейсом командной строки для управления VirtualBox. С его помощью, вы можете полностью управлять VirtualBox из командной строки операционной системы хоста. VBoxManage поддерживает все функции которые предоставляет пользовательский графический интерфейс (GUI), а также предоставляет дополнительные. Он предоставляет все реальные возможности системы виртуализации, даже те которые не возможно использовать через GUI.

Вы должны использовать командную строку, если вы хотите

  • использовать отличный от основного пользовательский интерфейс (например, VBoxSDL или VBoxHeadless);

  • управлять расширенными и экспериментальными настройками ВМ.

Существует две основные вещи, которые вы должны помнить при использовании VBoxManage : Первое, VBoxManage используется всегда с указанием "операции ", такой как "list", "createvm" или "startvm". Все операции VBoxManage подробно описаны в Главе 8, VBoxManage .

Второе, большая часть операций требует указания идентификатора виртуальной машины после имени операции. Существует два способа его указания:

  • Вы можете указать имя ВМ, как оно отображается в списке виртуальных машин. Заметьте, что имена содержащие пробелы, вы должны заключить в двойные кавычки (как это всегда требуется в командной строке для параметров содержащих пробелы).

    Например:

    VBoxManage startvm "Windows XP"
  • Вы можете указать UUID, который является внутренним идентификатором VirtualBox и используется для ссылки на конкретную виртуальные машину. Допустим, что вышеупомянутая ВМ с именем "Windows XP" имеет UUID приведенный ниже, то тогда следующая команда сделает то же, что и предыдущая:

    VBoxManage startvm 670e746d-abea-4ba6-ad02-2a3b043810a5

Вы можете выполнить команду VBoxManage list vms для получения списка имен зарегистрированных виртуальных машин, а также с их UUID.

Ниже, приведены некоторые типичные примеры, использования командной строки для управления VirtualBox:

  • Для создания новой ВМ и немедленной ее регистрации в базе VirtualBox, используйте команду VBoxManage createvm с параметром --register ,[34] , например:

    $ VBoxManage createvm --name "SUSE 10.2" --register
    VirtualBox Command Line Management Interface Version 4.1.0
    (C) 2005-2011 Oracle Corporation
    All rights reserved.
    
    Virtual machine 'SUSE 10.2' is created.
    UUID: c89fc351-8ec6-4f02-a048-57f4d25288e5
    Settings file: '/home/username/.VirtualBox/Machines/SUSE 10.2/SUSE 10.2.xml'
    

    Как вы видите, в вышеприведенном выводе команды, новая ВМ была создана с новым UUID и с новым конфигурационным файлом формата XML.

  • Для просмотра конфигурации конкретной ВМ, используйте команду VBoxManage showvminfo; примеры см. в раздел “VBoxManage showvminfo”.

  • Для изменения настроек ВМ, используйте VBoxManage modifyvm , т.к. показано ниже:

    VBoxManage modifyvm "Windows XP" --memory "512MB"

    За подробностями обращайтесь к разделу “VBoxManage modifyvm”.

  • Для изменения настроек хранилищ (например, добавление дискового контроллера и виртуального диска), используйте VBoxManage storagectl и VBoxManage storageattach; подробности смотрите в раздел “VBoxManage storagectl” и раздел “VBoxManage storageattach”.

  • Для управления ВМ, используйте одну из следующих команд:

Обзор команд

Когда вы запускаете VBoxManage без параметров или с неправильными параметрами, то будет показана синтаксическая диаграмма, приведенная ниже. Вид диаграмм может быть немного другим, в зависимости от платформы хоста; если вы сомневаетесь в функциональности вашей версии, то проверьте вывод VBoxManage на предмет доступных команд на вашем хосте.

Usage:

VBoxManage [-v|--version]    print version number and exit
VBoxManage [-q|--nologo] ... suppress the logo

VBoxManage list [--long|-l] vms|runningvms|ostypes|hostdvds|hostfloppies|
                            bridgedifs|hostonlyifs|dhcpservers|hostinfo|
                            hostcpuids|hddbackends|hdds|dvds|floppies|
                            usbhost|usbfilters|systemproperties|extpacks

VBoxManage showvminfo       <uuid>|<name> [--details]
                            [--machinereadable]
VBoxManage showvminfo       <uuid>|<name> --log <idx>

VBoxManage registervm       <filename>

VBoxManage unregistervm     <uuid>|<name> [--delete]

VBoxManage createvm         --name <name>
                            [--ostype <ostype>]
                            [--register]
                            [--basefolder <path>]
                            [--uuid <uuid>]

VBoxManage modifyvm         <uuid|name>
                            [--name <name>]
                            [--ostype <ostype>]
                            [--memory <memorysize in MB>]
                            [--pagefusion on|off]
                            [--vram <vramsize in MB>]
                            [--acpi on|off]
                            [--pciattach 03:04.0]
                            [--pciattach 03:04.0@02:01.0]
                            [--pcidetach 03:04.0]
                            [--ioapic on|off]
                            [--pae on|off]
                            [--hpet on|off]
                            [--hwvirtex on|off]
                            [--hwvirtexexcl on|off]
                            [--nestedpaging on|off]
                            [--largepages on|off]
                            [--vtxvpid on|off]
                            [--synthcpu on|off]
                            [--cpuidset <leaf> <eax> <ebx> <ecx> <edx>]
                            [--cpuidremove <leaf>]
                            [--cpuidremoveall]
                            [--hardwareuuid <uuid>]
                            [--cpus <number>]
                            [--cpuhotplug on|off]
                            [--plugcpu <id>]
                            [--unplugcpu <id>]
                            [--cpuexecutioncap <1-100>]
                            [--rtcuseutc on|off]
                            [--monitorcount <number>]
                            [--accelerate3d on|off]
                            [--accelerate2dvideo on|off]
                            [--firmware bios|efi|efi32|efi64]
                            [--chipset ich9|piix3]
                            [--bioslogofadein on|off]
                            [--bioslogofadeout on|off]
                            [--bioslogodisplaytime <msec>]
                            [--bioslogoimagepath <imagepath>]
                            [--biosbootmenu disabled|menuonly|messageandmenu]
                            [--biossystemtimeoffset <msec>]
                            [--biospxedebug on|off]
                            [--boot<1-4> none|floppy|dvd|disk|net>]
                            [--nic<1-N> none|null|nat|bridged|intnet|hostonly|
                                        generic]
                            [--nictype<1-N> Am79C970A|Am79C973|
                                            82540EM|82543GC|82545EM|
                                            virtio]
                            [--cableconnected<1-N> on|off]
                            [--nictrace<1-N> on|off]
                            [--nictracefile<1-N> <filename>]
                            [--nicproperty<1-N> name=[value]]
                            [--nicspeed<1-N> <kbps>]
                            [--nicbootprio<1-N> <priority>]
                            [--nicpromisc<1-N> deny|allow-vms|allow-all]
                            [--nicbandwidthgroup<1-N> none|<name>]
                            [--bridgeadapter<1-N> none|<devicename>]
                            [--hostonlyadapter<1-N> none|<devicename>]
                            [--intnet<1-N> <network name>]
                            [--natnet<1-N> <network>|default]
                            [--nicgenericdrv<1-N> <driver>
                            [--natsettings<1-N> [<mtu>],[<socksnd>],
                                                [<sockrcv>],[<tcpsnd>],
                                                [<tcprcv>]]
                            [--natpf<1-N> [<rulename>],tcp|udp,[<hostip>],
                                          <hostport>,[<guestip>],<guestport>]
                            [--natpf<1-N> delete <rulename>]
                            [--nattftpprefix<1-N> <prefix>]
                            [--nattftpfile<1-N> <file>]
                            [--nattftpserver<1-N> <ip>]
                            [--natbindip<1-N> <ip>
                            [--natdnspassdomain<1-N> on|off]
                            [--natdnsproxy<1-N> on|off]
                            [--natdnshostresolver<1-N> on|off]
                            [--nataliasmode<1-N> default|[log],[proxyonly],
                                                         [sameports]]
                            [--macaddress<1-N> auto|<mac>]
                            [--mouse ps2|usb|usbtablet
                            [--keyboard ps2|usb
                            [--uart<1-N> off|<I/O base> <IRQ>]
                            [--uartmode<1-N> disconnected|
                                             server <pipe>|
                                             client <pipe>|
                                             file <file>|
                                             <devicename>]
                            [--guestmemoryballoon <balloonsize in MB>]
                            [--gueststatisticsinterval <seconds>]
                            [--audio none|null|dsound|solaudio|oss|alsa|pulse|
                                     oss|pulse|coreaudio]
                            [--audiocontroller ac97|hda|sb16]
                            [--clipboard disabled|hosttoguest|guesttohost|
                                         bidirectional]
                            [--vrde on|off]
                            [--vrdeextpack default|<name>
                            [--vrdeproperty <name=[value]>]
                            [--vrdeport <hostport>]
                            [--vrdeaddress <hostip>]
                            [--vrdeauthtype null|external|guest]
                            [--vrdeauthlibrary default|<name>
                            [--vrdemulticon on|off]
                            [--vrdereusecon on|off]
                            [--vrdevideochannel on|off]
                            [--vrdevideochannelquality <percent>]
                            [--usb on|off]
                            [--usbehci on|off]
                            [--snapshotfolder default|<path>]
                            [--teleporter on|off]
                            [--teleporterport <port>]
                            [--teleporteraddress <address|empty>
                            [--teleporterpassword <password>]

VBoxManage clonevm          <uuid>|<name>
                            [--snapshot <uuid>|<name>]
                            [--mode machine|all]
                            [--options link|keepallmacs|keepnatmacs|
                                       keepdisknames]
                            [--name <name>]
                            [--basefolder <basefolder>]
                            [--uuid <uuid>]
                            [--register]

VBoxManage import           <ovf/ova>
                            [--dry-run|-n]
                            [--options keepallmacs|keepnatmacs]
                            [more options]
                            (run with -n to have options displayed
                             for a particular OVF)

VBoxManage export           <machines> --output|-o <ovf/ova>
                            [--legacy09]
                            [--manifest]
                            [--vsys <number of virtual system>]
                                    [--product <product name>]
                                    [--producturl <product url>]
                                    [--vendor <vendor name>]
                                    [--vendorurl <vendor url>]
                                    [--version <version info>]
                                    [--eula <license text>]
                                    [--eulafile <filename>]

VBoxManage startvm          <uuid>|<name>
                            [--type gui|sdl|headless]

VBoxManage controlvm        <uuid>|<name>
                            pause|resume|reset|poweroff|savestate|
                            acpipowerbutton|acpisleepbutton|
                            keyboardputscancode <hex> [<hex> ...]|
                            setlinkstate<1-N> on|off |
                            nic<1-N> null|nat|bridged|intnet|hostonly|generic
                                     [<devicename>] |
                            nictrace<1-N> on|off
                            nictracefile<1-N> <filename>
                            nicproperty<1-N> name=[value]
                            natpf<1-N> [<rulename>],tcp|udp,[<hostip>],
                                          <hostport>,[<guestip>],<guestport>
                            natpf<1-N> delete <rulename>
                            guestmemoryballoon <balloonsize in MB>]
                            gueststatisticsinterval <seconds>]
                            usbattach <uuid>|<address> |
                            usbdetach <uuid>|<address> |
                            vrde on|off |
                            vrdeport <port> |
                            vrdeproperty <name=[value]> |
                            vrdevideochannelquality <percent>
                            setvideomodehint <xres> <yres> <bpp> [display] |
                            screenshotpng <file> [display] |
                            setcredentials <username> <password> <domain>
                                           [--allowlocallogon <yes|no>] |
                            teleport --host <name> --port <port>
                                   [--maxdowntime <msec>] [--password password]
                            plugcpu <id>
                            unplugcpu <id>
                            cpuexecutioncap <1-100>

VBoxManage discardstate     <uuid>|<name>

VBoxManage adoptstate       <uuid>|<name> <state_file>

VBoxManage snapshot         <uuid>|<name>
                            take <name> [--description <desc>] [--pause] |
                            delete <uuid>|<name> |
                            restore <uuid>|<name> |
                            restorecurrent |
                            edit <uuid>|<name>|--current
                                 [--name <name>]
                                 [--description <desc>] |
                            showvminfo <uuid>|<name>

VBoxManage closemedium      disk|dvd|floppy <uuid>|<filename>
                            [--delete]

VBoxManage storageattach    <uuid|vmname>
                            --storagectl <name>
                            [--port <number>]
                            [--device <number>]
                            [--type dvddrive|hdd|fdd]
                            [--medium none|emptydrive|
                                      <uuid>|<filename>|host:<drive>|iscsi]
                            [--mtype normal|writethrough|immutable|shareable|
                                     readonly|multiattach]
                            [--comment <text>]
                            [--setuuid <uuid>]
                            [--setparentuuid <uuid>]
                            [--passthrough on|off]
                            [--tempeject on|off]
                            [--nonrotational on|off]
                            [--bandwidthgroup <name>]
                            [--forceunmount]
                            [--server <name>|<ip>]
                            [--target <target>]
                            [--tport <port>]
                            [--lun <lun>]
                            [--encodedlun <lun>]
                            [--username <username>]
                            [--password <password>]
                            [--intnet]

VBoxManage storagectl       <uuid|vmname>
                            --name <name>
                            [--add ide|sata|scsi|floppy|sas]
                            [--controller LSILogic|LSILogicSAS|BusLogic|
                                          IntelAHCI|PIIX3|PIIX4|ICH6|I82078]
                            [--sataideemulation<1-4> <1-30>]
                            [--sataportcount <1-30>]
                            [--hostiocache on|off]
                            [--bootable on|off]
                            [--remove]

VBoxManage bandwidthctl     <uuid|vmname>
                            --name <name>
                            [--add disk|network]
                            [--limit <megabytes per second>
                            [--delete]

VBoxManage showhdinfo       <uuid>|<filename>

VBoxManage createhd         --filename <filename>
                            --size <megabytes>|--sizebyte <bytes>
                            [--format VDI|VMDK|VHD] (default: VDI)
                            [--variant Standard,Fixed,Split2G,Stream,ESX]

VBoxManage modifyhd         <uuid>|<filename>
                            [--type normal|writethrough|immutable|shareable|
                                    readonly|multiattach]
                            [--autoreset on|off]
                            [--compact]
                            [--resize <megabytes>|--resizebyte <bytes>]

VBoxManage clonehd          <uuid>|<filename> <uuid>|<outputfile>
                            [--format VDI|VMDK|VHD|RAW|<other>]
                            [--variant Standard,Fixed,Split2G,Stream,ESX]
                            [--existing]

VBoxManage convertfromraw   <filename> <outputfile>
                            [--format VDI|VMDK|VHD]
                            [--variant Standard,Fixed,Split2G,Stream,ESX]
VBoxManage convertfromraw   stdin <outputfile> <bytes>
                            [--format VDI|VMDK|VHD]
                            [--variant Standard,Fixed,Split2G,Stream,ESX]

VBoxManage getextradata     global|<uuid>|<name>
                            <key>|enumerate

VBoxManage setextradata     global|<uuid>|<name>
                            <key>
                            [<value>] (no value deletes key)

VBoxManage setproperty      machinefolder default|<folder> |
                            vrdeauthlibrary default|<library> |
                            websrvauthlibrary default|null|<library> |
                            vrdeextpack null|<library> |
                            loghistorycount <value>

VBoxManage usbfilter        add <index,0-N>
                            --target <uuid>|<name>|global
                            --name <string>
                            --action ignore|hold (global filters only)
                            [--active yes|no] (yes)
                            [--vendorid <XXXX>] (null)
                            [--productid <XXXX>] (null)
                            [--revision <IIFF>] (null)
                            [--manufacturer <string>] (null)
                            [--product <string>] (null)
                            [--remote yes|no] (null, VM filters only)
                            [--serialnumber <string>] (null)
                            [--maskedinterfaces <XXXXXXXX>]

VBoxManage usbfilter        modify <index,0-N>
                            --target <uuid>|<name>|global
                            [--name <string>]
                            [--action ignore|hold] (global filters only)
                            [--active yes|no]
                            [--vendorid <XXXX>|""]
                            [--productid <XXXX>|""]
                            [--revision <IIFF>|""]
                            [--manufacturer <string>|""]
                            [--product <string>|""]
                            [--remote yes|no] (null, VM filters only)
                            [--serialnumber <string>|""]
                            [--maskedinterfaces <XXXXXXXX>]

VBoxManage usbfilter        remove <index,0-N>
                            --target <uuid>|<name>|global

VBoxManage sharedfolder     add <vmname>|<uuid>
                            --name <name> --hostpath <hostpath>
                            [--transient] [--readonly] [--automount]

VBoxManage sharedfolder     remove <vmname>|<uuid>
                            --name <name> [--transient]

VBoxManage guestproperty    get <vmname>|<uuid>
                            <property> [--verbose]

VBoxManage guestproperty    set <vmname>|<uuid>
                            <property> [<value> [--flags <flags>]]

VBoxManage guestproperty    enumerate <vmname>|<uuid>
                            [--patterns <patterns>]

VBoxManage guestproperty    wait <vmname>|<uuid> <patterns>
                            [--timeout <msec>] [--fail-on-timeout]

VBoxManage guestcontrol     <vmname>|<uuid>
                            exec[ute]
                            --image <путь к программе>
                            --username <имя пользователя> --password <пароль>
                            [--dos2unix]
                            [--environment "<NAME>=<VALUE> [<NAME>=<VALUE>]"]
                            [--timeout <msec>] [--unix2dos] [--verbose]
                            [--wait-exit] [--wait-stdout] [--wait-stderr]
                            [--output-type=<binary>|<text>]
                            [-- [<argument1>] ... [<argumentN>]]

                            copyto|cp
                            <source on host> <destination on guest>
                            --username <имя пользователя> --password <пароль>
                            [--dryrun] [--follow] [--recursive] [--verbose]

                            createdir[ectory]|mkdir|md
                            <directory to create on guest>
                            --username <имя пользователя> --password <пароль>
                            [--parents] [--mode <mode>] [--verbose]

                            updateadditions
                            [--source <guest additions .ISO>] [--verbose]

VBoxManage debugvm          <uuid>|<name>
                            dumpguestcore --filename <name> |
                            info <item> [args] |
                            injectnmi |
                            osdetect |
                            osinfo |
                            getregisters [--cpu <id>] <reg>|all ... |
                            setregisters [--cpu <id>] <reg>=<value> ... |
                            statistics [--reset] [--pattern <pattern>]
                            [--descriptions]

VBoxManage metrics          list [*|host|<vmname> [<metric_list>]]
                                                 (comma-separated)

VBoxManage metrics          setup
                            [--period <seconds>] (default: 1)
                            [--samples <count>] (default: 1)
                            [--list]
                            [*|host|<vmname> [<metric_list>]]

VBoxManage metrics          query [*|host|<vmname> [<metric_list>]]

VBoxManage metrics          enable
                            [--list]
                            [*|host|<vmname> [<metric_list>]]

VBoxManage metrics          disable
                            [--list]
                            [*|host|<vmname> [<metric_list>]]

VBoxManage metrics          collect
                            [--period <seconds>] (default: 1)
                            [--samples <count>] (default: 1)
                            [--list]
                            [--detach]
                            [*|host|<vmname> [<metric_list>]]

VBoxManage hostonlyif       ipconfig <name>
                            [--dhcp |
                            --ip<ipv4> [--netmask<ipv4> (def: 255.255.255.0)] |
                            --ipv6<ipv6> [--netmasklengthv6<length> (def: 64)]]
                            create |
                            remove <name>

VBoxManage dhcpserver       add|modify --netname <network_name> |
                                       --ifname <hostonly_if_name>
                            [--ip <ip_address>
                            --netmask <network_mask>
                            --lowerip <lower_ip>
                            --upperip <upper_ip>]
                            [--enable | --disable]

VBoxManage dhcpserver       remove --netname <network_name> |
                                   --ifname <hostonly_if_name>

VBoxManage extpack          install [--replace] <tarball> |
                            uninstall [--force] <name> |
                            cleanup

В каждом вызове VBoxManage, может быть выполнена только одна команда. Однако, команды могут иметь несколько различных операций, которые выполняются в одном вызове. Следующий раздел детально описывает различные команды.

VBoxManage list

Команда list предоставляет важную информацию о вашей системе и текущих настройках VirtualBox.

Доступны следующие операции для VBoxManage list :

  • vms отображает список всех виртуальных машин зарегистрированных в VirtualBox. По умолчанию показывается компактный список в две колонки: имя ВМ и UUID; если вы укажите параметр --long или -l , то будет показан детальный список настроек ВМ, как при выводе команды showvminfo (см. далее).

  • runningvms отображает список всех работающих виртуальных машин с их UUIDs в таком же формате, что и в vms .

  • ostypes отображает список гостевых операционных систем "известных" VirtualBox, с идентификатором типа используемым в команде modifyvm.

  • hostdvds, hostfloppies, выводит список DVD и гибких дисков.

  • bridgedifs, hostonlyifs и dhcpservers, выводит список интерфейсов в режиме сетевого моста, виртуального адаптера и DHCP серверов доступных на хосте. Подробности в Глава 6, Virtual networking.

  • hostinfo показывает информацию о хосте, такую как ЦП, размер памяти и версию операционной системы.

  • hostcpuids выводит информацию о CPUID процессора хоста. This can be used for a more fine grained analyis of the host's virtualization capabilities.

  • hddbackends список известных форматов (back-ends) виртуальных дисков. Для каждого элемента (VDI, VMDK или RAW) перечисляются его возможности и настройки.

  • hdds, dvds и floppies выдает всю информацию о виртуальных дисков используемых в VirtualBox, включая их настройки, идентификаторы (UUIDs) и файлы связанные с ними. Команда является эквивалентом Менеджера виртуальных носителей; см. раздел “The Virtual Disk Manager” .

  • usbhost usbhost отображает информацию о устройствах USB подключенных к хосту, данная информация будет полезна при настройке фильтров USB.

  • usbfilters отображает список всех фильтров USB зарегистрированных в VirtualBox, которые можно использовать в виртуальных машинах, а также параметры фильтров.

  • systemproperties показывает некоторые глобальные настройки VirtualBox, такие как минимальный и максимальный объем памяти гостя, максимальный размер виртуального жесткого диска, пути к файлам настроек и текущая используемая библиотека аутентификации.

  • extpacks отображает сведения о установленных модулей расширений VirtualBox; см. раздел “Installing VirtualBox and extension packs” и “VBoxManage extpack”.

VBoxManage showvminfo

Команда showvminfo показывает подробную информацию для указанной виртуальной машине. Такую же информация можно получить используя команду VBoxManage list vms --long, но для всех виртуальных машин.

В результате вы получите вывод похожий на следующий:

$ VBoxManage showvminfo "Windows XP"
VirtualBox Command Line Management Interface Version 4.1.0
(C) 2005-2011 Oracle Corporation
All rights reserved.

Name:            Windows XP
Guest OS:        Other/Unknown
UUID:            1bf3464d-57c6-4d49-92a9-a5cc3816b7e7
Config file:     /home/username/.VirtualBox/Machines/Windows XP/Windows XP.xml
Memory size:     512MB
VRAM size:       12MB
Number of CPUs:  2
Synthetic Cpu:   off
Boot menu mode:  message and menu
Boot Device (1): DVD
Boot Device (2): HardDisk
Boot Device (3): Not Assigned
Boot Device (4): Not Assigned
ACPI:            on
IOAPIC:          on
PAE:             on
Time offset:     0 ms
Hardw. virt.ext: on
Hardw. virt.ext exclusive: on
Nested Paging:   on
VT-x VPID:       off
State:           powered off (since 2009-10-20T14:52:19.000000000)
Monitor count:   1
3D Acceleration: off
2D Video Acceleration: off
Teleporter Enabled: off
Teleporter Port: 0
Teleporter Address:
Teleporter Password:
Storage Controller      (0): IDE Controller
Storage Controller Type (0): PIIX4
Storage Controller      (1): Floppy Controller 1
Storage Controller Type (1): I82078
IDE Controller (0, 0): /home/user/windows.vdi (UUID: 46f6e53a-4557-460a-9b95-68b0f17d744b)
IDE Controller (0, 1): /home/user/openbsd-cd46.iso (UUID: 4335e162-59d3-4512-91d5-b63e94eebe0b)
Floppy Controller 1 (0, 0): /home/user/floppy.img (UUID: 62ac6ccb-df36-42f2-972e-22f836368137)
NIC 1:           disabled
NIC 2:           disabled
NIC 3:           disabled
NIC 4:           disabled
NIC 5:           disabled
NIC 6:           disabled
NIC 7:           disabled
NIC 8:           disabled
UART 1:          disabled
UART 2:          disabled
Audio:           disabled (Driver: Unknown)
Clipboard Mode:  Bidirectional
VRDE:            disabled
USB:             disabled

USB Device Filters:
<none>

Shared folders:
<none>

Statistics update:  disabled

VBoxManage registervm / unregistervm

Команда registervm позволяет вам импортировать описание виртуальной машины в XML файле в базу VirtualBox. Файл описание не должен конфликтовать с уже зарегистрированной в VirtualBox и не должен содержать подключенных дисков. Желательно, что бы файл описания находился в каталоге виртуальной машины перед ее регистрацией.

Замечание

При создании новой виртуальной машины, командой VBoxManage createvm (см. ниже), вы можете непосредственно указать параметр --register, что бы не регистрировать ее позднее.

Команда unregistervm удаляет регистрационную информацию о виртуальной машине. Если также указан параметр --delete, то также будут удалены файлы:

  1. все файлы виртуальных дисков, включая разностные файлы, которые подключены к виртуальной машине и не подключены к другим;

  2. файлы состояний создаваемых виртуальной машиной (один если машина в состоянии "сохранена" и один для каждого снимка);

  3. файл настроек машины XML и его резервные копии;

  4. файлы журналов;

  5. каталог виртуальной машины, если он не будет пустой, после удаления файлов перечисленных выше.

VBoxManage createvm

Эта команда создает новый XML файл описания виртуальной машины.

Параметр --name <name> необходим и определяет наименование машины. Это имя по умолчанию присваивается файлу настроек (имеющем расширение .xml ) и каталогу ВМ (создается в каталоге .VirtualBox/Machines), и поэтому оно должно соответствовать требованиям ОС хоста к наименованиям файлов. Если ВМ будет позже переименована, то файл и каталог будут также изменены автоматически.

Однако, если используется параметр --basefolder <path>, каталог будет имя <path>. В данном случае, имена файла и каталога не будут меняться при переименовании виртуальной машины.

По умолчанию, эта команда создает только XML файл без регистрации его в списке доступных ВМ. Для регистрации ВМ, используется параметр --register, или позднее отдельно используется команда VBoxManage registervm.

VBoxManage modifyvm

Эта команда изменяет свойства зарегистрированных виртуальных машин. Многие из свойств изменяемых этой командой доступны в графическом интерфейсе настроек ВМ; они были описаны в Глава 3, Настройка виртуальных машин. Некоторые из расширенных настроек, однако, доступны только через интерфейс <c1> VBoxManage</c1>.

Для выполнения этих команд требуется, чтобы виртуальная машина была выключена (т.е. не быть в состоянии "работает" и "сохранена"). Некоторые настройки могут быть также изменены для работающей ВМ; в этом случает для изменения этих настроек применяется команда VBoxManage controlvm (см. раздел “VBoxManage controlvm”).

Основные настройки

Следующие основные настройки доступны через VBoxManage modifyvm :

  • --name <name> : Изменяет имя ВМ и внутренние файлы виртуальной машины, как выше описано для VBoxManage createvm .

  • --ostype <ostype>: указывает какая гостевая ОС предположительно будет выполняться в ВМ. Для получения списка допустимых параметров используйте VBoxManage list ostypes.

  • --memory <memorysize> : Устанавливает размер доступной оперативной памяти , в MB, который виртуальная машина должна зарезервировать для себя от хоста. Прочтите с замечаниями в разделе “Создание вашей первой виртуальной машины”.

  • --vram <vramsize> : Устанавливает размер памяти который должна иметь виртуальная графическая карта. Подробности в разделе “Настройки дисплея”.

  • --acpi on|off ; --ioapic on|off : Определяют поддержку виртуальной машиной ACPI и I/O APIC, соответственно; см раздел “Материнская плата” .

  • --hardwareuuid <uuid>: UUID предоставляемый гостю через таблицы памяти (DMI/SMBIOS), аппаратное и гостевой системы свойство. По умолчанию имеет тот же uuid, что и ВМ. Используется для клонирования ВМ. При миграции (Teleporting) изменяется автоматически.

  • --cpus <cpucount>: количество виртуальных процессоров виртуальной машины (см. раздел “закладка "Процессор" ”). Если задействовано "горячее подключение" процессоров (CPU hot-plugging) is enabled (см. ниже), устанавливается значение maximum для указание количества виртуальных процессоров, которые могут быть подключены к ВМ.

  • --rtcuseutc on|off: этот параметр настраивает режим использования хостом шкалы времени UTC (see the section called “"Motherboard" tab”).

  • --cpuhotplug on|off: Включение функции "горячего" подключения процессоров. При включении, виртуальные процессоры могут добавляться и удаляться в работающей ВМ. См. раздел “CPU hot-plugging”.

  • --plugcpu|unplugcpu <id>: при включенном CPU hot-plugging (см. выше), подключает или отключает виртуальный процессор к/от ВМ. <id> определяет индекс виртуального процессора в операции добавления и удаления процессора, принимает значение от 0 до номера maximum. указаного в опции --cpus. Процессор с индексом 0 никогда не может быть удален.

  • --cpuexecutioncap <1-100>: устанавливает ограничение на использование времени ЦП. Значение 50, означает, что один виртуальный процессор машины будет использовать до 50% времени работы одного ЦП хоста.

  • --synthcpu on|off: Эта настройка определяет должен ли VirtualBox предоставлять "синтетический" процессор гостю, для возможности миграции между хост системами с значительными различиями в архитектуре.

  • --pae on|off: Включить или отключить PAE (см. раздел “вкладку "Процессор"”).

  • --hpet on|off: Включить или выключить High Precision Event Timer (HPET), который заменяет стандартный системный таймер. По умолчанию отключен. Заметьте, что Windows поддерживает HPET только в версиях Vista и старше.

  • --hwvirtex on|off: Включение или отключение расширений аппаратной виртуализации (Intel VT-x or AMD-V) процессора вашей хост системы; см.раздел “Hardware vs. software virtualization”.

  • --hwvirtexexcl on|off: настраивает монопольное использование VirtualBox функций виртуализации (Intel VT-x ил AMD-V) процессора вашего хостовой системы; see the section called “Hardware vs. software virtualization”. Если вы хотите использовать аппаратную виртуализацию в других гипервизорах, одновременно с VirtualBox, то вы должны отключить эту настройку. Это негативно влияет на производительность.

  • --nestedpaging on|off : если аппаратная виртуализация включена, эта дополнительная настройка включает или отключает использование функции nested paging в процессоре вашей хост системы; см. Раздел  “Виртуализация программная и software virtualization”.

  • --largepages on|off: если включены аппаратная виртуализация и nested paging ,то включение параметра, повышает производительность до 5%, но только для Intel VT-x. Это заставляет использовать гипервизор технологию large pages, уменьшая overhead и использование TLB .

  • --vtxvpid on|off:njkmrj ntel VT-x only, this additional setting enables or disables the use of the tagged TLB (VPID) feature in the processor of your host system; see the section called “Hardware vs. software virtualization”.

  • --accelerate3d on|off: Включено, если установлены гостевые дополнения, не зависимо от наличия аппаратного ускорения 3D; см. раздел “Hardware 3D acceleration (OpenGL and Direct3D 8/9)”.

  • Вы можете изменить логотип отображаемый при запуске виртуальной машины. По умолчанию отображается логотип VirtualBox .

    С помощью параметров --bioslogofadein on|off и --bioslogofadeout on|off , вы можете задать способ появления и исчезновения логотипа.

    Параметр --bioslogodisplaytime <msec> задает время видимости логотипа в миллисекундах.

    Параметр --bioslogoimagepath <imagepath> позволяет заменить картинку логотипа. Изображение должно быть в формате несжатого 256 цветного BMP файла.

  • --biosbootmenu disabled|menuonly|messageandmenu : позволяет выбрать поведение меню выбора устройств загрузки. menuonly отключает меню, но пользователь все же может нажать F12 для выбора устройства загрузки.

  • --boot<1-4> none|floppy|dvd|disk|net : указывает порядок устройств загрузки виртуальной машины. Существует четыре "слота", к которым ВМ пытается последовательно получить доступ с номерами от 1 до 4, для каждого вы можете установить устройство с которого она будет пытаться грузиться.

  • --snapshotfolder default|<path> : Позволяет вам указать каталог в котором будут храниться снимки состояний виртуальной машины.

  • --firmware efi|bios: указывает какая микропрограмма начальной загрузки будет использоваться при загрузке виртуальной машины: EFI or BIOS. Используйте EFI только если вы понимаете, для чего вам это нужно.

  • --guestmemoryballoon <size> устанавливает размер по умолчанию "баллона" гостя (memory balloon), т.е. размер памяти выделенной гостевым дополнением VirtualBox от гостевой операционной системы и передаваемой гипервизору для использования в другой виртуальной машине. <size> указывается в мегабайтах. По умолчанию установлено в 0. См. раздел “Memory ballooning”.

Сетевые настройки

Следующие сетевые настройки доступны через VBoxManage modifyvm : Во всех этих команд, используется десятичный номер ("1-N") для указания виртуального сетевого интерфейса к которому эта команда применяется.

  • --nic<1-N> none|null|nat|bridged|intnet|hostonly|generic : с помощью этого параметра вы можете установить вид режима для каждого виртуального сетевого интерфейса. Можно указать как: отсутствие интерфейса (none), не подключен к хосту (null), использование трансляцию сетевых адресов (nat), сетевой мост (bridged), соединение с другими виртуальными машинами через внутреннию сеть (intnet), сетевой адаптер хоста (hostonly), или редко используемый режим sub-modes (generic). Эти опции соответствуют типам виртуальных интерфейсов, которые описаны в разделе “Введение в сетевые режимы”.

  • --nictype<1-N> Am79C970A|Am79C973|82540EM|82543GC|82545EM|virtio: Позволяет вам для каждой виртуальной сетевой карты указать тип аппаратного устройства который VirtualBox предоставляет гостю; см. раздел, “Аппаратная часть виртуальной сети” .

  • --cableconnected<1-N> on|off : Позволяет вам временно отключать виртуальные сетевые интерфейсы, подобно выниманию сетевого кабеля из реальной сетевой карты. Это может быть полезно для сброса некоторых программных компонентов ВМ.

  • С помощью параметра "nictrace", вы можете отслеживать сетевой трафик с сохранением его в файл, для отладочных целей.

    Опцией --nictrace<1-N> on|off, вы можете включить трассировку трафика на указанном виртуальном интерфейсе.

    При включении, вы должны указать опцией --nictracefile<1-N> <filename> в какой файл будет вести запись.

  • --bridgeadapter<1-N> none|<devicename> : Если для виртуальной сетевой карты установлен режим сетевого моста (см. выше --nic; иначе эта настройка не работает), этот параметр используется для указания сетевого интерфейса хоста, который будет использоваться виртуальным интерфейсом. За подробностями обращайтесь к разделу “Сетевой мост” .

  • --hostonlyadapter<1-N> none|<devicename> : Если для виртуальной сетевой карты установлен режим виртуальный адаптер хоста (см. выше <c1> --nic</c1>; иначе эта настройка не работает),этот параметр используется для указания сетевого интерфейса хоста, который будет использоваться виртуальным интерфейсом. За подробностями обращайтесь к <a2>разделу “Виртуальный адаптер хоста”</a2> .

  • --intnet<1-N> network : Если для виртуальной карты выбран режим внутренняя сеть, то параметр используется для указания имени внутренней сети (см. Раздел “Внутренняя сеть” ).

  • --macaddress<1-N> auto|<mac> : позволяет установить MAC адрес для виртуальной сетевой карты. Обычно, каждая виртуальная сетевая карта получает произвольно созданный mac адрес при ее создании.

  • --nicgenericdrv<1-N> <backend driver>: если выбран режим generic (см. параметр --nic выше), то позволяет задать тип используемого драйвера этого интерфейса, например сеть VDE или UDP туннель.

  • --nicproperty<1-N> <paramname>="paramvalue": Эта опция, совместно с "nicgenericdrv" позволяет вам передать параметры сетевому драйверу.

    Those parameters are backend engine-specific, and are different between UDP Tunnel and the VDE backend drivers. For example, please see the section called “UDP Tunnel networking”.

Сетевые настройки NAT.

Следующие сетевые настройки доступны через VBoxManage modifyvm : Во всех этих команд, используется десятичный номер ("1-N") для указания виртуального сетевого интерфейса к которому эта команда применяется.

Настройки COM порта, звука, буфера обмена, удаленного рабочего стола и USB

Другие настройки доступные через VBoxManage modifyvm :

  • --uart<1-N> off|<I/O base> <IRQ> : Позволяет настроить виртуальный последовательный порт для ВМ; см. раздел “Serial ports”.

  • --uartmode<1-N> <arg> : Позволяет управлять каким способом VirtualBox подключает виртуальные последовательные порты (ранее настраивалась параметром --uartX) к хост системе, на которой работает виртуальная машина. Как описано подробно в разделе “Serial ports” , для каждого такого порта, вы можете указать одно из перечисленных значений <arg> :

    • disconnected : Несмотря на то что последовательный порт виден гостю, он не имеет "другого конца" -- как в реальном COM порте без подключенного кабеля.

    • server <pipename> : На хосте Windows, указывает VirtualBox создавать именованный канал с именем <pipename> и соединить с ним виртуальное последовательное устройство. Заметьте, что в Windows именованные каналы имеют имя начинающиеся с \\.\pipe\ .

      На Linux хосте, вместо именованного канала используется local domain socket.

    • client <pipename> : То же, что и server ... , однако именованный канал (или сокет) не создается VirtualBox, предполагается что он уж создан.

    • <devicename> : указывается имя физического последовательного порта хоста, виртуальный порт соединяется с аппаратным портом. В Windows, это COM порт, например COM1 ; в Linux, например /dev/ttyS0 . Это позволяет вам "связать" реальный последовательный порт с виртуальной машиной.

  • --audio none|null|oss : Позволяет вам настроить поддержку звука в ВМ.

  • --clipboard disabled|hosttoguest|guesttohost| bidirectional : Этот параметр позволяет вам настроить поведение буфера обмена ВМ и хоста; см. раздел “Основные настройки” . Требуется установка гостевых дополнений в виртуальной машине.

  • --monitorcount <count>: Включает поддержку нескольких дисплеев; см. раздел “Display settings”.

  • --usb on|off : Включает или отключает виртуальный USB контроллер; см. раздел  “Настройка USB”.

  • --usbehci on|off : Включает или отключает виртуальный USB контроллер версии 2.0; см. раздел  “Настройка USB”.

Настройка удаленных ВМ

Следующие настройки затрагивают удаленные машины :

  • --vrde on|off: включает или отключает использование сервера удаленного рабочего стола VirtualBox (VRDE). При использовании VBoxHeadless (см. раздел “VBoxHeadless”) VRDE будет включен по умолчанию.

  • --vrdeport default|<ports>: номер порта или диапазон портов на которых VRDE сервер принимает соединения; "default" или "0" означает 3389, стандартный порт RDP. Вы можете указать список номеров портов разделенных запятой. Для указания диапазона портов используется тире. VRDE сервер будет использовать только one из указанных в списке. Только одна машина может использовать один и тот же порт в одно и то же время. Например, параметр --vrdeport 5000,5010-5012 укажет серверу принимать соединения на одном из следующих портов: 5000, 5010, 5011 или 5012.

  • --vrdeaddress <IP address>: IP адрес сетевого интерфейса хоста на котором будет принимать соединения сервер VRDP. Если указан, VRDP сервер будет принимать соединения только с этого сетевого интерфейса.

  • --vrdeauthtype null|external|guest: позволяет указать тип используемой авторизации; см. раздел “RDP аутентификация”.

  • --vrdemulticon on|off: Включает множественные соединения для VRDP сервера; см. раздел “Множественные соединения VRDP” .

  • --vrdereusecon on|off: задает поведение VRDP сервера при отключенном множественном соединении. При включенной опции, сервер будет разрешать новые соединения и отключать существующие. При отключенной опции (это опция по умолчанию), новые соединения не принимаются и текущие соединения не прерываются.

  • --vrdevideochannel on|off: включает видео переадресации, если ее поддерживает VRDP сервер; см. раздел “видео переадресация VRDP”.

  • --vrdevideochannelquality <percent>: задает качество изображения для переадрессации видео; см раздел “VRDP video redirection”.

Настройка телепортации (Teleporting)

С помощью следующих команд VBoxManage modifyvm вы можете настроить ВМ - приемник миграции . См. раздел “Teleporting”.

  • --teleporter on|off: включает(on) или отключает(off) ожидание виртуальной машиной запроса на телепортацию (миграцию). Если "включено (on)", то при запуске виртуальной машины, она не грузиться в обычном режиме, в ожидает поступления запроса на телепортацию на порту и сетевом адресе указанных в следующих двух опциях.

  • --teleporterport <port>, --teleporteraddress <address>: должна использоваться с опцией --teleporter и указывает виртуальной машине на каком порту и с какого адреса ожидать запрос на миграцию от другой ВМ. <port> может быть любым номером порта TCP/IP (напр. 6000); <address> может быть любым IP адресом или сетевым именем хоста. По умолчанию "0.0.0.0", что означает, что принимаются запросы с любого адреса.

  • --teleporterpassword <password>: если указан этот необязательный параметр, то запрос телепортации будет принят, только если на ВМ источнике будет указан тот же пароль.

    Замечание

    В настоящее время, пароль хранится не шифрованным (в текстовом виде) в файле настроек XML.

  • --cpuid <leaf> <eax> <ebx> <ecx> <edx>: опытные пользователи могут использовать этот параметр перед миграцией для ограничения характеристик виртуального процессора, который VirtualBox предоставляет гостевой ОС. Этот параметр должен использоваться в обоих виртуальных машинах, источнике и приемнике, участвующих в операции телепортации. Это позволяет изменить результат выполнения инструкции CPUID для ВМ. Это может изменить поведение программ, которые используют определенные возможности ЦП. Т.к. параметры аппаратно-зависимые, то ознакомьтесь с руководствами на процессоры AMD и Intel.

VBoxManage clonevm

Эта команда создает полный или связную копию существующей виртуальной машины.

Для операции clonevm, нужно передавать как минимум имя клонируемой виртуальной машины. Следующие дополнительные опции могут для настройки создания клона:

  • --snapshot <uuid>|<name>: задается определенный снимок, на который ссылается операция создания клона. По умолчанию ссылается на текущее состояние.

  • --mode machine|all: задает режим клонирования. Если выбран machine (по умолчанию), клонируется текущее состояние ВМ без снимков состояния. Если задан режим all будут клонированы все снимки и текущее состояние.

  • --options link|keepallmacs|keepnatmacs|keepdisknames: позволяет задавать дополнительные настройки клонирования. Первый параметр определяет, как связный клон должен быть создан, что возможно только для клонов машин со снимками. Следующая опция позволяет определить как будут обрабатываться MAC адреса каждой виртуальной сетевой карты. Возможно задать заново их инициализацию(по умолчанию), сохранить не измененными (keepallmacs) или оставить не измененными. для виртуальных сетевых карт в режиме NAT (keepnatmacs). Если вы добавите параметр keepdisknames, все новые виртуальные диски будут называться как в оригинале, иначе они будут переименованы.

  • --name <name>: задает новое имя виртуальной машины. По умолчанию "Original Name Clone".

  • --basefolder <basefolder>: задает имя каталога куда будет сохранена создаваемая копия.

  • --uuid <uuid>: указывает UUID новой ВМ. Этот идентификатор должен быть уникальным для экземпляра VirtualBox, в котором он будет зарегистрирован. По умолчанию создается новый UUID.

  • --register: позволяет автоматически зарегистрировать клон в базе VirtualBox. Если вы желает зарегистрировать новую ВМ позже вручную, см. раздел “VBoxManage registervm / unregistervm”.

VBoxManage import

Эта команда импортирует виртуальное устройство в формате OVF(контейнер), копируя образы виртуальных дисков и виртуальных машин созданных в VirtualBox. См. раздел “Importing and exporting virtual machines” для получения начальных сведений об импортируемом контейнере (appliances).

Как минимум, в команде import указывается путь к файлу OVF и если нужно имя образа диска, и если нужно ( обычно располагается в том же каталоге, что и OVF файл). Имеется множество дополнительных дополнительных параметров, которые позволяют управлять процессом импорта ВМ, которые зависят от содержимого файла OVF.

Рекомендуется перед началом запуска процесса импорта, выполнить команду с опцией --dry-run или -n. Что приведет к выводу на экран данных импортируемых в VirtualBox, а так же к выводу дополнительных опций для изменения проведения операции импорта.

В качестве примера, ниже приведен вывод команды импорта для файла с гостевой Windows XP:

VBoxManage import WindowsXp.ovf --dry-run
Interpreting WindowsXp.ovf...
OK.
Virtual system 0:
 0: Suggested OS type: "WindowsXP"
    (change with "--vsys 0 --ostype <type>"; use "list ostypes" to list all)
 1: Suggested VM name "Windows XP Professional_1"
    (change with "--vsys 0 --vmname <name>")
 3: Number of CPUs: 1
    (change with "--vsys 0 --cpus <n>")
 4: Guest memory: 956 MB (change with "--vsys 0 --memory <MB>")
 5: Sound card (appliance expects "ensoniq1371", can change on import)
    (disable with "--vsys 0 --unit 5 --ignore")
 6: USB controller
    (disable with "--vsys 0 --unit 6 --ignore")
 7: Network adapter: orig bridged, config 2, extra type=bridged
 8: Floppy
    (disable with "--vsys 0 --unit 8 --ignore")
 9: SCSI controller, type BusLogic
    (change with "--vsys 0 --unit 9 --scsitype {BusLogic|LsiLogic}";
    disable with "--vsys 0 --unit 9 --ignore")
10: IDE controller, type PIIX4
    (disable with "--vsys 0 --unit 10 --ignore")
11: Hard disk image: source image=WindowsXp.vmdk,
      target path=/home/user/disks/WindowsXp.vmdk, controller=9;channel=0
    (change controller with "--vsys 0 --unit 11 --controller <id>";
    disable with "--vsys 0 --unit 11 --ignore")

Как вы видите, отдельные элементы настроек пронумерованы и в зависимости от типа поддерживают различные опции командной строки. Можно напрямую управлять отключением этих элементов, например опциями --vsys X --unit Y --ignore , где X номер виртуальной системы (ненулевое значение говорит о существовании нескольких виртуальных систем в контейнере), а Y номер элемента настроек.

В приведенном выше примере, элемент с номером 1 определяет имя импортируемой виртуальной машины в VirtualBox. Элементы 9 м 10 определяют дисковые контроллеры. Элемент 11 описывает образ жесткого диска; в данном случае, опцией --controller указывается контроллер к которому должен подключаться жесткий диск.

Вы можете изменять различные опции элементов одной и той же виртуальной системы с помощью опции --vsys. Например, для импорта машины из файла OVF, но без звуковой карты, USB контроллера и с подключением образа диска к IDE контроллеру вместо SCSI, используйте:

VBoxManage import WindowsXp.ovf
      --vsys 0 --unit 5 --ignore --unit 6 --ignore --unit 11 --controller 10

VBoxManage export

Эта команда экспортирует одну или более виртуальных машин из VirtualBox в виртуальный контейнер в формате OVF, включая копии их образов виртуальных дисков в сжатом в VMDK . См. раздел “Importing and exporting virtual machines” для получения начальных сведений об импортируемом контейнере (appliances).

Команда export проста в использовании: указывается список виртуальных машин которые вы хотите экспортировать в OVF файл и указывается имя целевого OVF файла после опции --output или -o. Обратите внимание, что в каталог где будет создаваться целевой OVF файл будет также экспортироваться образы дисков в сжатом формате VMDK (в независимости от исходного формата), поэтому вы должны иметь достаточна места на диске.

Вы можете добавлять различную информацию в экспортируемый файл. Используйте параметры --product , --producturl , --vendor , --vendorurl и --version для указания дополнительной информации. Для юридических целей вы можете добавить текст лицензии или содержимое фала с лицензией с помощью опций --eula и --eulafile соответственно. Как и для импорта вы должны использовать опцию --vsys X для изменения параметров виртуальной машины, как было упомянуто выше.

Для продуктов виртуализации которые не полностью совместимы со стандартом OVF 1.0 вы можете использовать режим совместимости со стандартом OVF 0.9 с помощью опцией --legacy09.

VBoxManage startvm

Эта команда запускает виртуальную машину которая имеет состояние "Выключена" или "Сохранена".

Замечание

Данная команда предоставляется только для совместимости с прошлыми версиями. Мы рекомендуем запускать виртуальные машины в режиме с поддержкой пользовательского интерфейса, иначе вы можете не увидеть важных ошибок и информационных статусов, которые VirtualBox может выводить в консоль. Это в основном касается интерфейсов отличных от VirtualBox, так как они не могут отображать сообщения об ошибках в всплывающих окнах. За дополнительной информацией обращайтесь к разделу “VBoxHeadless, the remote desktop server”.

Необязательный параметр --type задает как будет запускаться виртуальная машина: в стандартном окне (по умолчанию) или графический вывод будет осуществляться через интерфейс VBoxHeadless, с включенной или выключенной VRDE; см. раздел “VBoxHeadless, the remote desktop server”. Список доступных параметров изменяется и поэтому не гарантируется, что эти параметры будут приняты другой версией программы.

Доступны следующие параметры:

gui

Запуск ВМ в стандартном окне. Это значение установлено по умолчанию.

headless

Запуск ВМ без показа окна виртуальной машины, только с поддержкой протокола RDP.

VBoxManage controlvm

Команда controlvm позволяет вам изменять состояние работающей виртуальной машины. Доступны следующие операции:

  • VBoxManage controlvm <vm> pause временно приостанавливает работу машины, без изменения ее состояния. Окно ВМ окрашивается в серый цвет, что означает, что ВМ приостановлена. (Данная команду можно выполнить через пункт "Pause" в меню "Machine" в графическом интерфейсе)

  • Используйте VBoxManage controlvm <vm> resume для отмены действия предыдущей команды pause . (Эта команда может эквивалентна выбору элемента "Resume" в графическом меню "Машина").

  • VBoxManage controlvm <vm> reset вызывает тот же эффект, что и нажатие кнопки "Сброс/Reset" на реальном компьютере: вызывается холодная перезагрузка виртуальной машины, что приводит к немедленной перезагрузке гостевой операционной системы. Состояние ВМ не сохраняется, что может привести к потери ваших данных. (Данная команду можно выполнить через пункт "Reset" в меню "Machine" в графическом интерфейсе)

  • VBoxManage controlvm <vm> poweroff эквивалентно выключению питания на реальном компьютере. Так же не сохраняется состояние ВМ и ваши данные могут быть повреждены. (Эта команда эквивалентна выбору элемента "Close" в меню графического интерфейса "Machine" или нажатию кнопки закрытия окна и последующим выбором "Power off the machine".)

    После чего состояние ВМ изменяется на "Выключена". Из этого состояния вы можете запустить ее снова; см. раздел “VBoxManage startvm” .

  • VBoxManage controlvm <vm> savestate сохраняет текущее состояние ВМ на диск и останавливает работу машины. (Это соответствует выбора элемента "Close" в меню "VM" или нажатию кнопки закрытия окна и последующем выбором "Save the machine state".)

    После чего, состояние машины изменяется на "Сохранена". Из этого состояния вы можете запустить ее снова; см. раздел “VBoxManage startvm” .

  • VBoxManage controlvm <vm> teleport --hostname <name> --port <port> [--password <password>] назначает виртуальной машине роль источника для операции телепортации. См. раздел “Teleporting”. Есл указан необязательный пароль, то будет проверяться проверяться его совпадение в операции modifyvm на машине источнике; см. раздел “Teleporting settings” for details.

Существует несколько дополнительных опций controlvm, которые влияют на работающие ВМ:

  • setlinkstate<1-N> устанавливает или разрывает соединение виртуального сетевого кабеля.

  • nic<1-N> null|nat|bridged|intnet|hostonly|generic: с помощью этого параметра вы можете установить вид режима для каждого виртуального сетевого интерфейса. Может принимать значение: нет соединения с хостом (null), режим трансляции сетевых адресов (nat), сетевой мост (bridged), внутренняя сеть (intnet), сетевой адаптер хоста (hostonly) или access to rarely used sub-modes (generic). Эти опции соответствуют типам виртуальных интерфейсов, которые описаны в разделе “Введение в сетевые режимы”.

  • usbattach и usbdettach делают доступными USB устройства хоста в виртуальной машине, без необходимости создания фильтров. Устройства USB могут быть указаны через UUID или адрес в хост системе.

    Вы можете использовать команду VBoxManage list usbhost для получения информации о доступных устройствах.

  • vrde on|off включение или отключение VRDE сервера.

  • vrdeport default|<ports> --vrdeport default|<ports>: изменяет номер порта или диапазон портов на которых VRDE сервер принимает соединения; "default" или "0" означает 3389, стандартный порт RDP. За подробностями, обращайтесь к описанию --vrdeport в разделе “Настройки COM порта, звука, буфера обмена, удаленного рабочего стола и USB”.

  • setvideomodehint изменяет видео режим гостевой системы. Это требует наличие установленных гостевых дополнений в гостевой системе.

  • screenshotpng создание снимка гостевого экрана в PNG формате.

  • Операция setcredentials используется для удаленного входа в Windows гостей. Детали в разделе “Automated guest logons”.

  • Операция guestmemoryballoon изменяет размер гостевого "баллона" - памяти взятой гостевыми дополнениями от гостевой системы и переданной гипервизору, для использования её в других виртуальных машинах. Задается в мегабайтах. См. раздел “Memory ballooning”.

  • cpuexecutioncap <1-100>: управляет процентом использования времени процессора гостевой системы. Значение 50, означает, что один виртуальный процессор машины будет использовать до 50% времени работы одного ЦП хоста.

VBoxManage discardstate

Данная команда сбрасывает сохраненное состояние виртуальной машины, которая не имеет текущее состояние "работает", и вызывает перезапуск гостевой ОС при следующем запуске ВМ. Это похоже на операцию выдергивания кабеля питания из розетки, чего следует по возможности избегать.

VBoxManage adoptstate

Если у вас есть файл снимка состояния (.sav) для конкретной ВМ, то этой командой вы можете "принять (adopt)" этот файл. Это приведет к замене сохраненного состояния ВМ и когда вы ее запустите, VirtualBox попытается восстановить состояние из сохраненного в этом файле. Эта команда используется только в "экзотических" настройках.

VBoxManage snapshot

Эта команда используется для работы со снимками состояний из командной строки. Снимок состояния содержит копию настроек виртуальной машины, которая создается во момент создания снимка и если снимок делался во время ее работы, то снимок содержит также состояние ВМ. После создания снимка, VirtualBox создает разностный жесткий диск для каждого виртуального диска связанного с виртуальной машиной, который позволяет быстро отбросить изменения на виртуальном диске при восстановлении из снимка.

Операция take создает снимок текущего состояния виртуальной машины. Обязательным параметром является имя снимка, дополнительно можно указать текстовое описание. Новый снимок вставляется в дерево снимков как дочерний элемент текущего снимка и становится текущим снимком состояния.

Операция delete удаляет снимок (определяется по имени или UUID). Для выполнения этой операции может потребоваться объединение данных разностного дисков с дочерними разностными дисками.

Операция restore восстанавливает указанный снимок состояния (указывается по имени или UUID), сбрасывая настройки виртуальной машины и текущее состояние из снимка. Предыдущее текущее состояние машины будет потеряно. После этого, указанный снимок становится новым "текущим" состоянием и последующие снимки становятся подчиненными ему.

Операция restorecurrent является операцией восстановления текущего состояния (т.е. снимком полученном из текущего состояния). Эта операция эквивалентна операции "restore" с именем или UUID текущего состояния, позволяя не указывать имя или UUID.

Операция edit позволяет вам изменить имя или описание существующего снимка.

С помощью операции showvminfo, вы можете увидить настройки виртуальной машины, которые сохранены в существующем снимке.

VBoxManage closemedium

Эта команда удаляет жесткий диск, DVD или дискету из реестра виртуальных носителей VirtualBox.[35]

Дополнительно, вы можете указать физическое удаление файлов образов. Вы можете получить сообщение, что файл не может быть удален, но образ будет из реестра в любом случае.

VBoxManage storageattach

Команды attaches/modifies/removes подключают к контроллерам носители данных, которые ранее были добавлены командой storagectl( см. следующий раздел). Синтаксис команды:

VBoxManage storageattach    <uuid|vmname>
                            --storagectl <name>
                            [--port <number>]
                            [--device <number>]
                            [--type dvddrive|hdd|fdd]
                            [--medium none|emptydrive|
                                      <uuid>|<filename>|host:<drive>|iscsi]
                            [--mtype normal|writethrough|immutable|shareable]
                            [--comment <text>]
                            [--setuuid <uuid>]
                            [--setparentuuid <uuid>]
                            [--passthrough on|off]
                            [--tempeject on|off]
                            [--bandwidthgroup name|none]
                            [--forceunmount]
                            [--server <name>|<ip>]
                            [--target <target>]
                            [--tport <port>]
                            [--lun <lun>]
                            [--encodedlun <lun>]
                            [--username <username>]
                            [--password <password>]
                            [--intnet]

Обычно требуется множество параметров; в конце списка параметры требуемые для iSCSI (см. далее).

Общие параметры:

uuid|vmname

UUID или имя виртуальной машины. Обязательный.

storagectl

Имя контроллера. Обязательный. Список контроллеров подключенных к ВМ, можно получить командой VBoxManage showvminfo; см. раздел “VBoxManage showvminfo”.

port

Номер порта изменяемого контроллера. Обязательный, если только контроллер не имеет единственного порта.

device

Номер порта изменяемого устройства(device). Обязательный, если только контроллер не имеет единственного порта на устройстве.

type

Описывает тип привода к которому присоединяется/отключается/изменяется носитель. Этот параметр можно не указывать, если тип носителя быть определен с помощью аргумента --medium или из предыдущей команды подключения носителя.

medium

Определяет как подключается устройство. Поддерживаются следующие значения:

  • "none": Любое устройство будет удалено из указанного слота(разъема).

  • "emptydrive": Только для виртуальных DVD и дискет, устанавливает состояние слота, подобное устройству в которое не вставлен носитель.

  • Если указан UUID, это UUID носителя который уже зарегистрирован в реестре VirtualBox (например который был подключен к другой виртуальной машине). См. раздел “VBoxManage list” для ознакомления с тем как получить список известных носителей. Тогда, это устройство будет подключено к указанному слоту.

  • Если указано имя файла, то это должен быть полный путь, к существующему образу диска (ISO, RAW, VDI, VMDK и пр.), который должен быть подключен к указанному слоту.

  • "host:<drive>": Только для DVD или дискет, подключает к указанному слоту DVD или дисковод хост системы.

  • "iscsi": Только для виртуальных жестких дисков, позволяет задать iSCSI target. В данном случае, необходимо указать множество дополнительных параметров, описанных ниже.

Многие перечисленные операции, особенно для съемных носителей(дискеты и CD/DVD), можно выполнять для работающей ВМ. Другие (изменения устройств или слотов жестких дисков ) требуют выключения виртуальной машины.

mtype

Задает поведение носителя при операциях записи и создания снимков. См. раздел “Особые режимы записи образов”.

comment

Любое текстовое описание, которое вы хотите дать этому носителю (необязательный; например, для iSCSI target, "Сервер для хранения больших загрузок"). Является информативным и не влияет на функциональность устройства.

setuuid, setparentuuid

Изменяет UUID или UUID владельца носителя перед подключением к ВМ. This is an expert option. Неправильное использование может сделать носитель неработоспособным или повредить настройки ВМ, которые работают с этим носителем. Наиболее часто используется --setuuid "", для присваивания нового (случайного) UUID образу. Используется для исключения ошибок дублирования UUID, возникающих при копировании образов.

passthrough

Только для устройств DVD, вы можете включить поддержку записи DVD (в настоящее время экспериментальная; см. раздел “поддержка CD/DVD”).

tempeject

Только для DVD, вы можете настроить возможность извлечение носителя, которое инициируется гостем. Если установлено в "on", то извлечение носителя имеет временный эффект. При выключении и перезапуске ВМ, носитель будет снова подключен к устройству.

bandwidthgroup

Задается группа bandwidth для указанного устройства; см. раздел “Limiting bandwidth for disk images”.

forceunmount

Только для DVD или дисководов, принудительное отключение DVD/CD/Floppy или подключения новых DVD/CD/Floppy, даже если предыдущее подключенное устройство заблокировано гостем для чтения данных. Again, see the section called “CD/DVD support” for details.

При использовании "iscsi" с параметром --medium -- см. раздел “iSCSI servers” --, должны или могут использоваться следующие дополнительные параметры:

server

Имя сервера или IP адрес iSCSI target; обязательный.

target

Строковое имя устройства. Используется iSCSI target и применяется для идентификации ресурса хранилища; обязательный.

port

Номер TCP/IP порта службы iSCSI (необязательный).

lun

Логический номер устройства (Logical Unit Number) ресурса target (необязательный). Обычно имеет нулевое значение.

username, password

Имя пользователя и пароль, если требуется аутентификация (необязательный).

Замечание

В настоящее время, username и password хранятся не шифрованными (в виде текста) в XML файле настроек машины.

intnet

Если задано, то соединяется к iSCSI target через внутреннию сеть(Internal Networking). Требуется дополнительная настройка. которая описана в разделе “Access iSCSI targets via Internal Networking”.

VBoxManage storagectl

Эта команда подключает/изменяет/удаляет контроллеры носителей. После нее, виртуальные носители можно подключать к носителю командной storageattach.

Синтаксис команды:

VBoxManage storagectl       <uuid|vmname>
                            --name <name>
                            [--add <ide/sata/scsi/floppy>]
                            [--controller <LsiLogic|LSILogicSAS|BusLogic|
                                          IntelAhci|PIIX3|PIIX4|ICH6|I82078>]
                            [--sataideemulation<1-4> <1-30>]
                            [--sataportcount <1-30>]
                            [--hostiocache on|off]
                            [--bootable on|off]
                            [--remove]

где параметры имеют следующий смысл:

uuid|vmname

UUID или имя виртуальной машины. Обязательный.

name

Имя контроллера. Обязательный.

add

Определяет тип системной шины к которой подключается контроллер.

controller

Позволяет выбрать тип чипсета(chipset), эмулируемого для этого контроллера.

sataideemulation

Задает порты SATA, которые будут работать в режиме эмуляции IDE. Как было описано в разделе “Hard disk controllers: IDE, SATA (AHCI), SCSI, SAS”, по умолчанию установлено для SATA портов 1-4; этой командой, вы можете задать до четырех каналов IDE, из любых 30 SATA портов.

sataportcount

Определяет сколько SATA портов будет поддерживать контроллер.

hostiocache

Настраивает использование кэширование I/O для всех дисковых образов подключенных к контроллеру. For details, please see the section called “Host I/O caching”.

bootable

Указывает будет ли контроллер загрузочным.

remove

Удаляет контроллер из настроек ВМ.

VBoxManage bandwidthctl

Эта команда создает/удаляет/изменяет группы пропускной способности для виртуальной машины:

VBoxManage bandwidthctl    <uuid|vmname>
                          --name <name>
                          [--add disk
                          [--delete]
                          [--limit MB/s]

Инструкции по настройке пропускной способности описаны в разделе “Limiting bandwidth for disk images”. Значения параметров:

uuid|vmname

UUID или имя виртуальной машины. Обязательный.

name

Имя группы пропускной способности. Обязательный.

add

Создание новой группы пропускной способности с указанным типом.

delete

Удаление группы пропускной способности , если она уже не используется

limit

Устанавливает ограничение для указанной группы Может быть изменено для работающей ВМ.

VBoxManage showhdinfo

Эта команда отображает информацию о виртуальном диске: его размер, объем занимаемый на диске, тип и виртуальные машины, которые используют его.

Замечание

Для совместимости с более ранними версиями в VirtualBox, поддерживается также команда "showvdiinfo" которая транслируется в команду "showhdinfo".

Виртуальный диск должен быть указан по через UUID (если носитель зарегистрирован) или по имени файла. Зарегистрированные носители отображаются командой VBoxManage list hdds (see the section called “VBoxManage list” for more information). Имя файла должно содержать правильный путь: как абсолютный или относительный к текущему каталогу.

VBoxManage createhd

Эта команда создает новый виртуальный жесткий диск. Синтаксис команды:

VBoxManage createhd         --filename <filename>
                            --size <megabytes>
                            [--format VDI|VMDK|VHD] (default: VDI)
                            [--variant Standard,Fixed,Split2G,Stream,ESX]

где параметры имеют следующий смысл:

filename

Задает имя файла. Обязательный.

size

Задает размер образа, в 1 мегабайтах. Обязательный.

format

Позволяет задать формат создаваемого файла образа, отличающийся от входного файла.

variant

Позволяет выбрать формат файла для выходного файла. Указывается в виде списка значений разделенных запятыми. В случае указания не совместимых комбинаций выводится сообщение об ошибке.

Замечание

Для совместимости с ранними версиями VirtualBox, команда также поддерживается "createvdi".

VBoxManage modifyhd

С помощью команды modifyhd, вы можете изменять характеристики виртуальных дисков:

VBoxManage modifyhd         <uuid>|<filename>
                            [--type normal|writethrough|immutable|shareable|
                                    readonly|multiattach]
                            [--autoreset on|off]
                            [--compact]
                            [--resize <megabytes>|--resizebyte <bytes>]

Замечание

Несмотря на суффикс "hd" в имени операции, она работает со всеми дисками, а не только с образами жестких дисков. Для совместимости с ранними версиями VirtualBox, также поддерживается команда "modifyvdi".

Изменяемый образ должен быть задан через UUID или по имени файла. Зарегистрированные носители отображаются командой VBoxManage list hdds (see the section called “VBoxManage list” for more information). Имя файла должно содержать правильный путь: как абсолютный или относительный к текущему каталогу.

Доступны следующие опции:

  • С параметром --type, вы можете задать тип образа, например normal, immutable, write-through и другие режимы; см. раздел “Special image write modes”.

  • Только для жестких дисков immutable (differencing), параметр --autoreset on|off определяет нужно ли автоматически сбрасывать состояние диска при каждлм старте ВМ (подробности в разделе “Special image write modes”). По умолчанию устанавливается в "on".

  • С помощью параметра --compact, можно использовать уплотнение виртуальных дисков, т.е. удаление блоков заполненных нулями. Позволяет уменьшать размер динамических дисков; сокращает физический размер образа без изменения логического размера виртуального диска. Уплотнение дисков доступно для базовых и разностных образов, которые являются частным случаем снимков системы.

    Для выполнения этой операции, требуется , что бы свободное пространство диска гостевой системы было заполнено нулями - вы можете использовать любую подходящую для этих целей программу. Для гостей Windows, вы можете использовать утилиту sdelete, которую выпускает Microsoft. Выполните sdelete -c в госте для заполнения нулями свободного места диска перед уплотнением виртуального диска. В Linux используйте zerofree утилиту с поддержкой файловых ext2/ext3.

    Заметьте, что операция уплотнение в настоящее время доступна только для VDI образов. Данную операцию можно сделать так: обнулив свободные блоки и сделав клон динамического диска в другом формате. Вы можете использовать этот прием, пока не появится поддержка уплотнения дисков для других форматов.

  • Параметр --resize позволяет вам изменять емкость существующего образа; данная операция корректирует логический размер виртуального диска без изменения физического размера образа.[36] В настоящее время работает только для расширения объема дисков в формате VDI и VHD и только для дисков динамических. Например, если вы создали диск размером 10G, то использование параметра --resize 15360 позволит увеличит на 5 GByte размер свободного пространства на виртуальном диске, без необходимости создания нового образа и копирования данных старого.

VBoxManage clonehd

Эта команда создает копию зарегистрированных виртуальных жестких, как новый файл образа с новым уникальным идентификатором (UUID). Новый образ можно переносить на другую хост систему или импортировать в VirtualBox, используя менеджер виртуальных носителей; см. раздел “The Virtual Media Manager” и “Cloning disk images”. Синтаксис команды:

VBoxManage clonehd         <uuid>|<filename> <outputfile>
                           [--format VDI|VMDK|VHD|RAW|<other>]
                           [--variant Standard,Fixed,Split2G,Stream,ESX]
                           [--existing]

Образ клонируемого диска должен задаваться через UUIDs (если носитель зарегистрирован) или по имени файла. Зарегистрированные носители отображаются командой VBoxManage list hdds (see the section called “VBoxManage list” for more information). Имя файла должно содержать правильный путь: как абсолютный или относительный к текущему каталогу.

Доступны следующие опции:

format

Позволяет выбрать формат выходного файла.

variant

Позволяет указать вариант типа выходного файла. Указывается в виде списка значений разделенных запятыми. В случае указания не совместимых комбинаций выводится сообщение об ошибке.

existing

Выполнять операцию клонирования, даже если клон носителя уже существует. Only the portion of the source medium which fits into the destination medium is copied. This means if the destination medium is smaller than the source only a part of it is copied, and if the destination medium is larger than the source the remaining part of the destination medium is unchanged.

Замечание

Для совместимости с ранними версиями VirtualBox, также поддерживается команда "clonevdi".

VBoxManage convertfromraw

Эта команда преобразует образы дисков raw в файл VirtualBox Disk Image (VDI). Синтаксис команды:

VBoxManage convertfromraw   <filename> <outputfile>
                            [--format VDI|VMDK|VHD]
                            [--variant Standard,Fixed,Split2G,Stream,ESX]
VBoxManage convertfromraw   stdin <outputfile> <bytes>
                            [--format VDI|VMDK|VHD]
                            [--variant Standard,Fixed,Split2G,Stream,ESX]

где параметры имеют следующий смысл:

format

Указывает формат создаваемого файла. По умолчанию VDI.

variant

Позволяет указать вариант типа выходного файла. Указывается в виде списка значений разделенных запятыми. В случае указания не совместимых комбинаций выводится сообщение об ошибке.

Второй вариант команды указывает, что VBoxManage должен получать содержимое образа диска из стандартного входного потока (используется в конвейерных командах).

Замечание

Для совместимости с ранними версиями VirtualBox, также поддерживается команда "convertdd".

VBoxManage getextradata/setextradata

Эта команда позволяет вам устанавливать и получать данные строкового типа в виртуальной машине или в файле настроек VirtualBox (с указанием опции global вместо имени ВМ). Вам необходимо указать ключ (как текстовую строку) с которым связываются сохраняемые данные и которые вы можете получить позднее. Например:

VBoxManage setextradata Fedora5 installdate 2006.01.01
VBoxManage setextradata SUSE10 installdate 2006.02.02

связывает значение "2006.01.01" с ключом installdate для виртуальной машины Fedora5, а "2006.02.02" для машины SUSE10. Вы можете получить эту информацию следующей командой:

VBoxManage getextradata Fedora5 installdate

вывод которой приведен ниже

VirtualBox Command Line Management Interface Version 4.1.0
(C) 2005-2011 Oracle Corporation
All rights reserved.

Value: 2006.01.01

VBoxManage setproperty

Эта команда используется для изменения глобальных настроек VirtualBox . Некоторые из них соответствуют настройкам в окне "VirtualBox свойства" в графическом интерфейсе пользователя. Доступны следующие свойства:

machinefolder

Задает каталог, где по умолчанию сохраняются файлы виртуальной машины; см. раздел “Where VirtualBox stores its files”.

vrdeauthlibrary

Устанавливает используемую библиотеку для "внешней" аутентификации VRDP; см. раздел “RDP authentication” .

websrvauthlibrary

Устанавливает библиотеку для аутентификации пользователей web сервиса. За описанием web сервиса VirtualBox, обратитесь к справочнику VirtualBox SDK (см. Глава 11, VirtualBox programming interfaces).

vrdelibrary

Определяет библиотеку для работы с VirtualBox Remote Desktop Extension.

hwvirtexenabled

Определяет должна ли аппаратная виртуализация быть включена по умолчанию.

VBoxManage usbfilter add/modify/remove

Команда usbfilter используется для работы с фильтрами USB виртуальных машин или глобальными фильтрами которые влияют на все ВМ. Глобальные фильтры применяются перед машинными фильтрами и могут быть использованы для запрещения захвата устройств в любой виртуальной машине. Глобальные фильтры всегда применяются в указанном порядке и используется только первый фильтр соответствующий устройству. Так например, если первый глобальный фильтр указывает захватить (делает устройство доступным) указанное устройство Kingston memory stick и второй фильтр игнорирует все устройства Kingston, то memory stick будет доступно в любой ВМ, а другие устройства нет.

При создании фильтр USB с использованием usbfilter add , вы должны указать три обязательных параметра. Параметр index определяет позицию в списке фильтров. Если позиция уже занята другим фильтром, то он вставляется на его позицию, а весь список смещается на одну позицию ниже. Если индекс больше количества фильтров в списке, то новый фильтр добавляется в конец списка. Параметром target выбирается виртуальная машина для которой устанавливается фильтр, а при использовании "global" применяется ко всем ВМ. name определяет наименование фильтра, action разрешает доступа виртуальных машин к устройствам со значение "hold" или запрещает к ним доступ с "ignore". Кроме того необходимо указать некоторые параметры фильтрации. Доступные значения этих параметров, для устройств подключенных к вашей системе, вы можете получить используя команду VBoxManage list usbhost . Наконец, вы можете указать должен ли фильтр быть активирован, а также локальным, удаленным (для RDP соединений) или доступен для обоих режимов.

При изменении фильтров USB используя usbfilter modify , вы должны указать его индекс (см. вывод команды VBoxManage list usbfilters для поиска индексов глобальных фильтров и VBoxManage showvminfo для фильтров машин) его область действия - виртуальная машина или "global". Изменяемые свойства такие же как в команде usbfilter add . Для удаления фильтра, используйте usbfilter remove с указанием индекса и области действия.

VBoxManage sharedfolder add/remove

Эта команда позволяет вам управлять общими папками. Для этого, в гостевых системах должны быть установлены гостевые дополнения с поддержкой общих папок.

Общие папки описываются в разделе “Общие папки”.

VBoxManage guestproperty

Команда "guestproperty" позволяет вам получить или установить свойства работающей виртуальной машины. Для вводного ознакомления с предметом обратитесь к разделу “Guest properties”. Как там объяснялось, гостевые свойства являются произвольными строковыми парами ключ/ значение, которые можно записывать и считывать из гостя и хоста, так они могут использоваться как низкоуровневые каналы для передачи строковых значений. Кроме того, целый ряд значений, которые начинаются с "/VirtualBox/" автоматически устанавливаются и поддерживаются гостевыми дополнениями.

Доступны следующие расширения команды (где <vm> может быть именем ВМ или ее UUID, как и в других командах VBoxManage):

  • enumerate <vm> [-patterns <pattern>] : Отображает список всех свойств гостя для указанной виртуальной машины. Этот список будет ограничен, в случае отсутствия соединения с процессом гостевого сервиса, например если ВМ не запущена или не установлены гостевые дополнения.

    Если указан параметр --patterns <pattern>, то выводится список свойств ограниченный указанным шаблоном. Шаблон может содержать следующие символы:

    • * (звездочка): представлять любое количество символов; например, " /VirtualBox* " соответствует всем свойствам начинающимся с "/VirtualBox".

    • ? (знак вопроса): представляет один произвольный символ; например, " fo? " соответствует "foo" и "for".

    • | (вертикальная черта): может использоваться для указания нескольких альтернативных шаблонов; например, " s*|t* " соответствует любой строке начинающейся с "s" или "t".

  • get <vm> : Возвращает значение только одного свойства. Если значение свойства не может быть получено (например гостевая система не запущена), то выводится сообщение:

    No value set!
  • set <vm> <property> [<value> [-flags <flags>]] : Позволяет вам установить значение свойства. Если <value> не указано, то свойство удаляется. С помощью --flags вы можете использовать расширенное поведение команды (возможно использование комбинаций флагов, разделенных запятой):

    • TRANSIENT : значение не будет сохраняться при завершении работы ВМ;

    • TRANSRESET: значение будет удалено при рестарте и/или остановке ВМ;

    • RDONLYGUEST : значение может изменяться только с хост системы, а для гостя доступно только для чтения;

    • RDONLYHOST : значение может быть изменено только гостем, а хостом только прочитано;

    • READONLY : значение не может быть изменено.

  • wait <vm> <pattern> --timeout <timeout> : Ожидает события создания, изменения или удаления значения одного из свойств, описанных шаблоном. Правила создания шаблонов те же, что и в команде "enumerate" описанной выше.

VBoxManage guestcontrol

Командв "guestcontrol" позволяет вам управлять гостевой системой с хоста. См. раздел “Guest control”.

Основной синтаксис команды:

VBoxManage guestcontrol <command>

Доступны следующие расширения команды (где <vm> может быть именем ВМ или ее UUID, как и в других командах VBoxManage):

  • execute, позволяет запускать программы/сценарии (процессы) установленными и работающими в гостевой системе. Эта команда применяется только для работающих ВМ и имеет следующий синтаксис :

    VBoxManage guestcontrol <vmname>|<uuid> exec[ute]
                --image <путь к программе>
                --username <имя пользователя> --password <пароль>
                [--dos2unix]
                [--environment "<NAME>=<VALUE> [<NAME>=<VALUE>]"]
                [--timeout <msec>] [--unix2dos] [--verbose]
                [--wait-exit] [--wait-stdout] [--wait-stderr]
                -- [[<argument1>] ... [<argumentN>]]

    где параметры имеют следующий смысл:

    uuid|vmname

    UUID или имя виртуальной машины. Обязательный.

    --image "<путь к программе>"

    Абсолютный(полное имя) путь и имя программы запускаемой в гостевой ОС, например, C:\Windows\System32\calc.exe

    --username <имя пользователя>

    Имя пользователя от имени которого запускается процесс. Пользователь должен существовать в гостевой ОС.

    --password <пароль>

    Пароль пользователя из --username. Если не указан, то считается, что пароль пустой.

    --dos2unix
    --environment "<NAME>=<VALUE>"

    Установка или сброс значений одной или более переменных среды.

    По умолчанию, новый процесс в гостевой системе создается со стандартными значениями среды гостевой ОС. Этот параметр позволяет изменить эту среду. Для установки/изменения, должна быть определена пара NAME=VALUE; для сброса нужной переменной, укажите имя без значения, например NAME=.

    Параметры с пробелами должны быть заключены в кавычки. More than one --environment at a time can be specified to keep the command line tidy.

    --timeout <msec>

    Значение (в миллисекундах) которое задает время запуска процесса и время в течении которого VBoxManage ожидает выходных данных процесса. Если таймаут не указан, VBoxManage будет ожидать завершения работы процесса.

    --unix2dos
    --verbose

    Указывает VBoxManage выводить больше информации.

    --wait-exit

    Ожидать завершения процесса и вывести причину/флаги и код выхода.

    --wait-stdout

    Ожидать завершения процесса и вывести причину/флаги и код выхода. Ожидая завершения, получает вывод из потока stdout.

    --wait-stderr

    Ожидать завершения процесса и вывести причину/флаги и код выхода. Ожидая завершения, получает вывод из потока stderr.

    [-- [<argument1s>] ... [<argumentNs>]]

    Один или более аргументов для запускаемого процесса.

    Параметры с пробелами должны быть заключены в кавычки.

    Замечание

    В Windows имеется ограничения для графических приложений; см. Главу 14, Known limitations.

    Примеры:

    VBoxManage --nologo guestcontrol "My VM" execute --image "/bin/ls"
              --username foo --password bar --wait-exit --wait-stdout -- -l /usr

    VBoxManage --nologo guestcontrol "My VM" execute --image "c:\\windows\\system32\\ipconfig.exe"
              --username foo --password bar --wait-exit --wait-stdout

    Обратите внимание, что двойной дефис в первом примере требуется только для Unix хостов.

  • copyto, позволяет копировать файлы с хоста в гостевую систему(только с установленными гостевыми дополнениями версии 4.0 и старше).

    VBoxManage guestcontrol <vmname>|<uuid> copyto|cp
                <source on host> <destination on guest>
                --username <имя пользователя> --password <пароль>
                [--dryrun] [--follow] [--recursive] [--verbose]

    где параметры имеют следующий смысл:

    uuid|vmname

    UUID или имя виртуальной машины. Обязательный.

    source on host

    Абсолютный путь исходных файлов на хосте, например C:\Windows\System32\calc.exe. Может содержать выражения с шаблоном, например C:\Windows\System32\*.dll

    destination on guest

    Абсолютный путь в гостевой системе, например C:\Temp

    --username <имя пользователя>

    Имя пользователя от имени которого запускается копирования. Пользователь должен существовать в гостевой ОС.

    --password <пароль>

    Пароль пользователя из --username. Если не указан, то считается, что пароль пустой.

    --dryrun

    Сделать имитацию копирования, без реального копирования файлов в гостевую систему.

    --follow

    Обрабатывать символические ссылки источников на хосте.

    --recursive

    Рекурсивное копирование файлов/каталогов.

    --verbose

    Указывает VBoxManage выводить больше информации.

    --flags <flags>

    Установка дополнительных флагов. Не используется в настоящее время.

  • createdirectory, создание каталогов в госте (при установленных гостевых дополнения версии 4.0 и стаоше).

    VBoxManage guestcontrol <vmname>|<uuid> createdir[ectory]|mkdir|md
                <directory to create on guest>
                [--username "<name>"] [--password "<password>"]
                [--parents] [--mode <mode>] [--verbose]

    где параметры имеют следующий смысл:

    uuid|vmname

    UUID или имя виртуальной машины. Обязательный.

    directory to create on guest

    Абсолютный путь каталога/каталогов создаваемых в гостевой системе, например D:\Foo\Bar. Родительские каталоги (владельцы) должны уже существовать (например в примере D:\Foo) если опущен параметр --parents. Задаваемы пользователь должен иметь нужные права для создания каталогов.

    --username <имя пользователя>

    Имя пользователя от имени которого запускается копирования. Пользователь должен существовать в гостевой ОС.

    --password <пароль>

    Пароль пользователя из --username. Если не указан, то считается, что пароль пустой.

    --parents

    Указывает, что нужно создавать родительские каталоги, если они не существуют, например будет создан каталог D:\Foo для D:\Foo\Bar, если он не был создан ранее. Без --parent операция завершится с ошибкой.

    --mode <mode>

    Установить права на создаваемый каталог. В настоящее время поддерживается только восьмеричная форма установки прав (например 0755) .

    --verbose

    Указывает VBoxManage выводить больше информации.

  • updateadditions, позволяет обновить версию, уже установленных гостевых дополнений в гостевой системе (только для дополнений версий 4.0 и старше).

    VBoxManage guestcontrol updateadditions <vmname>|<uuid>
                [--source "<guest additions .ISO file to use>"] [--verbose]

    где параметры имеют следующий смысл:

    uuid|vmname

    UUID или имя виртуальной машины. Обязательный.

    --source "<guest additions .ISO file to use>"

    Полный путь к альтернативному размещению .ISO файла с гостевыми дополнениями VirtualBox, используемого для обновления.

    --verbose

    Указывает VBoxManage выводить больше информации.

VBoxManage debugvm

Команда "debugvm" используется опытными пользователями для получения информации о деталях работы виртуальной машины. Подобно отладчику ВМ, который описан в разделе “The built-in VM debugger”, эта команда будет полезна, если вы хорошо знакомы с архитектурой ПК и отладкой приложений.

Операция "debugvm" применяется только к работающим виртуальным машинам. Доступные функции:

  • С помощью dumpguestcore --filename <name> вы можете создать системный дамп ВМ, который будет сохранен в указанный файл. Этот файл создается в стандартном формате ELF (со специальными разделами); см. раздел “VM core format”.

    Соответствует команде writecore в отладчике.

  • Команда info используется для показа информации о элементах VMM, эмулируемых устройствах и используемых драйверах. Эта команда использует один или более параметров: имя информационного элемента и необязательный параметры. С параметром help можно получить список доступных в команде элементов с параметрами и их описание.

    Соответствует команде info в отладчике.

  • Команда injectnmi вызывает не маскируемое прерывание (NMI) в гостевой системе, что используется для процедур отладки. What happens exactly is dependent on the guest operating system, but an NMI can crash the whole guest operating system. Do not use unless you know what you're doing.

  • The osdetect command makes the VMM's debugger facility (re-)detection the guest operation system.

    This corresponds to the detect command in the debugger.

  • The osinfo command is used to display info about the operating system (OS) detected by the VMM's debugger facility.

  • The getregisters command is used to display CPU and device registers. The command takes a list of registers, each having one of the following forms:

    • register-set.register-name.sub-field
    • register-set.register-name
    • cpu-register-name.sub-field
    • cpu-register-name
    • all

    The all form will cause all registers to be shown (no sub-fields). The registers names are case-insensitive. When requesting a CPU register the register set can be omitted, it will be selected using the value of the --cpu option (defaulting to 0).

  • The setregisters command is used to change CPU and device registers. The command takes a list of register assignments, each having one of the following forms:

    • register-set.register-name.sub-field=value
    • register-set.register-name=value
    • cpu-register-name.sub-field=value
    • cpu-register-name=value

    The value format should be in the same style as what getregisters displays, with the exception that both octal and decimal can be used instead of hexadecimal. The register naming and the default CPU register set are handled the same way as with the getregisters command.

  • Команда statistics используется для показа статистики VMM в командной строке. Опция --reset позволяет сбросить накопленную статистику. Вывод может быть отфильтрован с помощью аргумента --pattern, который может содержать групповые символы DOS/NT (? и *).

VBoxManage metrics

Эта команда позволяет контролировать использование системных ресурсов. Ресурсы представлены различными показателями (метриками) связанными с хост системой и определенной ВМ. Например, показатель хост системы CPU/Load/User показывает процент времени которое использует CPU для работы в пользовательском режиме за определенный период.

Данные показателей коллекционируются и сохраняются внутри системы; вы можете получить их в любое время командой VBoxManage metrics query. Данные доступны в течении времени выполнения фонового процесса VBoxSVC. Этот процесс завершается вскоре после завершения работы всех виртуальных машин.

По умолчанию данные показателей не собираются. Сбор метрик не начинается пока он не будет инициализирован командой VBoxManage metrics setup, с указанием интервала и количества сохраняемых значений метрики. Интервал измерений указывается в секундах. Например, для включения сбора данных о процессоре хоста и использования памяти, с интервалом в 1 секунду с сохранением 5 последних значений ,используйте следующую команду:

VBoxManage metrics setup --period 1 --samples 5 host CPU/Load,RAM/Usage

Снятие значений метрик возможно только для работающих ВМ. Полученные данные и настройки для определенной ВМ пропадут сразу после завершения ее работы. Используйте команду VBoxManage metrics list для получения доступных метрик. Вы можете использовать параметр --list с любой операцией которая изменяет настройки метрик, для определения метрик, которые затрагивает операция.

Заметьте, что команда <c1> VBoxManage metrics setup</c1> очищает все предыдущие собранные данные для выбранного множества объектов и показателей.

Для включения и отключения процесса сбора без потери собранной информации используйте VBoxManage metrics enable и VBoxManage metrics disable. Заметьте, что воздействует только на метрики верхнего уровня, например CPU/Load или RAM/Usage. Другими словами отслеживание CPU/Load/User при отключенном CPU/Load/Kernel невозможно.

Хост и виртуальные машины имеют различное множество метрик. Список доступных метрик можно получить командой VBoxManage metrics list.

Полное имя метрики может содержать агрегатную функцию. Синтаксис имени метрики: Category/Metric[/SubMetric][:aggregate]. Например, RAM/Usage/Free:min показывает минимальный объем доступной памяти на хосте.

Команда может применяться для всех объектов и метрик, или ограничиваться одним объектом и/или списком метрик. Если в параметрах не указано ни одного объекта или метрики, команда применяется для всех доступных метрик и объектов. Вы можете использовать знак звездочка (" * ") для явного указания того, что команда применяется для всех объектов и показателей. Использование "host" как имя объекта ограничивает область действия команды метриками хоста. Для ограничения области действия множества показателей, используется список метрик разделенных запятой.

Например, для вывода значений показателей работы CPU в режиме пользователя и ядра для виртуальной машины "test", вы можете использовать команду:

VBoxManage metrics query test CPU/Load/User,CPU/Load/Kernel

Ниже приведен обзорный список доступных команд:

list

Эта команда показывает текущие настройки метрик. Заметьте, что показатели ВМ доступны только для работающих виртуальных машин.

setup

Эта команда устанавливает интервал между получением значений показателей и количество хранимых значений. Полученные значения отображаются командой query. С опцией --list показывается какие показатели будут изменены в результате выполнения команды.

enable

Эта операция "возобновляет" получение показателей метрик, после остановки операцией disable. Заметьте, что указание в качестве параметров подчиненных показателей не затрагивает основных. Используйте Use --list , чтобы убедиться в правильности выполнения команды.

disable

Операция "приостанавливает" сбор значений показателей без влияния на уже полученные данные. Заметьте, что указание в качестве параметров подчиненных показателей не затрагивает основных. Используйте Use <c1>--list</c1> , чтобы убедиться в правильности выполнения команды.

query

Эта команда отображает текущие значения показателей.

Замечание

Команда query не удаляет и не "очищает" сохраненные данные. Если вы будете часто запрашивать данные, то увидите как постепенно старые значения заменяются новыми.

collect

Эта команда устанавливает интервал между получением значений показателей и количество хранимых значений. Полученные данные выводятся на экран, если не указан параметр --detach, процесс можно завершить нажатием Ctrl-C. С опцией --detach, эта команда работает так же как setup. Опция --list отображает какие показатели будут затронуты командой.

VBoxManage hostonlyif

С помощью "hostonlyif" вы можете изменить настройку IP для сетевого интерфейса виртуального адаптера хоста. Описание виртуального адаптера хоста вы можете получить в разделе “Host-only networking”. Каждый виртуальный адаптер хоста идентифицируется именем и может настроен встроенным в VirtualBox сервер DHCP или вручную (как IP4 так и IP6).

VBoxManage dhcpserver

Команда "dhcpserver" позволяет вам управлять сервером DHCP, который встроен в VirtualBox. Вы можете найти его использование полезным, при работе с сетевыми устройствами в режимах внутренняя сеть и виртуальный адаптер хоста. (Теоретически, вы можете использовать его для сетевого устройства в режиме моста, но в этом случае возможно появление конфликтов с работой других серверов DHCP в вашей физической сети)

Используются следующие опции команды:

  • Если вы работаете в режиме внутренняя сеть для виртуального сетевого интерфейса, используйте VBoxManage dhcpserver add --netname <network_name> , где <network_name> то же самое имя сети, что вы использовали в команде VBoxManage modifyvm <vmname> --intnet<X> <network_name> .

  • Если вы работаете в режиме виртуальный адаптер хоста , используйте VBoxManage dhcpserver add --ifname <hostonly_if_name> , где <hostonly_if_name> то же самое имя интерфейса, что и для команды VBoxManage modifyvm <vmname> --hostonlyadapter<X> <hostonly_if_name> .

    Так же, вы можете использовать опцию --netname как и для внутренней сети, если вам известно имя виртуального адаптера хоста; вы можете получить их имена командой VBoxManage list hostonlyifs (см. раздел “VBoxManage list” ).

Следующие дополнительные параметры требуются при первом обращении к функции add сервера DHCP:

  • С помощью --ip , указывается IP адрес DHCP сервера.

  • --netmask указывает сетевую маску.

  • С помощью --lowerip и --upperip , вы можете указать нижний и верхний диапазон IP адресов, которые DHCP сервер будет выдавать клиентам.

Наконец, вы должны указать параметр --enable, иначе DHCP сервер будет создан, но работать не будет.

После этого, VirtualBox будет автоматически запускать DHCP сервер для виртуальных сетей, при старте первой виртуальной машины которая использует эти сети.

Для удаления сервера используйте команду VBoxManage dhcpserver remove с указанием --netname <network_name> или --ifname <hostonly_if_name>.

Для изменения настроек DHCP сервера, созданного ранее командой VBoxManage dhcpserver add , вы можете использовать команду VBoxManage dhcpserver modify .

VBoxManage extpack

Команда "extpack" позволяет вам подключать или удалять пакеты расширений VirtualBox, которые описываются в разделе “Installing VirtualBox and extension packs”.

  • Для подключения нового пакета расширений, используйте VBoxManage extpack install <tarball>. Эта операция не выполнится, если уже установлена старая версия этого пакета. Необязательный параметр --replace может использоваться для удаления старых пакетов перед установкой новых.

  • Для удаления установленных пакетов расширений используется команда VBoxManage extpack uninstall <name>. Вы можете использовать VBoxManage list extpacks для получения имен установленных в настоящее время пакетов; см. “VBoxManage list”. Необязательный параметр --force можно использовать для принудительного удаления пакета.

  • Команда VBoxManage extpack cleanup может использоваться для удаления временных файлов и каталогов, которые остались от предыдущих операций с пакетами, которые завершились с ошибкой .



[34] Подробности в разделе “VBoxManage createvm”.

[35] До версии VirtualBox 4.0, it was necessary to call VBoxManage openmedium before a medium could be attached to a virtual machine; that call "registered" the medium with the global VirtualBox media registry. With VirtualBox 4.0 this is no longer necessary; media are added to media registries automatically. The "closemedium" call has been retained, however, to allow for explicitly removing a medium from a registry.

[36] Изменение размера образов появилось в VirtualBox 4.0.

home start up prev next
Сайт создан в системе uCoz