Virtualbox
VirtualBox ist eine Virtualisierungssoftware des US-amerikanischen Unternehmens Oracle unter der GPL v2.
Seit Kernel 4.16 sind die Gast-Treiber Vboxguest integriert (Copy & Paste zwischen Host und Gas, Durchreichen von OpenGL-Befehlen damit ist die 3D-Beschleunigung des Hosts nutzbar), die gemeinsamen Ordner fehlen noch.
Befehle
vdi zu raw/qcow2 konvertieren
VBoxManage gehört zum Virtualbox-paket, vor der Konvertierung muss u.U. die Zuordnung zu einer VM gelöst werden oder man kopiert das vdi auf das Zielsystem und konvertiert dort.
VBoxManage clonehd --format RAW vboximage.vdi rawimage.raw qemu-img convert -f raw rawimage.raw -O qcow2 image.qcow2 # optional resize: # qemu-img resize image.qcow2 +50G
resize
vorher ein Backup machen!
MY_HD.vdi auf 6000 MiB einstellen:
VBoxManage modifyhd MY_HD.vdi --resize 6000
Möglicherweise kommt der folgende Fehler:
Progress state: VBOX_E_NOT_SUPPORTED VBoxManage: error: Resize hard disk operation for this format is not implemented yet!
Lösung: das vorhandene Image muss zu einem dynamischen Image konvertiert werden:
VBoxManage clonehd MY_HD.vdi MY_HD_clone.vdi
anschließend der resize (s.o.).
Konfiguration
virtualbox headless
apt install virtualbox-5.2
/sbin/vboxconfig
wget https://download.virtualbox.org/virtualbox/5.2.16/Oracle_VM_VirtualBox_Extension_Pack-5.2.16.vbox-extpack # bzw. bei neueren Versionen (hier 5.2.30): # wget https://download.virtualbox.org/virtualbox/5.2.30/Oracle_VM_VirtualBox_Extension_Pack-5.2.30.vbox-extpack vboxmanage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.2.16.vbox-extpack
→ vboxmanage list extpacks
/sbin/vboxconfig
→ /etc/default/virtualbox → hat keinen Effekt auf manchen Systemen (5.1.x-Packages und frühere 5.2.x-Paket, íst zumindest auf Ubuntu mit 5.2.30 nicht mehr nötig, damit sind auch die u.g. workarounds in Sachen user und group hinfällig)
/etc/vbox/vbox.cfg
# Set this to 1 if you would like the virtualbox modules to be loaded by # the init script. LOAD_VBOXDRV_MODULE=1 # SHUTDOWN_USERS="foo bar" # check for running VMs of user 'foo' and user 'bar' # 'all' checks for all active users # SHUTDOWN=poweroff # SHUTDOWN=acpibutton # SHUTDOWN=savestate # select one of these shutdown methods for running VMs # acpibutton and savestate causes the init script to wait # 30 seconds for the VMs to shutdown SHUTDOWN_USERS="vbox" SHUTDOWN=savestate VBOXWEB_USER=vbox
systemctl start vboxweb-service.service
→ vboxwebsr 25104 root 10u IPv6 752731 0t0 TCP [::1]:18083 (LISTEN)
ohne root-Rechte : Ggf. muss das unit-file abgeändert werden (Ubuntu 5.1.x, ab 5.2.x nicht mehr)
/lib/systemd/system/vboxweb.service
(bei neueren Versionen: /lib/systemd/system/vboxweb-service.service
)
[Unit] Description=VirtualBox Web Service After=virtualbox.service [Service] Type=forking ExecStart=/usr/bin/vboxwebsrv --pidfile /home/vbox/vboxweb.pid --background PIDFile=/home/vbox/vboxweb.pid User=vbox Group=vboxusers [Install] WantedBy=multi-user.target
Debian Jessie:
[Unit] SourcePath=/usr/lib/virtualbox/vboxweb-service.sh Description= Before=runlevel2.target runlevel3.target runlevel4.target runlevel5.target shutdown.target After=vboxdrv.service Conflicts=shutdown.target [Service] Type=forking Restart=no TimeoutSec=5min IgnoreSIGPIPE=no KillMode=process GuessMainPID=no RemainAfterExit=yes ExecStart=/usr/lib/virtualbox/vboxweb-service.sh start ExecStop=/usr/lib/virtualbox/vboxweb-service.sh stop User=vbox Group=vboxusers [Install] WantedBy=multi-user.target
systemctl daemon-reload
diff -u /usr/lib/virtualbox/vboxweb-service.sh /usr/lib/virtualbox/vboxweb-service.sh.dist --- /usr/lib/virtualbox/vboxweb-service.sh 2018-08-05 18:54:29.385292902 +0200 +++ /usr/lib/virtualbox/vboxweb-service.sh.dist 2018-08-05 18:48:05.753616307 +0200 @@ -146,10 +146,7 @@ fi # prevent inheriting this setting to VBoxSVC unset VBOX_RELEASE_LOG_DEST - start-stop-daemon --start --user $VBOXWEB_USER --exec $binary $PARAMS > /dev/null 2>&1 - # does not work: - # start_daemon $VBOXWEB_USER $binary $PARAMS > /dev/null 2>&1 - + start_daemon $VBOXWEB_USER $binary $PARAMS > /dev/null 2>&1 # ugly: wait until the final process has forked sleep .1 PID=`pidof $binary 2>/dev/null`
start-stop-daemon --start --user vbox --exec /usr/lib/virtualbox/vboxwebsrv --background
Aug 05 18:41:26 server1 vboxweb-service.sh[5257]: + unset VBOX_RELEASE_LOG_DEST Aug 05 18:41:26 server1 vboxweb-service.sh[5257]: + start_daemon vbox /usr/lib/virtualbox/vboxwebsrv --background Aug 05 18:41:26 server1 vboxweb-service.sh[5257]: + sleep .1 Aug 05 18:41:26 server1 vboxweb-service.sh[5257]: + pidof /usr/lib/virtualbox/vboxwebsrv
mkdir /var/lib/vbox chown vbox.vboxusers /var/lib/vbox
/lib/udev/rules.d/20-virtualbox2.rules
:
KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660" KERNEL=="vboxdrvu", NAME="vboxdrvu", OWNER="root", GROUP="vboxusers", MODE="0660" KERNEL=="vboxnetctl", NAME="vboxnetctl", OWNER="root",GROUP="vboxusers", MODE="0660"
/lib/systemd/system/vboxweb.service
→ ggf. public IP setzen: -H 1.2.3.4
systemctl enable vboxweb-service.service
Created symlink from /etc/systemd/system/multi-user.target.wants/vboxweb-service.service to /lib/systemd/system/vboxweb-service.service.
Shell setzen nötig??? →
chsh -s /bin/bash vbox
LAMP installieren:
apache2 mysql-server libapache2-mod-php php php-curl php-soap php-xml
<VirtualHost *:443> ServerName Host.domain.tld ServerAdmin webmaster@domain.tld DocumentRoot "/srv/www" SSLEngine On SSLProtocol ALL -SSLv2 -SSLv3 SSLHonorCipherOrder On SSLCipherSuite 'EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA:EECDH:EDH+AESGCM:EDH:ECDH+AESGCM:ECDH+AES:ECDH:HIGH:MEDIUM:!RC4:!3DES:!CAMELLIA:!SEED:!aNULL:!MD5:!eNULL:!LOW:!EXP:!DSS:!PSK:!SRP' <IfModule mod_headers.c> Header always set Strict-Transport-Security "max-age=15768000" </IfModule> SSLCertificateFile /etc/apache2/CERTFILE.crt SSLCertificateKeyFile /etc/apache2/KEYFILE.net.key SSLCACertificateFile /etc/apache2/CA-bundle.crt ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory "/srv/www" > Options -Indexes -MultiViews +FollowSymLinks +ExecCGI AllowOverride AuthConfig FileInfo Limit Indexes Order allow,deny allow from all # Apache 2.4+: Require all granted Require all granted </Directory> </VirtualHost>
phpvirtualbox → config.php erzeugen
Login mit: admin / admin
mkdir /home/vbox/VirtualBox\ VMs chown vbox.vboxusers /home/vbox/VirtualBox\ VMs mkdir /home/vbox/iso chown vbox.vboxusers /home/vbox/iso
Einschränkungen:
- Remotedesktop geht nur mit Außen-IP (nicht ::1 127.0.0.1 / localhost):
- leider basiert das plugin von phpvirtualbox auf flash (funktioniert bei Firefox nicht)
/etc/vbox/vbox.cfg
neu anlegen:
# Set this to 1 if you would like the virtualbox modules to be loaded by # the init script. LOAD_VBOXDRV_MODULE=1 # SHUTDOWN_USERS="foo bar" # check for running VMs of user 'foo' and user 'bar' # 'all' checks for all active users # SHUTDOWN=poweroff # SHUTDOWN=acpibutton # SHUTDOWN=savestate # select one of these shutdown methods for running VMs # acpibutton and savestate causes the init script to wait # 30 seconds for the VMs to shutdown SHUTDOWN_USERS="vbox" SHUTDOWN=savestate VBOXWEB_USER=vbox
Quellen
upgrade-Probleme
darauf achten das ältere dkms-Pakete deinstalliert wurden und z.B. 5.2.x auch mit dem richtigen Kernelmodul läuft: modinfo vboxdrv
; wenn das nicht der Fall ist: purge der alten Pakete und reinstall der neuen incl. Ausführung von /sbin/vboxconfig
.
Fehlermeldung:
virtualbox 5.2 has terminated unexpectedly during startup with exit code 1 (0x1) VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component MachineWrap, interface IMachine
nur wenn o.g. workaround überhaupt nötig ist, wenn der Service immer noch als root läuft kommt diese Fehlermeldung:
VBoxManage: error: Failed to initialize COM because the global settings directory '/root/.config/VirtualBox' is not accessible!
Nach dem Paket-upgrade von virtualbox wird immer wieder das unit-file zurückgesetzt, danach fehlen die beiden Zeilen:
/etc/systemd/system/multi-user.target.wants/vboxweb-service.service
User=vbox Group=vboxusers
cat /lib/systemd/system/vboxweb.service
[Unit] Description=VirtualBox Web Service After=virtualbox.service [Service] Type=forking ExecStart=/usr/bin/vboxwebsrv --pidfile /home/vbox/vboxweb.pid --background PIDFile=/home/vbox/vboxweb.pid User=vbox Group=vboxusers [Install] WantedBy=multi-user.target
systemctl daemon-reload systemctl restart vboxweb.service
Bei upgrades geht (regelmäßig) kaputt:
/etc/systemd/system/multi-user.target.wants/vboxweb-service.service
User=vbox Group=vboxusers
Außerdem muss die Datei /etc/vbox/vbox.cfg
wieder neu anlegt werden:
# Set this to 1 if you would like the virtualbox modules to be loaded by # the init script. LOAD_VBOXDRV_MODULE=1 # SHUTDOWN_USERS="foo bar" # check for running VMs of user 'foo' and user 'bar' # 'all' checks for all active users # SHUTDOWN=poweroff # SHUTDOWN=acpibutton # SHUTDOWN=savestate # select one of these shutdown methods for running VMs # acpibutton and savestate causes the init script to wait # 30 seconds for the VMs to shutdown SHUTDOWN_USERS="vbox" SHUTDOWN=savestate VBOXWEB_USER=vbox
phpvirtualbox
CLI
Config „VirtualBox.xml“ liegt in ~/.VirtualBox (früher in .config/VirtualBox/).
su -l vbox
VBoxManage list vms
„VM1“ {4996bf6c-54b8-4b6f-b8fe-1bace980060a}
VBoxManage --help Oracle VM VirtualBox Command Line Management Interface Version 5.0.40_Ubuntu (C) 2005-2017 Oracle Corporation All rights reserved. Usage: VBoxManage [<general option>] <command> General Options: [-v|--version] print version number and exit [-q|--nologo] suppress the logo [--settingspw <pw>] provide the settings password [--settingspwfile <file>] provide a file containing the settings password Commands: list [--long|-l] vms|runningvms|ostypes|hostdvds|hostfloppies| intnets|bridgedifs|hostonlyifs|natnets|dhcpservers| hostinfo|hostcpuids|hddbackends|hdds|dvds|floppies| usbhost|usbfilters|systemproperties|extpacks| groups|webcams|screenshotformats showvminfo <uuid|vmname> [--details] [--machinereadable] showvminfo <uuid|vmname> --log <idx> registervm <filename> unregistervm <uuid|vmname> [--delete] createvm --name <name> [--groups <group>, ...] [--ostype <ostype>] [--register] [--basefolder <path>] [--uuid <uuid>] modifyvm <uuid|vmname> [--name <name>] [--groups <group>, ...] [--description <desc>] [--ostype <ostype>] [--iconfile <filename>] [--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] [--hpet on|off] [--triplefaultreset on|off] [--paravirtprovider none|default|legacy|minimal| hyperv|kvm] [--hwvirtex on|off] [--nestedpaging on|off] [--largepages on|off] [--vtxvpid on|off] [--vtxux on|off] [--pae on|off] [--longmode on|off] [--cpuid-portability-level <0..3> [--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] [--graphicscontroller none|vboxvga|vmsvga] [--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|natnetwork] [--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>] [--nat-network<1-N> <network name>] [--nicgenericdrv<1-N> <driver> [--natnet<1-N> <network>|default] [--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|usbmultitouch] [--keyboard ps2|usb [--uart<1-N> off|<I/O base> <IRQ>] [--uartmode<1-N> disconnected| server <pipe>| client <pipe>| tcpserver <port>| tcpclient <hostname:port>| file <file>| <devicename>] [--lpt<1-N> off|<I/O base> <IRQ>] [--lptmode<1-N> <devicename>] [--guestmemoryballoon <balloonsize in MB>] [--audio none|null|oss|alsa|pulse] [--audiocontroller ac97|hda|sb16] [--audiocodec stac9700|ad1980|stac9221|sb16] [--clipboard disabled|hosttoguest|guesttohost| bidirectional] [--draganddrop disabled|hosttoguest] [--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] [--usbxhci on|off] [--usbrename <oldname> <newname>] [--snapshotfolder default|<path>] [--teleporter on|off] [--teleporterport <port>] [--teleporteraddress <address|empty> [--teleporterpassword <password>] [--teleporterpasswordfile <file>|stdin] [--tracing-enabled on|off] [--tracing-config <config-string>] [--tracing-allow-vm-access on|off] [--usbcardreader on|off] [--autostart-enabled on|off] [--autostart-delay <seconds>] [--videocap on|off] [--videocapscreens all|<screen ID> [<screen ID> ...]] [--videocapfile <filename>] [--videocapres <width> <height>] [--videocaprate <rate>] [--videocapfps <fps>] [--videocapmaxtime <ms>] [--videocapmaxsize <MB>] [--videocapopts <key=value> [<key=value> ...]] [--defaultfrontend default|<name>] clonevm <uuid|vmname> [--snapshot <uuid>|<name>] [--mode machine|machineandchildren|all] [--options link|keepallmacs|keepnatmacs| keepdisknames] [--name <name>] [--groups <group>, ...] [--basefolder <basefolder>] [--uuid <uuid>] [--register] import <ovfname/ovaname> [--dry-run|-n] [--options keepallmacs|keepnatmacs|importtovdi] [more options] (run with -n to have options displayed for a particular OVF) export <machines> --output|-o <name>.<ovf/ova> [--legacy09|--ovf09|--ovf10|--ovf20] [--manifest] [--iso] [--options manifest|iso|nomacs|nomacsbutnat] [--vsys <number of virtual system>] [--product <product name>] [--producturl <product url>] [--vendor <vendor name>] [--vendorurl <vendor url>] [--version <version info>] [--description <description info>] [--eula <license text>] [--eulafile <filename>] startvm <uuid|vmname>... [--type gui|sdl|headless|separate] controlvm <uuid|vmname> pause|resume|reset|poweroff|savestate| acpipowerbutton|acpisleepbutton| keyboardputscancode <hex> [<hex> ...]| setlinkstate<1-N> on|off | nic<1-N> null|nat|bridged|intnet|hostonly|generic| natnetwork [<devicename>] | nictrace<1-N> on|off | nictracefile<1-N> <filename> | nicproperty<1-N> name=[value] | nicpromisc<1-N> deny|allow-vms|allow-all | natpf<1-N> [<rulename>],tcp|udp,[<hostip>], <hostport>,[<guestip>],<guestport> | natpf<1-N> delete <rulename> | guestmemoryballoon <balloonsize in MB> | usbattach <uuid>|<address> [--capturefile <filename>] | usbdetach <uuid>|<address> | clipboard disabled|hosttoguest|guesttohost| bidirectional | draganddrop disabled|hosttoguest | vrde on|off | vrdeport <port> | vrdeproperty <name=[value]> | vrdevideochannelquality <percent> | setvideomodehint <xres> <yres> <bpp> [[<display>] [<enabled:yes|no> | [<xorigin> <yorigin>]]] | screenshotpng <file> [display] | videocap on|off | videocapscreens all|none|<screen>,[<screen>...] | videocapfile <file> videocapres <width>x<height> videocaprate <rate> videocapfps <fps> videocapmaxtime <ms> videocapmaxsize <MB> setcredentials <username> --passwordfile <file> | <password> <domain> [--allowlocallogon <yes|no>] | teleport --host <name> --port <port> [--maxdowntime <msec>] [--passwordfile <file> | --password <password>] | plugcpu <id> | unplugcpu <id> | cpuexecutioncap <1-100> webcam <attach [path [settings]]> | <detach [path]> | <list> addencpassword <id> <password file>|- [--removeonsuspend <yes|no>] removeencpassword <id> removeallencpasswords discardstate <uuid|vmname> adoptstate <uuid|vmname> <state_file> snapshot <uuid|vmname> take <name> [--description <desc>] [--live] [--uniquename Number,Timestamp,Space,Force] | delete <uuid|snapname> | restore <uuid|snapname> | restorecurrent | edit <uuid|snapname>|--current [--name <name>] [--description <desc>] | list [--details|--machinereadable] showvminfo <uuid|snapname> closemedium [disk|dvd|floppy] <uuid|filename> [--delete] storageattach <uuid|vmname> --storagectl <name> [--port <number>] [--device <number>] [--type dvddrive|hdd|fdd] [--medium none|emptydrive|additions| <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] [--discard on|off] [--hotpluggable on|off] [--bandwidthgroup <name>] [--forceunmount] [--server <name>|<ip>] [--target <target>] [--tport <port>] [--lun <lun>] [--encodedlun <lun>] [--username <username>] [--password <password>] [--initiator <initiator>] [--intnet] storagectl <uuid|vmname> --name <name> [--add ide|sata|scsi|floppy|sas] [--controller LSILogic|LSILogicSAS|BusLogic| IntelAHCI|PIIX3|PIIX4|ICH6|I82078] [--portcount <1-n>] [--hostiocache on|off] [--bootable on|off] [--rename <name>] [--remove] bandwidthctl <uuid|vmname> add <name> --type disk|network --limit <megabytes per second>[k|m|g|K|M|G] | set <name> --limit <megabytes per second>[k|m|g|K|M|G] | remove <name> | list [--machinereadable] (limit units: k=kilobit, m=megabit, g=gigabit, K=kilobyte, M=megabyte, G=gigabyte) showmediuminfo [disk|dvd|floppy] <uuid|filename> createmedium [disk|dvd|floppy] --filename <filename> [--size <megabytes>|--sizebyte <bytes>] [--diffparent <uuid>|<filename> [--format VDI|VMDK|VHD] (default: VDI) [--variant Standard,Fixed,Split2G,Stream,ESX] modifymedium [disk|dvd|floppy] <uuid|filename> [--type normal|writethrough|immutable|shareable| readonly|multiattach] [--autoreset on|off] [--property <name=[value]>] [--compact] [--resize <megabytes>|--resizebyte <bytes>] clonemedium [disk|dvd|floppy] <uuid|inputfile> <uuid|outputfile> [--format VDI|VMDK|VHD|RAW|<other>] [--variant Standard,Fixed,Split2G,Stream,ESX] [--existing] mediumproperty [disk|dvd|floppy] set <uuid|filename> <property> <value> [disk|dvd|floppy] get <uuid|filename> <property> [disk|dvd|floppy] delete <uuid|filename> <property> encryptmedium <uuid|filename> [--newpassword <file>|-] [--oldpassword <file>|-] [--cipher <cipher identifier>] [--newpasswordid <password identifier>] checkmediumpwd <uuid|filename> <pwd file>|- convertfromraw <filename> <outputfile> [--format VDI|VMDK|VHD] [--variant Standard,Fixed,Split2G,Stream,ESX] [--uuid <uuid>] convertfromraw stdin <outputfile> <bytes> [--format VDI|VMDK|VHD] [--variant Standard,Fixed,Split2G,Stream,ESX] [--uuid <uuid>] getextradata global|<uuid|vmname> <key>|enumerate setextradata global|<uuid|vmname> <key> [<value>] (no value deletes key) setproperty machinefolder default|<folder> | hwvirtexclusive on|off | vrdeauthlibrary default|<library> | websrvauthlibrary default|null|<library> | vrdeextpack null|<library> | autostartdbpath null|<folder> | loghistorycount <value> defaultfrontend default|<name> logginglevel <log setting> usbfilter add <index,0-N> --target <uuid|vmname>|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>] usbfilter modify <index,0-N> --target <uuid|vmname>|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>] usbfilter remove <index,0-N> --target <uuid|vmname>|global sharedfolder add <uuid|vmname> --name <name> --hostpath <hostpath> [--transient] [--readonly] [--automount] sharedfolder remove <uuid|vmname> --name <name> [--transient] guestproperty get <uuid|vmname> <property> [--verbose] guestproperty set <uuid|vmname> <property> [<value> [--flags <flags>]] guestproperty delete|unset <uuid|vmname> <property> guestproperty enumerate <uuid|vmname> [--patterns <patterns>] guestproperty wait <uuid|vmname> <patterns> [--timeout <msec>] [--fail-on-timeout] guestcontrol <uuid|vmname> [--verbose|-v] [--quiet|-q] [--username <name>] [--domain <domain>] [--passwordfile <file> | --password <password>] run [common-options] [--exe <path to executable>] [--timeout <msec>] [-E|--putenv <NAME>[=<VALUE>]] [--unquoted-args] [--ignore-operhaned-processes] [--no-profile] [--no-wait-stdout|--wait-stdout] [--no-wait-stderr|--wait-stderr] [--dos2unix] [--unix2dos] -- <program/arg0> [argument1] ... [argumentN]] start [common-options] [--exe <path to executable>] [--timeout <msec>] [-E|--putenv <NAME>[=<VALUE>]] [--unquoted-args] [--ignore-operhaned-processes] [--no-profile] -- <program/arg0> [argument1] ... [argumentN]] copyfrom [common-options] [--dryrun] [--follow] [-R|--recursive] <guest-src0> [guest-src1 [...]] <host-dst> copyfrom [common-options] [--dryrun] [--follow] [-R|--recursive] [--target-directory <host-dst-dir>] <guest-src0> [guest-src1 [...]] copyto [common-options] [--dryrun] [--follow] [-R|--recursive] <host-src0> [host-src1 [...]] <guest-dst> copyto [common-options] [--dryrun] [--follow] [-R|--recursive] [--target-directory <guest-dst>] <host-src0> [host-src1 [...]] mkdir|createdir[ectory] [common-options] [--parents] [--mode <mode>] <guest directory> [...] rmdir|removedir[ectory] [common-options] [-R|--recursive] <guest directory> [...] removefile|rm [common-options] [-f|--force] <guest file> [...] mv|move|ren[ame] [common-options] <source> [source1 [...]] <dest> mktemp|createtemp[orary] [common-options] [--secure] [--mode <mode>] [--tmpdir <directory>] <template> stat [common-options] <file> [...] guestcontrol <uuid|vmname> [--verbose|-v] [--quiet|-q] list <all|sessions|processes|files> [common-opts] closeprocess [common-options] < --session-id <ID> | --session-name <name or pattern> <PID1> [PID1 [...]] closesession [common-options] < --all | --session-id <ID> | --session-name <name or pattern> > updatega|updateguestadditions|updateadditions [--source <guest additions .ISO>] [--wait-start] [common-options] [-- [<argument1>] ... [<argumentN>]] watch [common-options] debugvm <uuid|vmname> dumpguestcore --filename <name> | info <item> [args] | injectnmi | log [--release|--debug] <settings> ...| logdest [--release|--debug] <settings> ...| logflags [--release|--debug] <settings> ...| osdetect | osinfo | osdmesg [--lines|-n <N>] | getregisters [--cpu <id>] <reg>|all ... | setregisters [--cpu <id>] <reg>=<value> ... | show [--human-readable|--sh-export|--sh-eval| --cmd-set] <logdbg-settings|logrel-settings> [[opt] what ...] | statistics [--reset] [--pattern <pattern>] [--descriptions] metrics list [*|host|<vmname> [<metric_list>]] (comma-separated) metrics setup [--period <seconds>] (default: 1) [--samples <count>] (default: 1) [--list] [*|host|<vmname> [<metric_list>]] metrics query [*|host|<vmname> [<metric_list>]] metrics enable [--list] [*|host|<vmname> [<metric_list>]] metrics disable [--list] [*|host|<vmname> [<metric_list>]] metrics collect [--period <seconds>] (default: 1) [--samples <count>] (default: 1) [--list] [--detach] [*|host|<vmname> [<metric_list>]] natnetwork add --netname <name> --network <network> [--enable|--disable] [--dhcp on|off] [--port-forward-4 <rule>] [--loopback-4 <rule>] [--ipv6 on|off] [--port-forward-6 <rule>] [--loopback-6 <rule>] natnetwork remove --netname <name> natnetwork modify --netname <name> [--network <network>] [--enable|--disable] [--dhcp on|off] [--port-forward-4 <rule>] [--loopback-4 <rule>] [--ipv6 on|off] [--port-forward-6 <rule>] [--loopback-6 <rule>] natnetwork start --netname <name> natnetwork stop --netname <name> hostonlyif ipconfig <name> [--dhcp | --ip<ipv4> [--netmask<ipv4> (def: 255.255.255.0)] | --ipv6<ipv6> [--netmasklengthv6<length> (def: 64)]] create | remove <name> dhcpserver add|modify --netname <network_name> | --ifname <hostonly_if_name> [--ip <ip_address> --netmask <network_mask> --lowerip <lower_ip> --upperip <upper_ip>] [--enable | --disable] dhcpserver remove --netname <network_name> | --ifname <hostonly_if_name> Introspection and guest debugging: VBoxManage debugvm <uuid|vmname> dumpvmcore [--filename=name] VBoxManage debugvm <uuid|vmname> info <item> [args...] VBoxManage debugvm <uuid|vmname> injectnmi VBoxManage debugvm <uuid|vmname> log [[--release] | [--debug]] [group-settings...] VBoxManage debugvm <uuid|vmname> logdest [[--release] | [--debug]] [destinations...] VBoxManage debugvm <uuid|vmname> logflags [[--release] | [--debug]] [flags...] VBoxManage debugvm <uuid|vmname> osdetect VBoxManage debugvm <uuid|vmname> osinfo VBoxManage debugvm <uuid|vmname> osdmesg [--lines=lines] VBoxManage debugvm <uuid|vmname> getregisters [--cpu=id] [reg-set.reg-name...] VBoxManage debugvm <uuid|vmname> setregisters [--cpu=id] [reg-set.reg-name=value...] VBoxManage debugvm <uuid|vmname> show [[--human-readable] | [--sh-export] | [--sh-eval] | [--cmd-set]] [settings-item...] VBoxManage debugvm <uuid|vmname> statistics [--reset] [--descriptions] [--pattern=pattern] Extension package management: VBoxManage extpack install [--replace] <tarball> VBoxManage extpack uninstall [--force] <name> VBoxManage extpack cleanup