Remove-SCVirtualHardDisk
Remove-SCVirtualHardDisk
Removes a virtual hard disk object from a virtual machine or template, or from the VMM library.
Syntax
Parameter Set: Default
Remove-SCVirtualHardDisk [-VirtualHardDisk] <VirtualHardDisk> [-Force] [-JobGroup <Guid]> ] [-JobVariable <String> ] [-PROTipID <Guid]> ] [-RunAsynchronously] [-Confirm] [-WhatIf] [ <CommonParameters>]
Detailed Description
The Remove-SCVirtualHardDisk cmdlet removes a virtual hard disk object from a virtual machine or template, or from the VMM library. Remove-SCVirtualHardDisk also deletes the corresponding virtual hard disk file (a Windows-based .vhd file, a Citrix XenServer-based .vhd file, or a VMware-based .vmdk file) from the library server.
If the virtual hard disk is attached to a virtual disk drive on a virtual machine or template, and if you do not use the Force parameter, Virtual Machine Manager (VMM) lists the container that contains the virtual hard disk and prompts you to confirm that you want to remove the virtual hard disk:
-- If you reply Yes, VMM removes the association between the virtual hard disk and the container to which it is attached, and then deletes the virtual hard disk object from VMM.
-- If you reply No, the operation is cancelled.
This cmdlet returns the object upon success, with the property MarkedForDeletion set to TRUE, or returns an error message upon failure.
Parameters
-Force
Forces the operation to complete.
For example:
- Remove-SCSCVMHost -Force
Forces the removal of a host object from the VMM database.
- Stop-SCVirtualMachine -Force
Stops a virtual machine.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-JobGroup<Guid]>
Specifies an identifier for a series of commands that will run as a set just before the final command that includes the same job group identifier runs.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-JobVariable<String>
Specifies that job progress is tracked and stored in the variable named by this parameter.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-PROTipID<Guid]>
Specifies the ID of the PRO tip that triggered this action. This allows for auditing of PRO tips.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-RunAsynchronously
Indicates that the job runs asynchronously so that control returns to the command shell immediately.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-VirtualHardDisk<VirtualHardDisk>
Specifies a virtual hard disk object.
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
-Confirm
Prompts you for confirmation before running the cmdlet.
Required? |
false |
Position? |
named |
Default Value |
false |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Required? |
false |
Position? |
named |
Default Value |
false |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
<CommonParameters>
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
Inputs
The input type is the type of the objects that you can pipe to the cmdlet.
Outputs
The output type is the type of the objects that the cmdlet emits.
Notes
- This cmdlet requires a VMM virtual hard disk object, which can be retrieved by using the Get-SCVirtualHardDisk cmdlet.
Examples
Example 1: Remove a virtual hard disk object from the library
The first command gets the virtual hard disk object named VHD01.vhd stored on LibraryServer01, and then stores the returned object in the $VHD variable.
The second command removes the virtual hard disk object stored in $VHD from the library, and then deletes the corresponding file from the file system on the library server.
PS C:\> $VHD = Get-SCVirtualHardDisk -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -eq "VHD01.vhd" -and $_.LibraryServer.Name -eq "LibraryServer01.Contoso.com" }
PS C:\> Remove-SCVirtualHardDisk -VirtualHardDisk $VHD
Example 2: Remove a virtual hard disk from a virtual machine
The first command connects to VMMServer01.
The second command gets the virtual machine object named VM01, gets all virtual hard disks on VM01 whose name includes the string DataDisk, and then stores these virtual hard disk objects in an array named $VHD.
The third command removes each virtual hard disk object stored in the $VHD array from the virtual machine and deletes each corresponding file from the file system on the library server.
PS C:\> Get-SCVMMServer -ComputerName "VMMServer01.Contoso.com"
PS C:\> $VHD = Get-SCVirtualMachine -Name "VM01" | Get-SCVirtualHardDisk | where { $_.Name -match "DataDisk" }
PS C:\> $VHD | Remove-SCVirtualHardDisk