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 .