Remove-VMAssignableDevice
Removes information about the assignable devices from a specific virtual machine.
Syntax
VMName (Default)
Remove-VMAssignableDevice
[-VMName] <String[]>
[-CimSession <CimSession[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential[]>]
[-InstancePath <String>]
[-LocationPath <String>]
[-Passthru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Object
Remove-VMAssignableDevice
[-VMAssignableDevice] <VMAssignedDevice[]>
[-Passthru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Remove-VMAssignableDevice
cmdlet removes an assignable device from a specified virtual
machine (VM). This is often used in scenarios where a physical device, such as a GPU or network
adapter, was previously assigned to a VM and needs to be unassigned.
Examples
Example 1
$params = @{
VMName = "MyVM"
InstancePath = "PCIROOT(0)#PCI(0300)#PCI(0000)#PCI(0800)#PCI(0000)#PCI(1000)"
}
Remove-VMAssignableDevice $params
This example removes a specific assignable device, identified by its instance path, from the virtual machine named MyVM.
Example 2
$params = @{
VMName = "MyVM"
}
$vm = Get-VMAssignableDevice @params | Where-Object { $_.ResourcePoolName -eq "GpuChildPool" }
$vm | Remove-VMAssignableDevice
This example removes a specific assignable device, identified by the ResourcePoolName property GpuChildPool, from the virtual machine named MyVM.
Parameters
-CimSession
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.
Parameter properties
Type: | CimSession[] |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
VMName
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-ComputerName
Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS
names, IP addresses, and fully qualified ___domain names are allowed. The default is the local
computer. Use localhost or a dot (.
) to specify the local computer explicitly.
Parameter properties
Type: | String[] |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
VMName
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Parameter properties
Type: | SwitchParameter |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Aliases: | cf |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-Credential
Specifies one or more user accounts that have permission to perform this action. The default is the current user.
Parameter properties
Type: | PSCredential[] |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
VMName
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-InstancePath
Removes the Device Instance path in the host machine.
Parameter properties
Type: | String |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
VMName
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-LocationPath
Specifies the ___location path to the assignable device.
Parameter properties
Type: | String |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
VMName
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-Passthru
Returns an object for each process that the cmdlet started.
Parameter properties
Type: | SwitchParameter |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-VMAssignableDevice
Specifies the assignable device object that you want to remove from the virtual machine. This is
usually an object retrieved from a cmdlet like Get-VMAssignableDevice
.
Parameter properties
Type: | VMAssignedDevice[] |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
Object
Position: | 0 |
Mandatory: | True |
Value from pipeline: | True |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-VMName
Specifies the name of the virtual machine from which you want to remove the assignable device.
Parameter properties
Type: | String[] |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Parameter sets
VMName
Position: | 0 |
Mandatory: | True |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Parameter properties
Type: | SwitchParameter |
Default value: | None |
Supports wildcards: | False |
DontShow: | False |
Aliases: | wi |
Parameter sets
(All)
Position: | Named |
Mandatory: | False |
Value from pipeline: | False |
Value from pipeline by property name: | False |
Value from remaining arguments: | False |
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.