This command imports one or more virtual machines into Oracle VM VirtualBox. You can import from either of the following:
A virtual appliance in OVF format.
A cloud service, such as Oracle Cloud Infrastructure. Only a single cloud instance can be imported.
See Section 1.14, “Importing and Exporting Virtual Machines” for more details on importing VMs into Oracle VM VirtualBox.
The import subcommand takes at least the path name of an OVF file as input and expects the disk images, if needed, to be in the same directory as the OVF file. Many additional command-line options are supported. These enable you to control in detail what is being imported and to modify the import parameters, depending on the content of the OVF file.
It is therefore recommended to first run the
import subcommand with the
--dry-run
or
-n
option. This will then print
a description of the appliance's contents to the screen how it
would be imported into Oracle VM VirtualBox, together with the
optional command-line options to influence the import behavior.
Use of the --options
keepallmacs|keepnatmacs|keepdisknames
option
enables additional fine tuning of the import operation. The
first two options enable you to specify how the MAC addresses of
every virtual network card should be handled. They can either be
reinitialized, which is the default setting, left unchanged
(keepallmacs
) or left unchanged
when the network type is NAT
(keepnatmacs
). If you add
keepdisknames
all new disk
images are assigned the same names as the originals, otherwise
they are renamed.
As an example, the following is a screen output for a sample appliance containing a Windows XP guest:
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>") 2: Suggested VM group "/" (change with "--vsys 0 --group <group>") 3: Suggested VM settings file name "/home/klaus/VirtualBox VMs/dummy2 2/dummy2 2.vbox" (change with "--vsys 0 --settingsfile <filename>") 4: Suggested VM base folder "/home/klaus/VirtualBox VMs" (change with "--vsys 0 --basefolder <path>") 5: End-user license agreement (display with "--vsys 0 --eula show"; accept with "--vsys 0 --eula accept") 6: Number of CPUs: 1 (change with "--vsys 0 --cpus <n>") 7: Guest memory: 956 MB (change with "--vsys 0 --memory <MB>") 8: Sound card (appliance expects "ensoniq1371", can change on import) (disable with "--vsys 0 --unit 5 --ignore") 9: USB controller (disable with "--vsys 0 --unit 6 --ignore") 10: Network adapter: orig bridged, config 2, extra type=bridged 11: Floppy (disable with "--vsys 0 --unit 8 --ignore") 12: SCSI controller, type BusLogic (change with "--vsys 0 --unit 9 --scsitype {BusLogic|LsiLogic}"; disable with "--vsys 0 --unit 9 --ignore") 13: IDE controller, type PIIX4 (disable with "--vsys 0 --unit 10 --ignore") 14: 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")
The individual configuration items are numbered, and depending
on their type support different command-line options. The import
subcommand can be directed to ignore many such items with a
--vsys X --unit Y --ignore
option, where X is the number of the virtual system and Y the
item number, as printed on the screen. X is zero, unless there
are several virtual system descriptions in the appliance.
In the above example, Item #1 specifies the name of the target
machine in Oracle VM VirtualBox. Items #12 and #13 specify hard disk
controllers, respectively. Item #14 describes a hard disk image.
In this case, the additional
--controller
option indicates
which item the disk image should be connected to, with the
default coming from the OVF file.
You can combine several items for the same virtual system using
the --vsys
option. For example,
to import a machine as described in the OVF, but without the
sound card and without the USB controller, and with the disk
image connected to the IDE controller instead of the SCSI
controller, use the following command:
VBoxManage import WindowsXp.ovf --vsys 0 --unit 8 --ignore --unit 9 --ignore --unit 14 --controller 13
As the result of this operation, a file with the suffix
.oci
is downloaded to the local host. This
file is a TAR archive which contains a bootable instance image
in QCOW2 format and a JSON file with some metadata related to
the imported instance.
The downloaded file is deleted after a successful import. If import fails, the downloaded file may not be deleted and the VBoxSVC log file may indicate the location where the file was stored.
During import the bootable image is extracted from the archive and converted into VMDK format. The JSON file is also extracted and stored in the VM machine folder.
The command syntax for importing an Oracle Cloud Infrastructure instance begins with VBoxManage import OCI:// --cloud.
You can list the available Oracle Cloud Infrastructure VM instances and their IDs by using the following command:
VBoxManage cloud --provider=OCI --profile=cloud-profile-name
list instances
To import a VM from a cloud service such as Oracle Cloud Infrastructure, use the
--cloud
option to specify the import from the
Cloud. Some of the following options are settings for the VM,
for others you must enter an Oracle Cloud Identifier (OCID) for
a resource. Use the Oracle Cloud Infrastructure Console to view
OCIDs.
The following parameters can be specified:
--vmname
: Specifies a new name for the imported VM. This name is used as the VM name by Oracle VM VirtualBox.--cloudinstanceid
: The ID of an existing instance in the Cloud.--cloudprofile
: Specifies the cloud profile that is used to connect to the cloud service provider. The cloud profile contains your Oracle Cloud Infrastructure account details, such as your user OCID and the fingerprint for your public key. To use a cloud profile, you must have the required permissions on Oracle Cloud Infrastructure.--cloudbucket
: Specifies the bucket name in which to store the object created from an instance bootable volume. In Oracle Cloud Infrastructure, a bucket is a logical container for storing objects.
The following import options have the same meaning as for OVF import:
--ostype
: An OS type supported by Oracle VM VirtualBox. Use the VBoxManage list ostypes command to see the whole list of supported OSes. If the type was not set, theUnknown
type is used.--basefolder
: The folder where the new VM is stored.--description
: A string describing the VM.--memory
: The amount of RAM memory assigned for the VM, in MB. If this option is not set either the default memory size for the OS type is used, or the value is taken from the Oracle Cloud Infrastructure instance.--cpus
: the number of virtual CPUs assigned for the VM. If this option is not set, either the default virtual CPUs setting for the OS type is used, or the value is taken from the Oracle Cloud Infrastructure instance.
The import options --disk
,
--controller
, --scsitype
,
--unit
, --settingsfile
are not
valid for cloud import.
The following example shows a typical command line for importing an instance from Oracle Cloud Infrastructure:
# VBoxManage import OCI:// --cloud --vmname import_from_oci --memory 4000 --cpus 3 --ostype FreeBSD_64 --cloudprofile "standard user" --cloudinstanceid ocid1.instance.oc1.iad.abuwc... --cloudbucket myBucket