Skip Navigation Links | |
Exit Print View | |
man pages section 1M: System Administration Commands Oracle Solaris 11 Express 11/10 |
System Administration Commands - Part 1
System Administration Commands - Part 2
- create and manage virtual disks
vdiskadm create -s size [-t type[:opt],[opt] [-c comment] vdname
vdiskadm destroy [-r] vdname|snapshot
vdiskadm snapshot vdname@snapname
vdiskadm rollback [-r] snapshot
vdiskadm clone [-c comment] vdname|snapshot clone_vdname
vdiskadm move vdname dir
vdiskadm rename vdname|snapshot vdname|snapshot
vdiskadm list [-fp]vdname
vdiskadm verify vdname
vdiskadm prop-get [-l] -p property vdname
vdiskadm prop-set -p property=value vdname
vdiskadm prop-add -p property=value vdname
vdiskadm prop-del -p property vdname
vdiskadm import [-fnpqm] [-x type] -d file|zvol|dsk [-t type[:opt]] vdname
vdiskadm export -x type[:opt] -d file|zvol|dsk vdname
vdiskadm convert [-t type[:opt]] vdname
vdiskadm translate [-i type[:opt]] -I input_file -x type[:opt] -d output_file
vdiskadm help [command]
The vdiskadm command manages virtual disks within dom0. In the SYNOPSIS above, vdname is the pathname of the virtual disk; it has a maximum length of MAXPATHLEN (1024 bytes).
vdiskadm is implemented as a set of subcommands, many with their own options and operands. These subcommands are described under “Subcommands,” below.
The following subsections describe concepts related to virtual disks.
A snapshot is a read-only copy of a virtual disk. Snapshots can be created extremely quickly and initially consume little space. As data within the active virtual disk changes, the snapshot consumes more data than would otherwise be shared with the active virtual disk.
A clone is a writable copy of a virtual disk. The default type of clone is a merged (that is, coalesced) copy of the original virtual disk. An example of a merged clone occurs when a virtual disk is comprised of several snapshots; a subsequent clone operation results in a new virtual disk containing no snapshots. A clone will be of the same type as the original virtual disk (that is, vmdk:fixed). When a merged clone is created there is no linkage back to the original virtual disk or to any of its snapshots. This lack of linkage allows the merged clone to be moved to another physical machine.
The values of numeric properties can be specified using human-readable suffixes, such as k, KB, M, Gb, and so forth, up to Z for zettabyte). The following are all valid (and equal) specifications:
1536M 1.5g 1.50GB
The following types and options of virtual disks are supported:
vmdk:fixed
vmdk:sparse
vdi:fixed
vdi:sparse
vhd:fixed
vhd:sparse
raw:fixed
where vmdk is the native VMware format, vdi is the native VirtualBox format, vhd is the native Microsoft format, and raw describes a file that looks like a raw disk. A raw disk is always in fixed format so that option can be explicitly set or implicitly understood.
If the type is not specified, the default value is vmdk. If the option is not specified, the default value is fixed for type raw and sparse for types vmdk, vdi, and vhd.
Properties are divided into two types, native and user defined. Native properties either export internal statistics or control vdiskadm behavior. In addition, native properties are either editable or read-only. User–defined properties are arbitrary strings that have no effect on vdiskadm behavior. You can use them to annotate virtual disks in a way that is meaningful in your environment. User–defined property names must contain a colon (:) character, to distinguish them from native properties.
Properties are associated only with the virtual disk and not with individual snapshots.
Every virtual disk has a set of native properties that export statistics about the virtual disk, as well as control various behaviors.
The following are the native properties for a virtual disk:
Boolean property that is true if the virtual disk is a CDROM.
Boolean property that is true if the virtual disk is a removable media.
Boolean property that is true if the virtual disk is read-only. This property is read-only.
Numeric property containing the number of disk sectors in the given virtual disk. This property is read-only.
String property that is the name of the virtual disk. This property is read-only.
Numeric property containing the maximum size of the virtual disk in bytes. This property is read-only.
Numeric property containing the effective size of the virtual disk, in bytes. The effective size includes the size of the data file and all snapshots. The effective size can exceed the maximum size. This property is read-only.
String property containing the date and time that the virtual disk was created. This property is read-only.
Numeric property describing the creation-time property in seconds since the epoch (seconds since 00:00:00 UTC, Jan. 1, 1970). This property is read-only.
String property containing the date and time of last modification to virtual disk. This property is read-only.
Numeric property describing the modification-time property in seconds since the epoch (seconds since 00:00:00 UTC, Jan. 1, 1970). This property is read-only.
String property that contains the comment given when the virtual disk was created or cloned. This property is read-only.
String property that contains the type of virtual disk: vmdk, vhd, vdi, or raw. This property is read-only.
Boolean property that is true if the virtual disk is in sparse format. This property is read-only.
String property that contains the user name of the owner of the virtual disk. This property is editable.
The vdiskadm subcommands and their arguments are described in the following subsections.
vdiskadm create -s size [-t type[:opt],[opt]] [-c comment] vdname
Creates a new virtual disk of the specified size and at the location specified by vdname. If vdname includes a path to the virtual disk, the directories that follow from that path will be created during creation of the virtual disk. This subcommand has the options listed below.
Specifies the type of virtual disk to be created. The default type is vmdk. For vmdk and vdi types the default option is sparse. For type raw the default option is fixed.
Comment that can be attached to virtual disk.
vdiskadm destroy [-r] vdname|snapshot
Destroys the specified virtual disk or snapshot. By default, the destroy operation fails if the specified virtual disk contains snapshots. This subcommand has the option listed below.
Recursively destroys the virtual disk, including all snapshots associated with the virtual disk.
vdiskadm snapshot vdname@snapname
Creates a snapshot of the virtual disk with the specified snapname. This subcommand has no options.
vdiskadm rollback [-r] snapshot
Roll back the virtual disk to a previous snapshot. When a virtual disk is rolled back, all data that has changed since the snapshot is discarded, and the virtual disk reverts to the state at the time of the snapshot. By default, the command refuses to roll back to a snapshot other than the most recent one. In order to roll back further, all intermediate snapshots must be destroyed by specifying the -r option. This subcommand has the option listed below.
Recursively destroy any snapshots more recent than the one specified.
vdiskadm [-c comment] vdname|snapshot clone_vdname
Creates a clone of the specified snapshot or virtual disk. The clone is created with the type and option and the size of the virtual disk being cloned. If clone_vdname includes a path the directories that flow from that path will be created during creation of the cloned virtual disk. By default, a merged clone image is created. This subcommand has the option listed below.
Comment that can be attached to cloned virtual disk.
vdiskadm move vdname dir
Moves a specified virtual disk into the specified directory. The virtual disk maintains the same name. The new directory must exist. This subcommand has no options.
vdiskadm rename vdname|snapshot vdname|snapshot
Renames a virtual disk or snapshot. This subcommand has no options.
vdiskadm list [-fp]vdname
Lists a specified virtual disk and its snapshots. This subcommand has the options listed below.
Gives a list of all files associated with the virtual disk. This list includes the store file and the extents.
Lists the files in an easily parsable format, prefixing the files with a label of file:, snapshot:, or store.
vdiskadm verify vdname
Returns an error if the virtual disk cannot be recognized or opened by Solaris xVM. This subcommand has no options.
vdiskadm prop-get [-l] -p property vdname
Returns the value of the property for the specified virtual disk. A property value of all displays all native and user-defined properties for the virtual disk. This subcommand has the options listed below.
Gives additional property information, such as the writeable status of property.
Specifies the property being queried and displays the value of the property. For the property all, the name of the property, a colon, and a space are displayed before the value of the property.
vdiskadm prop-set -p property=value vdname
Sets the value of the specified property for the specified virtual disk. property can be a native or a user-defined property, but must be writable. Can be used to change the value of a property added with the prop-add subcommand. This subcommand has the option listed below.
Specifies the property being set.
vdiskadm -p property=value vdname
Adds the user-defined property with the specified value to the specified virtual disk. Returns an error if the property already exists. The user-defined property name must contain a colon character (:). This subcommand has the option listed below.
Specifies the property being added.
vdiskadm prop-del -p property vdname
Deletes a user–defined property from the specified virtual disk. This subcommand has the option listed below.
Specifies the property being deleted.
vdiskadm import [-fnpqm] [-x type] -d file|zvol|dsk \ [-t type[:opt]] vdname
Creates a new virtual disk using data from a file or block device. The file may be in vdi, vhd, vmdk, or raw format. A block device is always assumed to be in raw format. This subcommand has the following options.
Returns a list of files that will be used in the import process.
Show output from import without actually running the import.
Displays files in an easily parsable format.
Run in quiet mode giving no output.
Move the imported file to virtual disk without copying the data.
Specifies the type of virtual disk data being imported. If vdiskadm is unable to detect the imported file type, -x must be specified.
File or block device containing data to be imported.
Specifies the type of virtual disk to be created on import. The default type is vmdk. For vmdk, vdi, and vhd types the default opt is sparse. For type raw the default opt is fixed.
vdiskadm export -x type[:opt] -d file|zvol|dsk vdname
Exports data from a virtual disk to a file or block device. This subcommand has the following options.
Specifies the type of virtual disk data being exported.
File or block device receiving data being exported.
vdiskadm convert [-t type[:opt]] vdname
Converts a virtual disk into a different type virtual disk. This subcommand has the following option.
Specifies the type of virtual disk to be created upon conversion. The default type is vmdk. For vmdk, vdi, and vhd types the default opt is sparse. For type raw the default opt is fixed.
vdiskadm translate [-i type[:opt]] -I input_file \ -x type[:opt] -d output_file
Translate data from one virtual disk data type to another without creating a virtual disk. This subcommand has the following options.
Specifies the input type of virtual disk data being translated. If vdiskadm is unable to detect the input file type, -i must be specified.
File or block device containing data being translated.
Specifies the output type of virtual disk data being translated. For vmdk, vdi, and vhd types the default opt is sparse. For type raw the default opt is fixed.
File or block device receiving data being translated. output_file must not exist. The file will be created during translation.
vdiskadm help [command]
Displays a general or command-specific help message. This subcommand has only the command name optional argument.
Example 1 Creating a vmdk Sparse File
The following command creates a virtual disk named disk1 of size 8 GB in the directory /guests/disks.
# vdiskadm create -s 8g -t vmdk:sparse /guests/disks/disk1
Example 2 Creating a Snapshot
The following command creates a snapshot of the virtual disk located at /guests/disks/disk1. The snapshot is named install.
# vdiskadm snapshot /guests/disks/disk1@install
Example 3 Creating and Destroying Snapshots
The following commands create two snapshots, named install and bfu, of the virtual disk located at /guests/disks/disk1. The third command destroys the newly created snapshot install.
# vdiskadm snapshot /guests/disks/disk1@install # vdiskadm snapshot /guests/disks/disk1@bfu # vdiskadm destroy /guests/disks/disk1@install
Example 4 Rolling Back a Virtual Disk
The following command reverts the contents of the virtual disk to the snapshot named install, deleting all intermediate snapshots.
# vdiskadm rollback -r /guests/disks/disk1@install
Example 5 Listing a Virtual Disk and Snapshots
The following command lists all of the images associated with the virtual disk /guests/disks/disk1.
# vdiskadm list /guests/disks/disk1 disk1@install disk1@bfu disk1
Example 6 Creating a Clone
The following command creates a new virtual disk that is a coalesced copy of the virtual disk /guests/disks/disk1. The clone is created in the same format (that is, vmdk:sparse) as the original virtual disk.
# vdiskadm clone /guests/disks/disk1 /guests/clone/clone_disk1
Example 7 Adding a User-defined Property
The following command adds a user-defined property to the virtual disk and assigns it the specified value. This property name was chosen to represent the source and requirements of this virtual disk data using the required colon to delineate the fields.
# vdiskadm prop-add -p com.sun:required-nic=2 /guests/disks/disk1
Example 8 Importing Existing vmdk Format File
The following command takes an existing vmdk format file and imports it to a virtual disk.
# vdiskadm import -d /downloads/appliance.vmdk /guests/import/disk1
Example 9 Importing vmdk File and Converting to vhd
The following command takes an existing vmdk format file and, upon import, converts it to a vhd-type virtual disk.
# vdiskadm import -d /downloads/appliance.vmdk -t vhd \ /guests/import/disk1
Example 10 Importing Data from zvol
The following command imports virtual disk data from a zvol and, upon import, converts it to a vmdk:fixed type virtual disk.
# vdiskadm import -d /dev/zvol/dsk/pool1/disk1 -t vmdk:fixed \ /guests/import/disk1
Example 11 Exporting Data to Block Device
The following command takes an existing virtual disk and, upon export, converts it to a disk slice, of raw type.
# vdiskadm export -d /dev/dsk/c0t1d0s3 -x raw /guests/disks/disk1
Example 12 Converting Virtual Disk Type
The following command takes an existing virtual disk and converts it (in place) to a different format type.
# vdiskadm convert -t vdi:fixed /guests/disks/disk1
Example 13 Translating Data from One Type to Another
The following command translates data from a virtual disk format file to raw data written to a zvol without creating a virtual disk.
# vdiskadm translate -I /downloads/appliance.vmdk -x raw \ -d /dev/zvol/dsk/pool1/disk1
See attributes(5) for descriptions of the following attributes:
|
virsh(1M), virt-install(1M), attributes(5), xVM(5)