Sdílet prostřednictvím


Remove-SCVirtualDiskDrive

Odebere virtuální diskové jednotky z virtuálního počítače nebo ze šablony virtuálního počítače.

Syntax

Remove-SCVirtualDiskDrive
      [-VirtualDiskDrive] <VirtualDiskDrive>
      [-SkipDeleteVHD]
      [-JobGroup <Guid>]
      [-Force]
      [-RunAsynchronously]
      [-PROTipID <Guid>]
      [-JobVariable <String>]
      [-WhatIf]
      [-Confirm]
      [-OnBehalfOfUser <String>]
      [-OnBehalfOfUserRole <UserRole>]
      [<CommonParameters>]

Description

Rutina Remove-SCVirtualDiskDrive odebere objekty virtuální diskové jednotky z virtuálního počítače nebo ze šablony virtuálního počítače v prostředí Nástroje Virtual Machine Manager (VMM).

Příklady

Příklad 1: Odebrání virtuální diskové jednotky z virtuálního počítače

PS C:\> $VM = Get-SCVirtualMachine | Where-Object { $_.VMHost.Name -Eq "VMHost01.Contoso.com" -And $_.Name -Eq "VM01" }
PS C:\> $VirtDiskDrive = @(Get-SCVirtualDiskDrive -VM $VM)
PS C:\> If($VirtDiskDrive.Count -Gt 1){Remove-SCVirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive[1]}

První příkaz získá objekt virtuálního počítače s názvem VM01 nasazený na VMHost01 pomocí rutiny Get-SCVirtualMachine . Příkaz uloží tento objekt do proměnné $VM.

Druhý příkaz získá všechny objekty virtuální diskové jednotky na virtuálním počítači VM01 a pak uloží načtené objekty do $VirtDiskDrive. Pomocí symbolu @ a závorek se ujistěte, že příkaz ukládá výsledky do pole, i když příkaz vrátí jeden objekt nebo $Null hodnotu.

Poslední příkaz vrátí počet virtuálních disků přidružených k virtuálnímu počítači a pokud existuje více než jeden, příkaz odebere druhou virtuální diskovou jednotku určenou [1] z virtuálního počítače.

Příklad 2: Odebrání všech předávacích disků připojených k virtuálnímu počítači

PS C:\> $VM = Get-SCVirtualMachine | Where-Object {$_.Name -Eq "VM02"}
PS C:\> $VirtDiskDrives = @(Get-SCVirtualDiskDrive -VM $VM | Where-Object {$_.IsVHD -Eq $False})
PS C:\> If($VirtDiskDrives.Count -Gt 0){ForEach($VirtDiskDrive in $VirtDiskDrives){Remove-SCVirtualDiskDrive -Force -VirtualDiskDrive $VirtDiskDrive}}

První příkaz získá objekt virtuálního počítače s názvem VM02 a pak tento objekt uloží do proměnné $VM.

Druhý příkaz získá všechny objekty virtuální diskové jednotky připojené k virtuálnímu počítači VM02, které nejsou virtuální pevné disky. Příkaz získá pouze objekty, které představují průchozí disky. Příkaz ukládá předávací diskové objekty do pole objektů $VDDs.

Poslední příkaz používá příkaz If k určení, zda existuje alespoň jedna předávací virtuální disková jednotka. Pokud je výsledek jeden nebo více, příkaz pak pomocí příkazu ForEach odebere každou virtuální diskovou jednotku z pole objektu. Další informace potřebujete, zadejte Get-Help about_If a Get-Help about_Foreach.

Poslední příkaz určuje parametr Force . Proto příkaz odebere každou virtuální diskovou jednotku ze svého virtuálního počítače, i když ostatní objekty VMM závisí na této virtuální diskové jednotce.

Příklad 3: Odebrání virtuálních disků podle názvu

PS C:\> $VM = @(Get-SCVirtualMachine | Where-Object {$_.Name -Match "WebSrvLOB"})
PS C:\> ForEach-Object ($VM in $VMs){$VirtDiskDrives = Get-SCVirtualDiskDrive -VM $VM 
PS C:\> ForEach-Object ($VirtDiskDrive in $VirtDiskDrives){If($VirtDiskDrive.Name -Match "LOBData"){Remove-SCVirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive}}}

První příkaz získá všechny objekty virtuálního počítače, jejichž název odpovídá řetězci WebSrvLOB, a pak tyto objekty uloží do pole $VM.

Následující dva příkazy používají rutinu ForEach-Object k iteraci virtuálních počítačů uložených v $VM k získání všech objektů virtuálních disků z každého virtuálního počítače. Druhý příkaz ukládá objekty virtuální diskové jednotky do pole objektů $VirtDiskDrives.

Třetí příkaz používá druhou smyčku ForEach k výběru všech objektů virtuální diskové jednotky, jejichž název obsahuje řetězec LOBData z pole $VirtDiskDrives a předá tyto objekty aktuální rutině. Tato rutina odebere objekty z nástroje VMM.

Parametry

-Confirm

Před spuštěním rutiny zobrazí výzvu k potvrzení.

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

-Force

Vynutí dokončení operace.

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

-JobGroup

Určuje identifikátor řady příkazů, které běží jako sada těsně před posledním příkazem, který obsahuje stejný identifikátor skupiny úloh.

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

-JobVariable

Určuje proměnnou, ve které se sleduje a ukládá průběh úlohy.

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

-OnBehalfOfUser

Určuje uživatelské jméno. Tato rutina funguje jménem uživatele, který tento parametr určuje.

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

-OnBehalfOfUserRole

Určuje roli uživatele. K získání role uživatele použijte rutinu Get-SCUserRole . Tato rutina funguje jménem role uživatele, kterou tento parametr určuje.

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

-PROTipID

Určuje ID tipu pro optimalizaci výkonu a prostředků (tip PRO), který tuto akci aktivoval. Tento parametr umožňuje auditovat tipy PRO.

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

-RunAsynchronously

Označuje, že úloha se spouští asynchronně, aby se ovládací prvek okamžitě vrátil do příkazového prostředí.

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

-SkipDeleteVHD

Označuje, že tato rutina soubor virtuálního pevného disku neodebere, zatímco odebere virtuální diskovou jednotku.

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

-VirtualDiskDrive

Určuje objekt jednotky virtuálního disku. K objektu virtuální jednotky disku můžete připojit virtuální pevný disk nebo průchozí disk.

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

-WhatIf

Zobrazuje, co by se stalo při spuštění rutiny. Rutina není spuštěna.

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

Poznámky

  • Vyžaduje objekt virtuální diskové jednotky VMM, který lze načíst pomocí rutiny Get-SCVirtualDiskDrive .