你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Add-AzVhd

将虚拟硬盘从本地计算机上传到 Azure(托管磁盘或 Blob)。

语法

DefaultParameterSet (默认值)

Add-AzVhd
    [-ResourceGroupName] <String>
    [-Destination] <Uri>
    [-LocalFilePath] <FileInfo>
    [[-NumberOfUploaderThreads] <Int32>]
    [[-BaseImageUriToPatch] <Uri>]
    [-OverWrite]
    [-SkipResizing]
    [-AsJob]
    [-DefaultProfile <IAzureContextContainer>]
    [<CommonParameters>]

DirectUploadToManagedDiskSet

Add-AzVhd
    [-ResourceGroupName] <String>
    [-LocalFilePath] <FileInfo>
    [-Location] <String>
    [[-NumberOfUploaderThreads] <Int32>]
    -DiskName <String>
    [-DiskSku <String>]
    [-DiskZone <String[]>]
    [-DiskHyperVGeneration <String>]
    [-DiskOsType <OperatingSystemTypes>]
    [-DataAccessAuthMode <String>]
    [-AsJob]
    [-DefaultProfile <IAzureContextContainer>]
    [<CommonParameters>]

说明

Add-AzVhd cmdlet 将本地虚拟硬盘上传到托管磁盘或 Blob 存储帐户。

正在上传的虚拟硬盘必须是 .vhd 文件,大小为 N * Mib + 512 字节。 使用 Hyper-V 功能,Add-AzVhd 会将任何 .vhdx 文件转换为 .vhd 文件,并在上传之前调整大小。 若要允许此功能,需要 启用 Hyper-V。 如果使用 Linux 计算机或选择不使用此功能,则需要 手动调整 VHD 文件的大小。 此外,Add-AzVhd 将在上传期间将动态大小的 VHD 文件转换为固定大小。 使用 -Verbose 遵循所有过程。

对于默认参数集(上传到 blob),还支持上传本地 .vhd 文件的修补版本。 上传基本虚拟硬盘后,可以上传使用基础映像作为父映像的不同磁盘。 还支持共享访问签名(SAS)URI。

对于直接上传到托管磁盘参数集,参数:ResourceGroupName、DiskName、Location、DiskSku 和 Zone 将用于创建新磁盘,然后将虚拟硬盘上传到该磁盘。

有关使用 Add-AzVhd 直接上传到托管磁盘 的详细信息。

对于大于 50 GB 的 VHD 文件,建议使用 AzCopy,以便更快地上传。

示例

示例 1:将 VHD 文件添加到 Blob

Add-AzVhd -Destination "http://contosoaccount.blob.core.windows.net/vhdstore/win7baseimage.vhd" -LocalFilePath "C:\vhd\Win7Image.vhd"

此命令将 .vhd 文件添加到存储帐户。

示例 2:将 VHD 文件添加到 Blob 并覆盖目标

Add-AzVhd -Destination "http://contosoaccount.blob.core.windows.net/vhdstore/win7baseimage.vhd" -LocalFilePath "C:\vhd\Win7Image.vhd" -Overwrite

此命令将 .vhd 文件添加到存储帐户。 该命令覆盖现有文件。

示例 3:将 VHD 文件添加到具有指定线程数的 Blob

Add-AzVhd -Destination "http://contosoaccount.blob.core.windows.net/vhdstore/win7baseimage.vhd" -LocalFilePath "C:\vhd\Win7Image.vhd" -NumberOfUploaderThreads 32

此命令将 .vhd 文件添加到存储帐户。 该命令指定要用于上传文件的线程数。

示例 4:将 VHD 文件添加到 Blob 并指定 SAS URI

Add-AzVhd -Destination "http://contosoaccount.blob.core.windows.net/vhdstore/win7baseimage.vhd?st=2013-01 -09T22%3A15%3A49Z&amp;se=2013-01-09T23%3A10%3A49Z&amp;sr=b&amp;sp=w&amp;sig=13T9Ow%2FRJAMmhfO%2FaP3HhKKJ6AY093SmveO SIV4%2FR7w%3D" -LocalFilePath "C:\vhd\win7baseimage.vhd"

此命令将 .vhd 文件添加到存储帐户,并指定 SAS URI。

示例 5:将 VHD 文件直接添加到托管磁盘。

Add-AzVhd -LocalFilePath C:\data.vhd -ResourceGroupName rgname -Location eastus -DiskName newDisk

此命令使用给定的 ResourceGroupName、Location 和 DiskName 创建托管磁盘;并将 VHD 文件上传到其中。

示例 6:将 VHD 文件直接添加到配置较多的磁盘。

Add-AzVhd -LocalFilePath C:\Data.vhdx -ResourceGroupName rgname -Location eastus -DiskName newDisk -Zone 1 -DiskSku Premium_LRS

此命令将尝试先使用 Hyper-V 将 vhdx 文件转换为 vhd 文件。 如果未找到 Hyper-V,它将返回一个错误,要求使用 vhd 文件。 成功转换后,它将创建包含提供参数的托管磁盘,然后上传 vhd 文件。

参数

-AsJob

在后台运行 cmdlet 并返回作业以跟踪进度。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-BaseImageUriToPatch

指定 Azure Blob 存储中基本映像 Blob 的 URI。 可以将 SAS 指定为此参数的值。

参数属性

类型:Uri
默认值:None
支持通配符:False
不显示:False
别名:bs

参数集

DefaultParameterSet
Position:4
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DataAccessAuthMode

导出或上传到磁盘或快照时的其他身份验证要求。 可能的选项包括:“AzureActiveDirectory”和“None”。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

DirectUploadToManagedDiskSet
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

参数属性

类型:IAzureContextContainer
默认值:None
支持通配符:False
不显示:False
别名:AzContext, AzureRmContext, AzureCredential

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Destination

指定 Blob 存储中 Blob 的 URI。 参数支持 SAS URI,尽管修补方案目标不能是 SAS URI。

参数属性

类型:Uri
默认值:None
支持通配符:False
不显示:False
别名:dst

参数集

DefaultParameterSet
Position:1
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DiskHyperVGeneration

虚拟机的虚拟机监控程序生成。 仅适用于 OS 磁盘。 可能的值为:“V1”、“V2”。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False
别名:HyperVGeneration

参数集

DirectUploadToManagedDiskSet
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DiskName

新托管磁盘的名称

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

DirectUploadToManagedDiskSet
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DiskOsType

托管磁盘的作系统类型。 可能的值为:“Windows”、“Linux”。

参数属性

类型:OperatingSystemTypes
默认值:None
接受的值:Windows, Linux
支持通配符:False
不显示:False
别名:OsType

参数集

DirectUploadToManagedDiskSet
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DiskSku

托管磁盘的 SKU。 选项:Standard_LRS、Premium_LRS、StandardSSD_LRS、UltraSSD_LRS

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

DirectUploadToManagedDiskSet
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-DiskZone

磁盘的逻辑区域列表。

参数属性

类型:

String[]

默认值:None
支持通配符:False
不显示:False
别名:区域

参数集

DirectUploadToManagedDiskSet
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-LocalFilePath

指定本地 .vhd 文件的路径。

参数属性

类型:FileInfo
默认值:None
支持通配符:False
不显示:False
别名:lf

参数集

(All)
Position:2
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Location

新托管磁盘的位置

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

DirectUploadToManagedDiskSet
Position:1
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-NumberOfUploaderThreads

指定上传 .vhd 文件时要使用的上传程序线程数。

参数属性

类型:

Nullable<T>[Int32]

默认值:None
支持通配符:False
不显示:False
别名:th

参数集

(All)
Position:3
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-OverWrite

指示此 cmdlet 覆盖指定目标 URI 中的现有 Blob(如果存在)。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:o

参数集

DefaultParameterSet
Position:5
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-ResourceGroupName

指定虚拟机资源组的名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:0
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-SkipResizing

跳过 VHD 文件的大小调整。 希望将大小不对齐(而不是 N * Mib + 512 字节)的 VHD 文件上传到 Blob 的用户可以使用此开关参数。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

DefaultParameterSet
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

String

Uri

FileInfo

Nullable<T>

SwitchParameter

输出

VhdUploadContext