8.8. VBoxManage modifyvm

Oracle VM VirtualBox

8.8. VBoxManage modifyvm

This command changes the properties of a registered virtual machine which is not running. Most of the properties that this command makes available correspond to the VM settings that VirtualBox graphical user interface displays in each VM's "Settings" dialog; these were described in Chapter 3, Configuring virtual machines. Some of the more advanced settings, however, are only available through the VBoxManage interface.

These commands require that the machine is powered off (neither running nor in "saved" state). Some machine settings can also be changed while a machine is running; those settings will then have a corresponding subcommand with the VBoxManage controlvm subcommand (see Section 8.13, “VBoxManage controlvm”).

8.8.1. General settings

The following general settings are available through VBoxManage modifyvm:

  • --name <name>: This changes the VM's name and possibly renames the internal virtual machine files, as described with VBoxManage createvm above.

  • --groups <group>, ...: This changes the group membership of a VM. Groups always start with a / and can be nested. By default VMs are in group /.

  • --description <desc>: This changes the VM's description, which is a way to record details about the VM in a way which is meaningful for the user. The GUI interprets HTML formatting, the command line allows arbitrary strings potentially containing multiple lines.

  • --ostype <ostype>: This specifies what guest operating system is supposed to run in the VM. To learn about the various identifiers that can be used here, use VBoxManage list ostypes.

  • --iconfile <filename>: This specifies the absolute path on the host file system for the VirtualBox icon to be displayed in the VM.

  • --memory <memorysize>: This sets the amount of RAM, in MB, that the virtual machine should allocate for itself from the host. See the remarks in Section 1.7, “Creating your first virtual machine” for more information.

  • --pagefusion on|off: Enables/disables (default) the Page Fusion feature. The Page Fusion feature minimises memory duplication between VMs with similar configurations running on the same host. See Section 4.9.2, “Page Fusion” for details.

  • --vram <vramsize>: This sets the amount of RAM that the virtual graphics card should have. See Section 3.6, “Display settings” for details.

  • --acpi on|off; --ioapic on|off: These two determine whether the VM should have ACPI and I/O APIC support, respectively; see Section 3.5.1, “"Motherboard" tab” for details.

  • --pciattach <host PCI address [@ guest PCI bus address]>: Attaches a specified PCI network controller on the host to a PCI bus (can specify) on the guest. See Section 9.6, “PCI passthrough” for details.

  • --pcidetach <host PCI address>: Detaches a specified PCI network controller on the host from the attached PCI bus on the guest. See Section 9.6, “PCI passthrough” for details.

  • --hardwareuuid <uuid>: The UUID presented to the guest via memory tables (DMI/SMBIOS), hardware and guest properties. By default this is the same as the VM uuid. Useful when cloning a VM. Teleporting takes care of this automatically.

  • --cpus <cpucount>: This sets the number of virtual CPUs for the virtual machine (see Section 3.5.2, “"Processor" tab”). If CPU hot-plugging is enabled (see below), this then sets the maximum number of virtual CPUs that can be plugged into the virtual machines.

  • --cpuhotplug on|off: This enables CPU hot-plugging. When enabled, virtual CPUs can be added to and removed from a virtual machine while it is running. See Section 9.5, “CPU hot-plugging” for more information.

  • --plugcpu|unplugcpu <id>: If CPU hot-plugging is enabled (see above), this adds a virtual CPU to the virtual machines (or removes one). <id> specifies the index of the virtual CPU to be added or removed and must be a number from 0 to the maximum no. of CPUs configured with the --cpus option. CPU 0 can never be removed.

  • --cpuexecutioncap <1-100>: This setting controls how much cpu time a virtual CPU can use. A value of 50 implies a single virtual CPU can use up to 50% of a single host CPU.

  • --pae on|off: This enables/disables PAE. See Section 3.5.2, “"Processor" tab”.

  • --longmode on|off: This enables/disables long mode. See Section 3.5.2, “"Processor" tab”.

  • --cpu-profile <host|intel 80[86|286|386]>: This enables specification of a profile for guest cpu emulation. Specify either one based on the host system CPU (host), or one from a number of older Intel Micro-architectures - 8086, 80286, 80386.

  • --hpet on|off: This enables/disables a High Precision Event Timer (HPET) which can replace the legacy system timers. This is turned off by default. Note that Windows supports a HPET only from Vista onwards.

  • --hwvirtex on|off: This enables or disables the use of hardware virtualization extensions (Intel VT-x or AMD-V) in the processor of your host system; see Section 10.3, “Hardware vs. software virtualization”.

  • --triplefaultreset on|off: This setting enables resetting of the guest instead of triggering a Guru Meditation. Some guests raise a triple fault to reset the CPU so sometimes this is desired behavior. Works only for non-SMP guests.

  • --apic on|off: This setting enables(default)/disables IO APIC. With I/O APIC, operating systems can use more than 16 interrupt requests (IRQs) thus avoiding IRQ sharing for improved reliability. See Section 3.5.1, “"Motherboard" tab”.

  • --x2apic on|off: This setting enables(default)/disables CPU x2APIC support. CPU x2APIC support helps operating systems run more efficiently on high core count configurations, and optimizes interrupt distribution in virtualized environments. Disable when using host/guest operating systems incompatible with x2APIC support.

  • --paravirtprovider none|default|legacy|minimal|hyperv|kvm: This setting specifies which paravirtualization interface to provide to the guest operating system. Specifying none explicitly turns off exposing any paravirtualization interface. The option default, will pick an appropriate interface depending on the guest OS type while starting the VM. This is the default option chosen while creating new VMs. The legacy option is chosen for VMs which were created with older VirtualBox versions and will pick a paravirtualization interface while starting the VM with VirtualBox 5.0 and newer. The minimal provider is mandatory for Mac OS X guests, while kvm and hyperv are recommended for Linux and Windows guests respectively. These options are explained in detail under Section 10.4, “Paravirtualization providers”.

  • --paravirtdebug <key=value> [,<key=value> ...]: This setting specifies debugging options specific to the paravirtualization provider configured for this VM. Please refer to the provider specific options under Section 9.32, “Paravirtualized debugging” for a list of supported key-value pairs for each provider.

  • --nestedpaging on|off: If hardware virtualization is enabled, this additional setting enables or disables the use of the nested paging feature in the processor of your host system; see Section 10.3, “Hardware vs. software virtualization”.

  • --largepages on|off: If hardware virtualization and nested paging are enabled, for Intel VT-x only, an additional performance improvement of up to 5% can be obtained by enabling this setting. This causes the hypervisor to use large pages to reduce TLB use and overhead.

  • --vtxvpid on|off: If hardware virtualization is enabled, for Intel 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 Section 10.3, “Hardware vs. software virtualization”.

  • --vtxux on|off: If hardware virtualization is enabled, for Intel VT-x only, this setting enables or disables the use of the unrestricted guest mode feature for executing your guest.

  • --accelerate3d on|off: If the Guest Additions are installed, this setting enables or disables hardware 3D acceleration; see Section 4.5.1, “Hardware 3D acceleration (OpenGL and Direct3D 8/9)”.

  • --accelerate2dvideo on|off: If the Guest Additions are installed, this setting enables or disables 2D video acceleration; see Section 4.5.2, “Hardware 2D video acceleration for Windows guests”.

  • --chipset piix3|ich9: By default VirtualBox emulates an Intel PIIX3 chipset. Usually there is no reason to change the default setting unless this is required to relax some of its constraints; see Section 3.5.1, “"Motherboard" tab”.

  • You can influence the BIOS logo that is displayed when a virtual machine starts up with a number of settings. By default, a VirtualBox logo is displayed.

    With --bioslogofadein on|off and --bioslogofadeout on|off, you can determine whether the logo should fade in and out, respectively.

    With --bioslogodisplaytime <msec> you can set how long the logo should be visible, in milliseconds.

    With --bioslogoimagepath <imagepath> you can, if you are so inclined, replace the image that is shown, with your own logo. The image must be an uncompressed 256 color BMP file without color space information (Windows 3.0 format). The image must not be bigger than 640 x 480.

  • --biosbootmenu disabled|menuonly|messageandmenu: This specifies whether the BIOS allows the user to select a temporary boot device. menuonly suppresses the message, but the user can still press F12 to select a temporary boot device.

  • --biosapic x2apic|apic|disabled: This specifies the firmware APIC level to be used. Options are: x2apic, apic or disabled (no apic or x2apic) respectively.

    Note that if x2apic is specified and x2apic is unsupported by the VCPU, biosapic downgrades to apic, if supported - otherwise down to 'disabled'. Similarly, if apic is specified, and apic is unsupported a downgrade to 'disabled' results.

  • --biossystemtimeoffset <ms>: This specifies a fixed time offset (milliseconds) of the guest relative to the host time. If the offset is positive, the guest time runs ahead of the host time.

  • --biospxedebug on|off: This option enables additional debugging output when using the Intel PXE boot ROM. The output will be written to the release log file (Section 12.1.2, “Collecting debugging information”.

  • --boot<1-4> none|floppy|dvd|disk|net: This specifies the boot order for the virtual machine. There are four "slots", which the VM will try to access from 1 to 4, and for each of which you can set a device that the VM should attempt to boot from.

  • --rtcuseutc on|off: This option lets the real-time clock (RTC) operate in UTC time. See Section 3.5.1, “"Motherboard" tab”.

  • --graphicscontroller none|vboxvga|vmsvga: This option specifies use of a graphics controller, and type chosen from vboxvga or vmsvga. Section 3.5.1, “"Motherboard" tab”).

  • --snapshotfolder default|<path>: This option specifies the folder in which snapshots will be kept for a virtual machine.

  • --firmware bios|efi|efi32|efi64: This option specifies which firmware to be used to boot the VM: Available options are: BIOS, or one of the EFI options: efi, efi32 or efi64. Use EFI options with care.

  • --guestmemoryballoon <size> This option sets the default size of the guest memory balloon, that is, memory allocated by the VirtualBox Guest Additions from the guest operating system and returned to the hypervisor for re-use by other virtual machines. <size> must be specified in megabytes. The default size is 0 megabytes. For details, see Section 4.9.1, “Memory ballooning”.

  • --defaultfrontend default|<name>: This option specifies the default frontend to be used when starting this VM; see Section 8.12, “VBoxManage startvm” for details.

8.8.2. Networking settings

The following networking settings are available through VBoxManage modifyvm. With all these settings, the decimal number directly following the option name ("1-N" in the list below) specifies the virtual network adapter whose settings should be changed.

  • --nic<1-N> none|null|nat|natnetwork|bridged|intnet|hostonly|generic: With this, you can set, for each of the VM's virtual network cards, what type of networking should be available. They can be not present (none), not connected to the host (null), use network address translation (nat), use the new network address translation engine (natnetwork), bridged networking (bridged) or communicate with other virtual machines using internal networking (intnet), host-only networking (hostonly), or access rarely used sub-modes (generic). These options correspond to the modes which are described in detail in Section 6.2, “Introduction to networking modes”.

  • --nictype<1-N> Am79C970A|Am79C973|82540EM|82543GC|82545EM|virtio: This enables you to specify which networking hardware VirtualBox presents to the guest for a specified VM virtual network card; see Section 6.1, “Virtual networking hardware”.

  • --cableconnected<1-N> on|off: This enables you to temporarily disconnect a virtual network interface, as if a network cable had been pulled from a real network card. This might be useful e.g. for resetting certain software components in the VM.

  • With the "nictrace" options, you can optionally trace network traffic by dumping it to a file, for debugging purposes.

    With --nictrace<1-N> on|off, you can enable network tracing for a particular virtual network card.

    If enabled, you must specify with --nictracefile<1-N> <filename> the absolute path of the file the trace should be logged to.

  • --nicproperty<1-N> <paramname>="paramvalue": This option, in combination with "nicgenericdrv" allows you to pass parameters to rarely-used network backends.

    These parameters are backend engine-specific, and are different between UDP Tunnel and the VDE backend drivers. For examples, please see Section 6.8, “UDP Tunnel networking”.

  • --nicspeed<1-N> <kbps>: If generic networking has been enabled for a particular virtual network card (see the --nic option above - otherwise this setting has no effect), this mode enables access to rarely used networking sub-modes, such as VDE network or UDP Tunnel. This option specifies the throughput rate in KBytes/sec.

  • --nicbootprio<1-N> <priority>: This specifies the order in which NICs are tried for booting over the network (using PXE). The priority is an integer in the 0 to 4 range. Priority 1 is the highest, priority 4 is low. Priority 0, which is the default unless otherwise specified, is the lowest.

    Note that this option only has effect when the Intel PXE boot ROM is used.

  • --nicpromisc<1-N> deny|allow-vms|allow-all: This ernables you to specify how the promiscuous mode is handled for the specified VM virtual network card. This setting is only relevant for bridged networking. deny (default setting) hides any traffic not intended for this VM. allow-vms hides all host traffic from this VM but allows the VM to see traffic from/to other VMs. allow-all removes this restriction completely.

  • --nicbandwidthgroup<1-N> none|<name>: This removes/adds an assignment of a bandwidth group from/to the specified virtual network interface. Specifying none removes any current bandwidth group assignment from the specified virtual network interface. Specifying <name> adds an assignment of a bandwidth group to the specified virtual network interface.

    For details, please see Section 6.10, “Limiting bandwidth for network I/O”.

  • --bridgeadapter<1-N> none|<devicename>: If bridged networking has been enabled for a virtual network card (see the --nic option above; otherwise this setting has no effect), use this option to specify which host interface the given virtual network interface will use. For details, please see Section 6.5, “Bridged networking”.

  • --hostonlyadapter<1-N> none|<devicename>: If host-only networking has been enabled for a virtual network card (see the --nic option above; otherwise this setting has no effect), use this option to specify which host-only networking interface the given virtual network interface will use. For details, please see Section 6.7, “Host-only networking”.

  • --intnet<1-N> network: If internal networking has been enabled for a virtual network card (see the --nic option above; otherwise this setting has no effect), use this option to specify the name of the internal network (see Section 6.6, “Internal networking”).

  • --nat-network<1-N> <network name>: If the networking type is set to natnetwork (not nat) then this setting specifies the name of the NAT network this adapter is connected to. Optional.

  • --nicgenericdrv<1-N> <backend driver>: If generic networking has been enabled for a virtual network card (see the --nic option above; otherwise this setting has no effect), this mode allows you to access rarely used networking sub-modes, such as VDE network or UDP Tunnel.

  • --macaddress<1-N> auto|<mac>: With this option you can set the MAC address of a particular network adapter on the VM. Normally, each network adapter is assigned a random address by VirtualBox at VM creation.

8.8.2.1. NAT Networking settings.

The following NAT networking settings are available through VBoxManage modifyvm. With all these settings, the decimal number directly following the option name ("1-N" in the list below) specifies the virtual network adapter whose settings should be changed.

8.8.3. Miscellaneous settings

The following other hardware settings, such as serial port, audio, clipboard, drag and drop, monitor and USB settings are available through VBoxManage modifyvm:

  • --mouse <ps2|usb|usbtablet|usbmultitouch>: Specifies the mode of the mouse to be used in the VM. Available options are: ps2, usb, usbtablet, usbmultitouch.

  • --keyboard <ps2|usb>: Specifies the mode of the keyboard to be used in the VM. Available options are: ps2, usb.

  • --uart<1-N> off|<I/O base> <IRQ>: With this setting you can configure virtual serial ports for the VM. See Section 3.10, “Serial ports” for an introduction.

  • --uartmode<1-N> <arg>: This setting controls how VirtualBox connects a given virtual serial port (previously configured with the --uartX setting, see above) to the host on which the virtual machine is running. As described in detail in Section 3.10, “Serial ports”, for each such port, you can specify <arg> as one of the following options:

    • disconnected: Even though the serial port is shown to the guest, it has no "other end" -- like a real COM port without a cable.

    • server <pipename>: On a Windows host, this tells VirtualBox to create a named pipe on the host named <pipename> and connect the virtual serial device to it. Note that Windows requires that the name of a named pipe begin with \\.\pipe\.

      On a Linux host, instead of a named pipe, a local domain socket is used.

    • client <pipename>: This operates just like server ..., except that the pipe (or local domain socket) is not created by VirtualBox, but assumed to exist already.

    • tcpserver <port>: This tells VirtualBox to create a TCP socket on the host with TCP <port> and connect the virtual serial device to it. Note that UNIX-like systems require ports over 1024 for normal users.

    • tcpclient <hostname:port>: This operates just like tcpserver ..., except that the TCP socket is not created by VirtualBox, but assumed to exist already.

    • file <file>: This redirects the serial port output to a raw file <file> specified by its absolute path on the host file system.

    • <devicename>: If, instead of the above, the device name of a physical hardware serial port of the host is specified, the virtual serial port is connected to that hardware port. On a Windows host, the device name will be a COM port such as COM1; on a Linux host, the device name will look like /dev/ttyS0. This allows you to "wire" a real serial port to a virtual machine.

  • --lptmode<1-N> <Device>: Specifies the Device Name of the parallel port that the Parallel Port feature will be using. Use this before --lpt. This feature is host operating system specific. For Windows hosts, use a device name like lpt1 while on Linux hosts you have to use a device name like /dev/lp0

  • --lpt<1-N> <I/O base> <IRQ>: Specifies the I/O address of the parallel port and the IRQ number that the Parallel Port feature will be using. Optional. Use this after --lptmod. I/O base address and IRQ are the values that guest sees i.e. the values avalable under guest Device Manager.

  • --audio none|null|dsound|oss|alsa|pulse|coreaudio: With this setting, you can specify whether the VM should have audio support, and – if so – which type. The list of supported audio types depends on the host and can be determined with VBoxManage modifyvm.

  • --audiocontroller ac97|hda|sb16: With this setting, you can specify the audio controller to be used with this VM.

  • --audiocodec stac9700|ad1980|stac9221|sb16: With this setting, you can specify the audio codec to be used with this VM.

  • --audioin on: With this setting, you can specify whether capturing audio from the host is enabled or disabled.

  • --audioout on: With this setting, you can specify whether audio playback from the guest is enabled or disabled.

  • --clipboard disabled|hosttoguest|guesttohost|bidirectional: With this setting, you can select if and how the guest or host operating system's clipboard should be shared with the host or guest. See Section 3.4, “General settings”. This requires that the Guest Additions be installed in the virtual machine.

  • --draganddrop disabled|hosttoguest|guesttohost|bidirectional: With this setting, you can specify the current drag and drop mode being used between the host and the virtual machine. See Section 4.4, “Drag and Drop”. This requires that the Guest Additions be installed in the virtual machine.

  • --monitorcount <count>: This enables multi-monitor support. See Section 3.6, “Display settings”.

  • --usb on|off: This setting enables or disables the VM's virtual USB controller. See Section 3.11.1, “USB settings” for details.

  • --usbehci on|off: This setting enables or disables the VM's virtual USB 2.0 controller. See Section 3.11.1, “USB settings” for details.

  • --usbxhci on|off: This setting enables or disables the VM's virtual USB 3.0 controller. See Section 3.11.1, “USB settings” for details.

  • --usbrename <oldname> <newname>: This setting enables renaming of the VM's virtual USB controller from <oldname> to <newname>.

8.8.4. Video Capture settings

The following settings for changing video recording parameters are available through VBoxManage modifyvm.

  • --videocap on|off: This option enables or disables recording a VM session into a WebM/VP8 file. If this option is enabled, recording will start when the VM session is started.

  • --videocapscreens all|<screen ID> [<screen ID> ...]: This option allows to specify which screens of the VM are being recorded. Each screen is recorded into a separate file.

  • --videocapfile <filename>: This option sets the filename VirtualBox uses to save the recorded content.

  • --videocapres <width>x<height>: This option sets the resolution (in pixels) of the recorded video.

  • --videocaprate <rate>: This option sets the bitrate in kilobits (kb) per second. Increasing this value makes the video look better for the cost of an increased file size.

  • --videocapfps <fps>: This option sets the maximum number of frames per second (FPS) to be recorded. Frames with a higher frequency will be skipped. Reducing this value increases the number of skipped frames and reduces the file size.

  • --videocapmaxtime <ms>: This option sets the maximum time in milliseconds the video capturing will be enabled since activation. The capturing stops when the defined time interval has elapsed. If this value is zero the capturing is not limited by time.

  • --videocapmaxsize <MB>: This option limits the maximum size of the captured video file (in MB). The capturing stops when the file size has reached the specified size. If this value is zero the capturing will not be limited by file size.

  • --videocapopts <key=value> [,<key=value> ...]: This format can be used to specify additional video capturing options. These options only are for advanced users and must be specified in a comma-separated key=value format, e.g. foo=bar,a=b.

    The following keys and their corresponding values are available:

    • ac_enabled: Enables audio recording when set to true, otherwise set to false to disable. This feature is considered being experimental.

8.8.5. Remote machine settings

The following settings that affect remote machine behavior are available through VBoxManage modifyvm:

  • --vrde on|off: This enables or disables the VirtualBox remote desktop extension (VRDE) server.

  • --vrdeproperty "TCP/Ports|Address=<value>" sets the port number(s) and IP address on the VM that the VRDE server can bind to.

    • For TCP/Ports, <value> should be a port or a range of ports that the VRDE server can bind to; "default" or "0" means port 3389, the standard port for RDP. For details, see the description for the --vrdeport option in Section 8.8.5, “Remote machine settings”.

    • For TCP/Address, <value> should be the IP address of the host network interface that the VRDE server will bind to. If specified, the server will accept connections only on the specified host network interface. For details, see the description for the --vrdeaddress option in Section 8.8.5, “Remote machine settings”.

  • --vrdeproperty "VideoChannel/Enabled|Quality|DownscaleProtection=<value>" sets the VRDP video redirection properties.

    • For VideoChannel/Enabled, <value> can be set to "1" switching the VRDP video channel on. For details, see Section 7.1.9, “VRDP video redirection”.

    • For VideoChannel/Quality, <value> should be set between 10 and 100% inclusive, representing a JPEG compression level on the VRDE server video channel. Lower values mean lower quality but higher compression. For details, see Section 7.1.9, “VRDP video redirection”.

    • For VideoChannel/DownscaleProtection, <value> can be set to "1" to enable the videochannel downscale protection feature. When enabled, if a video's size equals the shadow buffer size, then it is regarded as a full screen video, and is displayed; but if its size is between fullscreen and the downscale threshold - it is NOT displayed, as it could be an application window, which would be unreadable when downscaled. When the downscale protection feature is disabled, an attempt is always made to display videos.

  • --vrdeproperty "Client/DisableDisplay|DisableInput|DisableAudio|DisableUSB=1"

    disables one of the VRDE server features: Display, Input, Audio or USB respectively. To re-enable a feature, use e.g. "Client/DisableDisplay=". For details, see Section 7.1.10, “VRDP customization”.

  • --vrdeproperty "Client/DisableClipboard|DisableUpstreamAudio=1"

    disables one of the VRDE server features: Clipboard or UpstreamAudio respectively. To re-enable a feature, use e.g. "Client/DisableClipboard=". For details, see Section 7.1.10, “VRDP customization”.

  • --vrdeproperty "Client/DisableRDPDR=1"

    disables the VRDE server feature: RDP device redirection for smart cards. To re-enable this feature, use "Client/DisableRDPR=".

  • --vrdeproperty "H3DRedirect/Enabled=1"

    enables the VRDE server feature: 3D redirection. To re-disable this feature, use "H3DRedirect/Enabled=".

  • --vrdeproperty "Security/Method|ServerCertificate|ServerPrivateKey|CACertificate=<value>" sets the desired security method/Path of server certificate, path of server private key, path of CA certificate, used for a connection.

    • --vrdeproperty "Security/Method=<value>" sets the desired security method, which is used for a connection. Valid values are:

      • Negotiate - both Enhanced (TLS) and Standard RDP Security connections are allowed. The security method is negotiated with the client. This is the default setting.

      • RDP - only Standard RDP Security is accepted.

      • TLS - only Enhanced RDP Security is accepted. The client must support TLS.

      For details, see Section 7.1.6, “RDP encryption”.

    • --vrdeproperty "Security/ServerCertificate=<value>" where <value> is the absolute path of the server certificate. For details, see Section 7.1.6, “RDP encryption”.

    • --vrdeproperty "Security/ServerPrivateKey=<value>" where <value> is the absolute path of the server private key. For details, see Section 7.1.6, “RDP encryption”.

    • --vrdeproperty "Security/CACertificate=<value>" where <value> is the absolute path of the CA self signed certificate. For details, see Section 7.1.6, “RDP encryption”.

  • --vrdeproperty "Audio/RateCorrectionMode|LogPath=<value>" sets the Audio connection mode, or Path of the audio logfile.

    • --vrdeproperty "Audio/RateCorrectionMode=<value>" where <value> is the desired rate correction mode, allowed values are:

      • VRDP_AUDIO_MODE_VOID - no mode specified, use to unset any Audio mode already set.

      • VRDP_AUDIO_MODE_RC - rate correction mode.

      • VRDP_AUDIO_MODE_LPF - low pass filter mode.

      • VRDP_AUDIO_MODE_CS - client sync mode to prevent under/overflow of the client queue.

    • --vrdeproperty "Audio/LogPath=<value>" where <value> is the absolute path of the Audio log file.

  • --vrdeextpack default|<name>: Enables specification of the library for accessing the VM remotely. The default is to use the RDP code which is part of the Oracle VM VirtualBox Extension Pack.

  • --vrdeport default|<ports>: A port or a range of ports the VRDE server can bind to; "default" or "0" means port 3389, the standard port for RDP. You can specify a comma-separated list of ports or ranges of ports. Use a dash between two port numbers to specify a range. The VRDE server will bind to one of the available ports from the specified list. Only one machine can use a given port at a time. For example, the option --vrdeport 5000,5010-5012 will tell the server to bind to one of following ports: 5000, 5010, 5011 or 5012.

  • --vrdeaddress <IP address>: The IP address of the host network interface the VRDE server will bind to. If specified, the server will accept connections only on the specified host network interface.

    The setting can be used to specify whether the VRDP server should accept either IPv4, IPv6 or both connections:

    • only IPv4: --vrdeaddress "0.0.0.0"

    • only IPv6: --vrdeaddress "::"

    • both IPv6 and IPv4 (default): --vrdeaddress ""

  • --vrdeauthtype null|external|guest: This enables you to indicate use of authorization, and specify how authorization will be performed; see Section 7.1.5, “RDP authentication” for details.

  • --vrdeauthlibrary default|<name>: This specifies the library used for RDP authentication, see Section 7.1.5, “RDP authentication” for details.

  • --vrdemulticon on|off: This enables multiple connections to be made to the same VRDE server, if the server supports this feature; see Section 7.1.7, “Multiple connections to the VRDP server”.

  • --vrdereusecon on|off: This specifies the VRDE server behavior when multiple connections are disabled. When this option is enabled, the server will allow a new client to connect and will drop the existing connection. When this option is disabled (this is the default setting), a new connection will not be accepted if there is already a client connected to the server.

  • --vrdevideochannel on|off: This enables video redirection, if it is supported by the VRDE server; see Section 7.1.9, “VRDP video redirection”.

  • --vrdevideochannelquality <percent>: Specifies the image quality for video redirection; see Section 7.1.9, “VRDP video redirection”.

8.8.6. Teleporting settings

With the following commands for VBoxManage modifyvm you can configure a machine to be a target for teleporting. See Section 7.2, “Teleporting” for an introduction.

  • --teleporter on|off: This setting enables/disables the teleporter feature whereby when the machine is started, it waits to receieve a teleporting request from the network instead of booting normally; teleporting requests are received on the port and address specified using the following two parameters.

  • --teleporterport <port>, --teleporteraddress <address>: these settings must be used with --teleporter and they specify the port and address the virtual machine should listen to to receive a teleporting request sent from another virtual machine. <port> can be any free TCP/IP port number (e.g. 6000); <address> can be any IP address or hostname and specifies the TCP/IP socket to bind to. The default is "0.0.0.0", which means any address.

  • --teleporterpassword <password>: if this optional setting is given, then the teleporting request will only succeed if the source machine specifies the same password as the one given with this command.

  • --teleporterpasswordfile <password>: if this optional setting is given, then the teleporting request will only succeed if the source machine specifies the same password as the one specified in the file give with this command. Use stdin to read the password from stdin.

  • --cpuid <leaf> <eax> <ebx> <ecx> <edx>: Advanced users can use this setting before a teleporting operation to restrict the virtual CPU capabilities that VirtualBox presents to the guest operating system. This must be run on both the source and the target machines involved in the teleporting and will then modify what the guest sees when it executes the CPUID machine instruction. This might help with misbehaving applications that wrongly assume that certain CPU capabilities are present. The meaning of the parameters is hardware dependent; please refer to the AMD or Intel processor manuals.

8.8.7. Debugging settings

The following settings are only relevant for low-level VM debugging. Regular users will never need these settings.

  • --tracing-enabled on|off: Enable the tracebuffer. This consumes some memory for the tracebuffer and adds extra overhead.

  • --tracing-config <config-string>: Enables tracing configuration. In particular, this defines which group of tracepoints are enabled.

  • --tracing-allow-vm-access on|off: Enables/disables(default) VM access to the tracebuffer.

8.8.8. USB card reader settings

The following setting defines access to a USB Card Reader by the guest environment. USB card readers are typically used for accessing data on memory cards such as CompactFlash (CF), Secure Digital (SD) or MultiMediaCard (MMC).

  • --usbcardreader on|off: Enables/disables the USB card reader interface.

8.8.9. Auto starting VMs during host system boot

These settings configure the VM autostart feature, which automatically starts the VM at host system boot-up. Note that there are pre-requisites that need to be addressed before using this feature. See Section 9.24, “Starting virtual machines during system boot” for more details.

  • --autostart on|off: Enables/disables VM autostart at host system boot-up, using specified user name.

  • --autostart-delay <seconds>: Specifies a delay (seconds) following host system boot-up, before VM autostarts.