Condividi tramite


Convert-SCVirtualDiskDrive

Converte un disco rigido virtuale da dinamico a fisso, da fisso a dinamico, da VHD a VHDX o converte un disco pass-through in un disco rigido virtuale.

Sintassi

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>]

Descrizione

Il cmdlet converte Convert-SCVirtualDiskDrive converte un disco rigido virtuale esistente collegato a un oggetto unità disco virtuale da dinamico a fisso o da fisso a dinamico, da VHD a VHDX o converte un disco pass-through collegato a un oggetto unità disco virtuale in un disco rigido virtuale.

Per convertire il disco rigido virtuale da un formato all'altro, la macchina virtuale in cui è configurato il disco rigido virtuale deve essere in stato arrestato.

È possibile convertire solo il formato disco di un file VHD basato su Windows in una macchina virtuale distribuita in un host Hyper-V.

Un file vmdk basato su VMware in una macchina virtuale distribuita in un host ESX è fisso in formato. Non è possibile convertirlo in un formato dinamico.

Un file VHD basato su Citrix XenServer in una macchina virtuale distribuita in un host Citrix XenServer è fisso in formato. Non è possibile convertirlo in un formato dinamico.

È possibile convertire solo il formato del disco di un file di disco rigido virtuale basato su Windows da disco rigido virtuale a VHDX in una macchina virtuale distribuita in un host Hyper-V. Per convertire un disco rigido virtuale in VHDX, la macchina virtuale in cui è configurato il disco rigido virtuale deve trovarsi in uno stato arrestato.

Un disco pass-through è un disco rigido fisico nell'host che una macchina virtuale può usare invece di usare un disco rigido virtuale. Questo cmdlet converte un disco pass-through collegato a un'unità disco virtuale in una macchina virtuale in un disco rigido virtuale. La macchina virtuale deve trovarsi in un host Hyper-V e deve trovarsi in uno stato arrestato.

Esempio

Esempio 1: Convertire un disco pass-through in una macchina virtuale in un disco rigido virtuale

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

Il primo comando ottiene l'oggetto macchina virtuale denominato VM01 usando il cmdlet get-SCVirtualMachine . Il comando archivia l'oggetto nella variabile $VM. In questo esempio si presuppone che VM01 sia attualmente configurato per l'uso di un disco pass-through e che la macchina virtuale abbia un solo disco pass-through.

Il secondo comando ottiene l'oggetto unità disco virtuale in VM01 e quindi archivia tale oggetto nella variabile $VirtDiskDrive.

L'ultimo comando converte l'unità disco pass-through archiviata in $VirtDiskDrive in un disco rigido virtuale fisso. Il comando sposta il disco rigido virtuale nella cartella di destinazione C:\VirtualDiskDrives.

Esempio 2: Convertire uno dei diversi dischi pass-through in un'unità disco virtuale in una macchina virtuale in un disco rigido virtuale

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

Il primo comando ottiene l'oggetto macchina virtuale denominato VM02 e quindi archivia tale oggetto nella variabile $VM. In questo esempio si presuppone che VM02 abbia tre oggetti unità disco virtuale e che la prima unità disco virtuale sia associata a un'unità disco rigido virtuale, mentre sia la seconda che la terza unità disco virtuale sono associate a dischi pass-through.

Il secondo comando ottiene tutti gli oggetti unità disco virtuale in VM02 e quindi archivia tali oggetti nella matrice di oggetti $VirtDiskDrive.

L'ultimo comando converte il terzo disco pass-through, che è il terzo membro della matrice di $VirtDiskDrive, in un disco rigido virtuale che si espande in modo dinamico. Il comando sposta questo nuovo disco rigido virtuale nella cartella di destinazione D:.

Esempio 3: Convertire un disco rigido virtuale dinamico collegato a un oggetto unità disco virtuale in una macchina virtuale in un formato fisso

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

Il primo comando ottiene l'oggetto unità disco virtuale collegato alla macchina virtuale VM03 e quindi archivia l'oggetto unità disco virtuale nella variabile $VirtDiskDrive. In questo esempio si presuppone che la macchina virtuale abbia un solo oggetto unità disco virtuale e che il disco rigido virtuale collegato all'unità disco virtuale sia un disco rigido virtuale dinamico.

Il secondo comando converte il disco rigido virtuale archiviato in $VirtDiskDrive in un disco fisso.

Esempio 4: Convertire un disco rigido virtuale dinamico in una macchina virtuale in VHDX fisso

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

Il primo comando ottiene l'oggetto unità disco virtuale collegato alla macchina virtuale VM03 e archivia tale oggetto nella variabile $VirtDiskDrive. In questo esempio si presuppone che la macchina virtuale abbia un solo oggetto unità disco virtuale e che il disco rigido virtuale collegato all'unità disco virtuale sia un disco rigido virtuale dinamico. In questo esempio si presuppone anche che la macchina virtuale sia in stato arrestato.

Il secondo comando converte il disco rigido virtuale archiviato in $VirtDiskDrive in un disco VHDX.

Esempio 5: Convertire un disco rigido virtuale differenze in un VHDX diverso

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

Il primo comando ottiene l'oggetto unità disco virtuale collegato alla macchina virtuale VM04 e quindi archivia tale oggetto nella variabile $VirtDiskDrive. In questo esempio si presuppone che la macchina virtuale abbia un solo oggetto unità disco virtuale e che il disco rigido virtuale collegato all'unità disco virtuale sia un disco rigido virtuale dinamico. In questo esempio si presuppone anche che la macchina virtuale sia in stato arrestato.

Il secondo comando converte il disco rigido virtuale differenze archiviato in $VirtDiskDrive in un disco VHDX diverso. Questo comando elimina il disco di origine.

Parametri

-BlockSizeBytes

Specifica le dimensioni del blocco, in byte, per il disco rigido virtuale.

Tipo:Int32
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DeleteSource

Indica che questo cmdlet elimina il disco rigido virtuale di origine dopo una conversione corretta.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Dynamic

Specifica che un disco rigido virtuale può espandersi in modo dinamico.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-FileName

Specifica il nome file da usare quando si rinomina un file del disco rigido virtuale durante l'aggiunta a una macchina virtuale.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Fixed

Indica che un disco rigido virtuale è di dimensioni fisse. Specifica che un disco rigido virtuale è di dimensioni fisse.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-JobGroup

Specifica un identificatore per una serie di comandi eseguiti come set subito prima dell'esecuzione del comando finale che include lo stesso identificatore del gruppo di processi.

Tipo:Guid
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-JobVariable

Specifica una variabile in cui viene rilevato e archiviato lo stato del processo.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Path

Specifica il numero di unità logica (LUN) per un oggetto unità disco virtuale o per un oggetto unità disco virtuale in un bus SCSI.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PROTipID

Specifica l'ID del suggerimento per le prestazioni e l'ottimizzazione risorse (suggerimento PRO) che ha attivato questa azione. Questo parametro consente di controllare i suggerimenti pro.

Tipo:Guid
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RunAsynchronously

Indica che il processo viene eseguito in modo asincrono in modo che il controllo torni immediatamente alla shell dei comandi.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ValidateOnCompletion

Indica che questo cmdlet convalida il disco rigido virtuale convertito dopo una conversione corretta.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-VHDFormatType

Specifica il tipo di formato del disco rigido. I valori validi sono:

  • VHD
  • VMDK
  • VHDX
Tipo:VHDFormatType
Valori accettati:VHD, VMDK, VHDX, VHDS
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-VHDX

Indica che un tipo di disco rigido virtuale è VHDX.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-VirtualDiskDrive

Specifica un oggetto unità disco virtuale. È possibile collegare un disco rigido virtuale o un disco pass-through a un oggetto unità disco virtuale.

Tipo:VirtualDiskDrive
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

Output

VirtualDiskDrive

Questo cmdlet restituisce un oggetto VirtualDiskDrive .