跳过导航链接 | |
退出打印视图 | |
![]() |
手册页第 1M 部分:系统管理命令 Oracle Solaris 11 Information Library (简体中文) |
- 创建和管理虚拟磁盘
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]
vdiskadm 命令用于管理 dom0 中的虚拟磁盘。在上述用法概要格式中,vdname 是虚拟磁盘的路径名;其最大长度为 MAXPATHLEN(1024 字节)。
vdiskadm 是作为一组子命令实现的,其中许多子命令具有自己的选项和操作数。下文中的“子命令”部分介绍了这些子命令。
下面的各个小节介绍了与虚拟磁盘相关的概念。
快照是虚拟磁盘的只读副本。快照可以极快地创建,并且最初只占用一小部分空间。随着活动虚拟磁盘内数据的变化,快照将使用比与活动虚拟磁盘共享的数据更多的数据。
克隆是虚拟磁盘的可写入副本。缺省类型的克隆是原始虚拟磁盘的合并(接合)副本。例如,当虚拟磁盘包含数个快照时,就会出现合并克隆;后续克隆操作将生成不包含快照的新虚拟磁盘。克隆与原始虚拟磁盘属于相同的类型(即,vmdk:fixed)。创建合并克隆后,不存在返回至原始虚拟磁盘或其任何快照的链接。因为没有链接,这使得合并克隆可以移动到另一台物理计算机。
在指定数字属性的值时可以使用适合人阅读的后缀(如 k、KB、M、Gb 等等,包括表示 ZB 的 Z)。下面都是有效(且等效)的指定:
1536M 1.5g 1.50GB
下面是受支持的虚拟磁盘类型和选项:
vmdk:fixed
vmdk:sparse
vdi:fixed
vdi:sparse
vhd:fixed
vhd:sparse
raw:fixed
其中,vmdk 是本机 VMware 格式,vdi 是本机 VirtualBox 格式,vhd 是本机 Microsoft 格式,raw 描述的是看起来像原始磁盘的文件。raw 磁盘始终是 fixed 格式,因此可以显式设置或隐式推断该选项。
如果未指定类型,则缺省值为 vmdk。 如果未指定选项,则对于类型 raw,缺省值为 fixed,对于类型 vmdk、vdi 和 vhd,缺省值为 sparse。
属性分为两种类型:本机属性和用户自定义属性。本机属性用于导出内部统计信息或控制 vdiskadm 行为。此外,本机属性分为可编辑属性和只读属性。用户自定义属性是不会对 vdiskadm 行为产生影响的任意字符串。您可以使用它们来注释虚拟磁盘,但应使用在您的环境中有意义的方式。用户自定义属性名称必须包含一个冒号 (:) 字符,以与本机属性相区别。
属性仅与虚拟磁盘关联,与各个快照无关。
每个虚拟磁盘都有一组本机属性,用于导出有关虚拟磁盘的统计信息并控制各种行为。
以下是虚拟磁盘的本机属性:
布尔属性,如果虚拟磁盘是 CDROM,则其值为 true。
布尔属性,如果虚拟磁盘是可移除介质,则其值为 true。
布尔属性,如果虚拟磁盘是只读的,则其值为 true。此属性为只读。
数字属性,包含给定虚拟磁盘中的磁盘扇区数。此属性为只读。
字符串属性,为虚拟磁盘的名称。此属性为只读。
数字属性,包含虚拟磁盘的最大大小(以字节为单位)。此属性为只读。
数字属性,包含虚拟磁盘的有效大小(以字节为单位)。有效大小包括数据文件和所有快照的大小。有效大小可以超过最大大小。此属性为只读。
字符串属性,包含虚拟磁盘的创建日期和时间。此属性为只读。
数字属性,以自新纪元以来的秒数(自 1970 年 1 月 1 日 00:00:00 UTC 以来的秒数)描述 creation-time 属性。此属性为只读。
字符串属性,包含上次修改虚拟磁盘的日期和时间。此属性为只读。
数字属性,以自新纪元以来的秒数(自 1970 年 1 月 1 日 00:00:00 UTC 以来的秒数)描述 modification-time 属性。此属性为只读。
字符串属性,其中包含在创建或克隆虚拟磁盘时提供的注释。此属性为只读。
字符串属性,其中包含虚拟磁盘的类型:vmdk、vhd、vdi 或 raw。此属性为只读。
布尔属性,如果虚拟磁盘是 sparse 格式的,则其值为 true。此属性为只读。
字符串属性,其中包含虚拟磁盘所有者的用户名。此属性是可编辑的。
下面的各个小节介绍了 vdiskadm 的各个子命令及其参数。
vdiskadm create -s size [-t type[:opt],[opt]] [-c comment] vdname
在 vdname 指定的位置创建指定大小的新虚拟磁盘。如果 vdname 包含虚拟磁盘的路径,则在创建虚拟磁盘期间将创建基于该路径的目录。此子命令具有下列选项。
指定要创建的虚拟磁盘的类型。缺省类型为 vmdk。 对于 vmdk 和 vdi 类型,缺省选项为 sparse。对于 raw 类型,缺省选项为 fixed。
可以添加到虚拟磁盘的注释。
vdiskadm destroy [-r] vdname|snapshot
销毁指定的虚拟磁盘或快照。缺省情况下,如果指定的虚拟磁盘包含快照,则销毁操作将失败。此子命令具有下列选项。
递归销毁虚拟磁盘,包括与该虚拟磁盘关联的所有快照。
vdiskadm snapshot vdname@snapname
使用指定的 snapname 创建虚拟磁盘的快照。此子命令没有选项。
vdiskadm rollback [-r] snapshot
将虚拟磁盘回滚到以前的某个快照。回滚虚拟磁盘后,自创建快照以来更改过的所有数据都将丢弃,虚拟磁盘将恢复到创建快照时的状态。缺省情况下,该命令无法回滚到除最新快照以外的快照。要进一步回滚,必须通过指定 -r 选项销毁中间的所有快照。此子命令具有下列选项。
递归销毁比指定的快照更新的快照。
vdiskadm [-c comment] vdname|snapshot clone_vdname
创建指定快照或虚拟磁盘的克隆。将使用被克隆的虚拟磁盘的类型、选项以及大小创建克隆。如果 clone_vdname 包含路径,则创建克隆虚拟磁盘期间将创建基于该路径的目录。缺省情况下,将创建合并克隆映像。此子命令具有下列选项。
可以添加到克隆虚拟磁盘的注释。
vdiskadm move vdname dir
将指定的虚拟磁盘移至指定目录。虚拟磁盘保留原来的名称。新目录必须存在。此子命令没有选项。
vdiskadm rename vdname|snapshot vdname|snapshot
重命名虚拟磁盘或快照。此子命令没有选项。
vdiskadm list [-fp]vdname
列出指定的虚拟磁盘及其快照。此子命令具有下列选项。
列出与虚拟磁盘关联的所有文件。该列表包括存储文件和范围。
以易于解析的格式列出文件,在文件前加上标签 file:、snapshot: 或 store。
vdiskadm verify vdname
如果 Solaris 无法识别或打开虚拟磁盘,则会返回错误。此子命令没有选项。
vdiskadm prop-get [-l] -p property vdname
为指定的虚拟磁盘返回属性的值。属性值 all 将为虚拟磁盘显示所有本机属性和用户自定义属性。此子命令具有下列选项。
给出更多属性信息,例如属性的可写入状态。
指定要查询的属性并显示该属性的值。对于属性 all,在属性值之前将显示属性的名称、一个冒号和一个空格。
vdiskadm prop-set -p property=value vdname
为指定的虚拟磁盘设置指定属性的值。property 可以是本机属性或用户自定义属性,但必须是可写的。可用来更改使用 prop-add 子命令添加的属性的值。此子命令具有下列选项。
指定要设置的属性。
vdiskadm -p property=value vdname
将具有指定值的用户自定义属性添加到指定的虚拟磁盘。如果该属性已存在,则会返回错误。用户自定义属性名称必须包含一个冒号字符 (:)。此子命令具有下列选项。
指定要添加的属性。
vdiskadm prop-del -p property vdname
从指定的虚拟磁盘删除用户自定义属性。此子命令具有下列选项。
指定要删除的属性。
vdiskadm import [-fnpqm] [-x type] -d file|zvol|dsk \ [-t type[:opt]] vdname
使用来自文件或块设备的数据新建虚拟磁盘。文件的格式可以是 vdi、vhd、vmdk 或 raw。块设备始终假设为原始格式。此子命令具有以下选项。
返回将在导入进程中使用的文件的列表。
显示来自导入的输出但不实际运行导入。
以易于解析的格式显示文件。
以无任何输出的静默模式运行。
将导入的文件移至虚拟磁盘,不复制数据。
指定要导入的虚拟磁盘数据的类型。如果 vdiskadm 无法检测导入的文件类型,则必须指定 -x。
包含要导入数据的文件或块设备。
指定将在导入时创建的虚拟磁盘的类型。缺省类型为 vmdk。 对于 vmdk、vdi 和 vhd 类型,缺省的 opt 为 sparse。对于 raw 类型,缺省的 opt 为 fixed。
vdiskadm export -x type[:opt] -d file|zvol|dsk vdname
将数据从虚拟磁盘导出到文件或块设备。此子命令具有以下选项。
指定要导出的虚拟磁盘数据的类型。
接收要导出数据的文件或块设备。
vdiskadm convert [-t type[:opt]] vdname
将虚拟磁盘转换为其他类型的虚拟磁盘。此子命令具有以下选项。
指定将在转换时创建的虚拟磁盘的类型。缺省类型为 vmdk。 对于 vmdk、vdi 和 vhd 类型,缺省的 opt 为 sparse。对于 raw 类型,缺省的 opt 为 fixed。
vdiskadm translate [-i type[:opt]] -I input_file \ -x type[:opt] -d output_file
将数据从一种虚拟磁盘数据类型转换为另一种,但不创建虚拟磁盘。此子命令具有以下选项。
指定要转换的虚拟磁盘数据的输入类型。如果 vdiskadm 无法检测输入文件类型,则必须指定 -i。
包含要转换数据的文件或块设备。
指定要转换的虚拟磁盘数据的输出类型。对于 vmdk、vdi 和 vhd 类型,缺省的 opt 为 sparse。对于 raw 类型,缺省的 opt 为 fixed。
接收要转换数据的文件或块设备。output_file 不能已经存在。将在转换期间创建该文件。
vdiskadm help [command]
显示常规的或特定于命令的帮助消息。此子命令只能包含命令名称这一可选参数。
示例 1 创建 vmdk 稀疏文件
以下命令将在目录 /guests/disks 中创建一个大小为 8 GB、名为 disk1 的虚拟磁盘。
# vdiskadm create -s 8g -t vmdk:sparse /guests/disks/disk1
示例 2 创建快照
以下命令将为 /guests/disks/disk1 中的虚拟磁盘创建快照。快照名为 install。
# vdiskadm snapshot /guests/disks/disk1@install
示例 3 创建和销毁快照
以下命令将为 /guests/disks/disk1 中的虚拟磁盘创建两个快照(名为 install 和 bfu)。第三个命令将销毁新创建的快照 install。
# vdiskadm snapshot /guests/disks/disk1@install # vdiskadm snapshot /guests/disks/disk1@bfu # vdiskadm destroy /guests/disks/disk1@install
示例 4 回滚虚拟磁盘
以下命令将虚拟磁盘的内容恢复到名为 install 的快照,删除中间的所有快照。
# vdiskadm rollback -r /guests/disks/disk1@install
示例 5 列出虚拟磁盘和快照
以下命令将列出与虚拟磁盘 /guests/disks/disk1 关联的所有映像。
# vdiskadm list /guests/disks/disk1 disk1@install disk1@bfu disk1
示例 6 创建克隆
以下命令将创建一个新的虚拟磁盘,该虚拟磁盘是虚拟磁盘 /guests/disks/disk1 的接合副本。该克隆是以与原始虚拟磁盘相同的格式(即 vmdk:sparse)创建的。
# vdiskadm clone /guests/disks/disk1 /guests/clone/clone_disk1
示例 7 添加用户自定义属性
以下命令将向虚拟磁盘添加用户自定义属性并为其赋予指定值。可选择此属性来提供此虚拟磁盘数据的来源和要求,使用必需的冒号来分隔字段。
# vdiskadm prop-add -p com.sun:required-nic=2 /guests/disks/disk1
示例 8 导入现有的 vmdk 格式文件
以下命令接受现有的 vmdk 格式文件并将其导入到虚拟磁盘。
# vdiskadm import -d /downloads/appliance.vmdk /guests/import/disk1
示例 9 导入 vmdk 文件并将其转换为 vhd
以下命令接受现有的 vmdk 格式文件,并在导入时将其转换为 vhd 类型的虚拟磁盘。
# vdiskadm import -d /downloads/appliance.vmdk -t vhd \ /guests/import/disk1
示例 10 从 zvol 导入数据
以下命令将从 zvol 导入虚拟磁盘数据,并在导入时将其转换为 vmdk:fixed 类型的虚拟磁盘。
# vdiskadm import -d /dev/zvol/dsk/pool1/disk1 -t vmdk:fixed \ /guests/import/disk1
示例 11 将数据导出到块设备
以下命令接受现有的虚拟磁盘,并在导出时将其转换为 raw 类型的磁盘分片。
# vdiskadm export -d /dev/dsk/c0t1d0s3 -x raw /guests/disks/disk1
示例 12 转换虚拟磁盘类型
以下命令接受现有的虚拟磁盘并将其(就地)转换为其他格式类型。
# vdiskadm convert -t vdi:fixed /guests/disks/disk1
示例 13 将数据从一种类型转换为另一种类型
以下命令可在不创建虚拟磁盘的情况下,将虚拟磁盘格式文件中的数据转换为写入 zvol 的原始数据。
# vdiskadm translate -I /downloads/appliance.vmdk -x raw \ -d /dev/zvol/dsk/pool1/disk1
有关以下属性的说明,请参见 attributes(5):
|