Convert-SCVirtualDiskDrive

Convierte un disco duro virtual de dinámico a fijo, de fijo a dinámico, de VHD a VHDX o convierte un disco de paso a través en un disco duro virtual.

Syntax

Convert-SCVirtualDiskDrive
       [-Fixed]
       [-VirtualDiskDrive] <VirtualDiskDrive>
       [-Path <String>]
       [-FileName <String>]
       [-VHDFormatType <VHDFormatType>]
       [-JobGroup <Guid>]
       [-RunAsynchronously]
       [-PROTipID <Guid>]
       [-JobVariable <String>]
       [<CommonParameters>]
Convert-SCVirtualDiskDrive
       [-Dynamic]
       [-VirtualDiskDrive] <VirtualDiskDrive>
       [-Path <String>]
       [-FileName <String>]
       [-VHDFormatType <VHDFormatType>]
       [-JobGroup <Guid>]
       [-RunAsynchronously]
       [-PROTipID <Guid>]
       [-JobVariable <String>]
       [<CommonParameters>]
Convert-SCVirtualDiskDrive
       [-VHDX]
       [-DeleteSource]
       [-ValidateOnCompletion]
       [-VirtualDiskDrive] <VirtualDiskDrive>
       [-Path <String>]
       [-FileName <String>]
       [-JobGroup <Guid>]
       [-BlockSizeBytes <Int32>]
       [-RunAsynchronously]
       [-PROTipID <Guid>]
       [-JobVariable <String>]
       [<CommonParameters>]

Description

El cmdlet Convert-SCVirtualDiskDrive convierte un disco duro virtual existente conectado a un objeto de unidad de disco virtual de dinámico a fijo o de fijo a dinámico, de VHD a VHDX o convierte un disco de paso a través conectado a un objeto de unidad de disco virtual a un disco duro virtual.

Para convertir el disco duro virtual de un formato al otro, la máquina virtual en la que está configurado el disco duro virtual debe estar en un estado detenido.

Solo puede convertir el formato de disco de un archivo .vhd basado en Windows en una máquina virtual implementada en un host de Hyper-V.

Un archivo .vmdk basado en VMware) en una máquina virtual que se implementa en un host ESX se fija en formato. No se puede convertir a un formato dinámico.

Un archivo .vhd basado en Citrix XenServer en una máquina virtual que se implementa en un host Citrix XenServer se fija en formato. No se puede convertir a un formato dinámico.

Solo puede convertir el formato de disco de un archivo de disco duro virtual basado en Windows de VHD a VHDX en una máquina virtual que se implementa en un host de Hyper-V. Para convertir un disco duro virtual en VHDX, la máquina virtual en la que está configurado el disco duro virtual debe estar en un estado detenido.

Un disco de acceso directo es un disco duro físico del host que puede usar una máquina virtual en lugar de un disco duro virtual. Este cmdlet convierte un disco de paso a través conectado a una unidad de disco virtual de una máquina virtual en un disco duro virtual. La máquina virtual debe estar en un host de Hyper-V y debe estar en un estado detenido.

Ejemplos

Ejemplo 1: Conversión de un disco de paso a través en una máquina virtual en un disco duro virtual

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM $VM
PS C:\> Convert-VirtualDiskDrive $VirtDiskDrive -Fixed -Path "C:\VirtualDiskDrives"

El primer comando obtiene el objeto de máquina virtual denominado VM01 mediante el cmdlet Get-SCVirtualMachine . El comando almacena ese objeto en la variable $VM. En este ejemplo se supone que VM01 está configurado actualmente para usar un disco de paso a través y que la máquina virtual solo tiene un disco de paso a través.

El segundo comando obtiene el objeto de unidad de disco virtual en VM01 y, a continuación, almacena ese objeto en la variable $VirtDiskDrive.

El último comando convierte la unidad de disco de paso a través almacenada en $VirtDiskDrive en un disco duro virtual fijo. El comando mueve el disco duro virtual a la carpeta de destino C:\VirtualDiskDrives.

Ejemplo 2: Convertir uno de varios discos de paso a través en una unidad de disco virtual de una máquina virtual en un disco duro virtual

PS C:\> $VM = Get-SCVirtualMachine -Name "VM02"
PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM $VM
PS C:\> $VirtDiskDrive[2] | Convert-SCVirtualDiskDrive -Dynamic -Path "D:\"

El primer comando obtiene el objeto de máquina virtual denominado VM02 y, a continuación, almacena ese objeto en la variable $VM. En este ejemplo se supone que VM02 tiene tres objetos de unidad de disco virtual y que la primera unidad de disco virtual está enlazada a una unidad de disco duro virtual, mientras que las unidades de disco virtual segunda y tercera están enlazadas a discos de paso a través.

El segundo comando obtiene todos los objetos de unidad de disco virtual en VM02 y, a continuación, almacena esos objetos en la matriz de objetos $VirtDiskDrive.

El último comando convierte el tercer disco de paso a través, que es el tercer miembro de la matriz de $VirtDiskDrive, en un disco duro virtual de expansión dinámica. El comandomueve este nuevo disco duro virtual en la carpeta de destino D:.

Ejemplo 3: Convertir un disco duro virtual dinámico conectado a un objeto de unidad de disco virtual en una máquina virtual a un formato fijo

PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM (Get-SCVirtualMachine -Name "VM03")
PS C:\> Convert-SCVirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive -Fixed

El primer comando obtiene el objeto de unidad de disco virtual que está conectado a la máquina virtual VM03 y, a continuación, almacena ese objeto de unidad de disco virtual en la variable $VirtDiskDrive. En este ejemplo se supone que la máquina virtual tiene solo un objeto de unidad de disco virtual y que el disco duro virtual conectado a la unidad de disco virtual es un disco duro virtual dinámico.

El segundo comando convierte el disco duro virtual almacenado en $VirtDiskDrive en un disco fijo.

Ejemplo 4: Conversión de un VHD dinámico en una máquina virtual a VHDX fijo

PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM (Get-SCVirtualMachine -Name "VM03")
PS C:\> Convert-SCVirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive -VHDX

El primer comando obtiene el objeto de unidad de disco virtual que está asociado a la máquina virtual VM03 y almacena ese objeto en la variable $VirtDiskDrive. En este ejemplo se supone que la máquina virtual tiene solo un objeto de unidad de disco virtual y que el disco duro virtual conectado a la unidad de disco virtual es un disco duro virtual dinámico. En este ejemplo también se supone que la máquina virtual está en un estado detenido.

El segundo comando convierte el disco duro virtual almacenado en $VirtDiskDrive en un disco VHDX.

Ejemplo 5: Convertir un VHD de diferenciación en un VHDX de diferenciación

PS C:\> $VirtDiskDrive = Get-VirtualDiskDrive -VM (Get-SCVirtualMachine -Name "VM04")
PS C:\> Convert-VirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive -VHDX -BlockSizeBytes 1MB -DeleteSource -ValidateOnCompletion

El primer comando obtiene el objeto de unidad de disco virtual que está conectado a la máquina virtual VM04 y, a continuación, almacena ese objeto en la variable $VirtDiskDrive. En este ejemplo se supone que la máquina virtual tiene solo un objeto de unidad de disco virtual y que el disco duro virtual conectado a la unidad de disco virtual es un disco duro virtual dinámico. En este ejemplo también se supone que la máquina virtual está en un estado detenido.

El segundo comando convierte el disco duro virtual de diferenciación almacenado en $VirtDiskDrive en un disco VHDX de diferenciación. Este comando elimina el disco de origen.

Parámetros

-BlockSizeBytes

Especifica el tamaño del bloque, en bytes, para el disco duro virtual.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DeleteSource

Indica que este cmdlet elimina el disco duro virtual de origen después de una conversión correcta.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Dynamic

Especifica que un disco duro virtual se pueda expandir dinámicamente.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-FileName

Especifica el nombre de archivo que se usará al cambiar el nombre de un archivo de disco duro virtual al agregarlo a una máquina virtual.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Fixed

Indica que un disco duro virtual tiene un tamaño fijo. Especifica que un disco duro virtual tiene un tamaño fijo.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-JobGroup

Especifica un identificador para una serie de comandos que se ejecutan como un conjunto justo antes de que se ejecute el mismo identificador de grupo de trabajos.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-JobVariable

Especifica una variable en la que se realiza un seguimiento del progreso del trabajo y se almacena.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Especifica el número de unidad lógica (LUN) para un objeto de unidad de disco virtual o para un objeto de unidad de disco virtual en un bus SCSI.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

Especifica el identificador de la sugerencia de optimización de recursos y rendimiento (sugerencia PRO) que desencadenó esta acción. Este parámetro le permite auditar sugerencias pro.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

Indica que el trabajo se ejecuta de forma asincrónica para que el control vuelva inmediatamente al shell de comandos.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ValidateOnCompletion

Indica que este cmdlet valida el disco duro virtual convertido después de una conversión correcta.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VHDFormatType

Especifica el tipo de formato de disco duro. Los valores válidos son:

  • VHD
  • VMDK
  • VHDX
Type:VHDFormatType
Accepted values:VHD, VMDK, VHDX, VHDS
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VHDX

Indica que un tipo de disco duro virtual es VHDX.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-VirtualDiskDrive

Especifica un objeto de unidad de disco virtual. Puede conectar un disco duro virtual o un disco de paso a través a un objeto de unidad de disco virtual.

Type:VirtualDiskDrive
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

Salidas

VirtualDiskDrive

Este cmdlet devuelve un objeto VirtualDiskDrive .