Share via


Optimize-VHD

Optimize-VHD

Optimizes the allocation of space used by virtual hard disk files, except for fixed virtual hard disks.

Sintassi

Parameter Set: Default
Optimize-VHD [-Path] <String[]> [-AsJob] [-CimSession <Microsoft.Management.Infrastructure.CimSession[]> ] [-ComputerName <String[]> ] [-Credential <System.Management.Automation.PSCredential[]> ] [-Mode <VhdCompactMode> {Full | Quick | Retrim | Pretrimmed | Prezeroed} ] [-Passthru] [-Confirm] [-WhatIf] [ <CommonParameters>]

Descrizione dettagliata

The Optimize-VHD cmdlet optimizes the allocation of space in or more virtual hard disk files, except for fixed virtual hard disks. The Compact operation is used to optimize the files. This operation reclaims unused blocks as well as rearranges the blocks to be more efficiently packed, which reduces the size of a virtual hard disk file.

To use Optimize-VHD, the virtual hard disk must not be attached or must be attached in read-only mode.

The compact operation can succeed without reducing the file size, if no optimization is possible.

Parametri

-AsJob

Runs the cmdlet as a background job.

Alias

none

Obbligatorio?

false

Posizione?

named

Valore predefinito

none

Accettare l'input della pipeline?

false

Accetta caratteri jolly?

false

-CimSession<Microsoft.Management.Infrastructure.CimSession[]>

Esegue il cmdlet in una sessione remota o in un computer remoto. Immettere un nome di computer o un oggetto di sessione, ad esempio l'output di un cmdlet New-CimSession o Get-CimSession. Il valore predefinito è la sessione corrente sul computer locale.

Alias

none

Obbligatorio?

false

Posizione?

named

Valore predefinito

none

Accettare l'input della pipeline?

false

Accetta caratteri jolly?

false

-ComputerName<String[]>

Specifies one or more Hyper-V hosts on which a virtual machine is to be optimized. NetBIOS names, IP addresses, and fully qualified domain names are allowable. The default is the local computer. Use localhost or a dot (.) to specify the local computer explicitly.

Alias

none

Obbligatorio?

false

Posizione?

named

Valore predefinito

none

Accettare l'input della pipeline?

false

Accetta caratteri jolly?

false

-Credential<System.Management.Automation.PSCredential[]>

Specifies one or more user accounts that have permission to perform this action. The default is the current user.

Alias

none

Obbligatorio?

false

Posizione?

named

Valore predefinito

none

Accettare l'input della pipeline?

false

Accetta caratteri jolly?

false

-Mode<VhdCompactMode>

Specifies the mode in which the virtual hard disk is to be optimized. For a VHD disk, the default mode is Full. For a VHDX disk, the default mode is Quick. Valid modes are as follows:

--Full scans for zero blocks and reclaims unused blocks. (Allowable only if the virtual hard disk is mounted read-only.)

--Pretrimmed performs as Quick mode, but does not require the virtual hard disk to be mounted read-only. The detection of unused space is less effective than Quick mode (in which the virtual hard disk had been mounted read-only) because the scan cannot query information about free space in the NTFS file system within the virtual hard disk. Useful when the VHDX-format file has been used by operating system instances that are at least Windows 8 or Windows Server 2012, or when this cmdlet has already been run on a .vhdx file in Retrim mode.

--Prezeroed performs as Quick mode, but does not require the virtual hard disk to be mounted read-only. The unused space detection will be less effective than if the virtual hard disk had been mounted read-only as the scan will be unable to query information about free space in the NTFS file system within the virtual hard disk. Useful if a tool was run previously to zero all the free space on the virtual disk as this mode of compaction can then reclaim that space for subsequent block allocations. This form of compaction can also be useful in handling virtual hard disk containing file systems other than NTFS.

--Quick reclaims unused blocks, but does not scan for zero blocks. (Allowable only if the virtual hard disk is mounted read-only.)

--Retrim sends down retrims without scanning for zero blocks or reclaiming unused blocks. (Allowable only if the virtual hard disk is mounted read-only.)

Alias

none

Obbligatorio?

false

Posizione?

named

Valore predefinito

none

Accettare l'input della pipeline?

false

Accetta caratteri jolly?

false

-Passthru

Specifies that an object is to be passed through to the pipeline representing the virtual hard disk to be optimized.

Alias

none

Obbligatorio?

false

Posizione?

named

Valore predefinito

none

Accettare l'input della pipeline?

false

Accetta caratteri jolly?

false

-Path<String[]>

Specifies one or more paths to the dynamic or differencing virtual hard disk files to be optimized.

Alias

FullName

Obbligatorio?

true

Posizione?

1

Valore predefinito

none

Accettare l'input della pipeline?

True (ByValue, ByPropertyName)

Accetta caratteri jolly?

false

-Confirm

Richiede una conferma prima dell'esecuzione del cmdlet.

Obbligatorio?

false

Posizione?

named

Valore predefinito

false

Accettare l'input della pipeline?

false

Accetta caratteri jolly?

false

-WhatIf

Mostra che cosa succede se viene eseguito il cmdlet. Il cmdlet non viene eseguito.

Obbligatorio?

false

Posizione?

named

Valore predefinito

false

Accettare l'input della pipeline?

false

Accetta caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per altre informazioni, vedere  about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).

Input

Il tipo di input è il tipo di oggetti che è possibile inviare al cmdlet.

Output

Il tipo di output corrisponde al tipo di oggetti emesso dal cmdlet.

Esempi

Example 1

Runs the compact operation in Full mode. (If the VHDX-format file is not attached as read-only prior to the operation, it will default to Prezeroed mode.)

PS C:\> Optimize-VHD –Path c:\test\dynamic.vhdx –Mode Full

Example 2

Runs the compact operation in Retrim mode. (If the VHDX-format disk is not mounted as read-only prior to the operation, running the cmdlet returns an error.)

PS C:\> Optimize-VHD –Path c:\test\dynamic.vhdx –Mode Retrim

Example 3

Runs the compact operation in Quick mode. (If the VHDX-format file is not attached as read-only prior to the operation, it defaults to Pretrimmed mode.)

PS C:\> Optimize-VHD –Path c:\test\dynamic.vhdx –Mode Quick