Remove-SCVirtualMachine
Remove um objeto de máquina virtual do VMM.
Syntax
Remove-SCVirtualMachine
[-VM] <VM>
[-SkipFileRemoval]
[-Force]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-WhatIf]
[-Confirm]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Description
O cmdlet Remove-SCVirtualMachine remove um objeto de máquina virtual implantado em um host ou armazenado em um servidor de biblioteca do VMM (Virtual Machine Manager).
Esse cmdlet exclui o registro da máquina virtual do banco de dados do VMM, exclui todos os arquivos associados à máquina virtual e remove a máquina virtual do host no qual ele é implantado ou do servidor de biblioteca no qual ele é armazenado.
Se uma pasta em um host foi criada para essa máquina virtual pelo VMM, em vez de pelo Hyper-V ou VMware, e se essa pasta não contiver outras máquinas virtuais ou outros dados, você poderá usar o sistema de arquivos para excluir a pasta depois de remover a máquina virtual.
Se você especificar o parâmetro Force , esse cmdlet excluirá apenas a máquina virtual do banco de dados do VMM. Ele não exclui a própria máquina virtual.
Esse cmdlet retorna o objeto após o sucesso que tem um valor de $True para a propriedade MarkedForDeletion . Se falhar, o cmdlet retornará uma mensagem de erro.
Exemplos
Exemplo 1: Remover uma máquina virtual específica implantada em um host
PS C:\> $VM = Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.VMHost.Name -eq "VMHost01.Contoso.com" -and $_.Name -eq "VM01" }
PS C:\> Remove-SCVirtualMachine -VM $VM
O primeiro comando obtém o objeto de máquina virtual chamado VM01 implantado no VMHost01 e armazena o objeto de máquina virtual na variável $VM.
O segundo comando remove o objeto armazenado em $VM e exclui os arquivos de máquina virtual correspondentes do sistema de arquivos em seu host.
Exemplo 2: remover todas as máquinas virtuais com nomes que incluem uma cadeia de caracteres específica
PS C:\> $VMs = @(Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -Match "VM0" } )
PS C:\> $VMs | Remove-SCVirtualMachine
O primeiro comando obtém todos os objetos de máquina virtual implantados em qualquer host cujo nome inclui a VM0 de cadeia de caracteres e armazena esses objetos de máquina virtual na matriz chamada $VMs.
O segundo comando remove cada objeto de máquina virtual na matriz $VMs e exclui os arquivos de máquina virtual correspondentes do sistema de arquivos em cada host.
Exemplo 3: remover uma máquina virtual específica armazenada em um servidor de biblioteca do VMM
PS C:\> $VM = Get-SCVirtualMachine -VMMServer "VMMServer1.Contoso.com" | where { $_.LibraryServer.Name -eq "LibraryServer01.Contoso.com" -and $_.Name -eq "VM02" }
PS C:\> Remove-SCVirtualMachine -VM $VM
O primeiro comando obtém o objeto que representa a máquina virtual chamada VM03 e armazena o objeto de máquina virtual em $VM. Neste exemplo, existe apenas uma máquina virtual chamada VM03.
O segundo comando remove o objeto que representa a VM03 da biblioteca e exclui os arquivos de máquina virtual correspondentes do sistema de arquivos no servidor de biblioteca.
Exemplo 4: remover várias máquinas virtuais armazenadas da biblioteca do VMM
PS C:\> $VMs = Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.LibraryServer.Name -eq "LibraryServer01.Contoso.com" -and $_.Name -match "VM0" }
PS C:\> $VMs | Remove-SCVirtualMachine -Confirm
O primeiro comando obtém todos os objetos de máquina virtual cujos nomes incluem a VM0 de cadeia de caracteres e que são armazenados em LibraryServer01. Em seguida, o comando armazena os objetos da máquina virtual na matriz chamada $VMs.
O segundo comando passa cada objeto de máquina virtual armazenado em $VMs para o cmdlet atual, que remove cada objeto da biblioteca e exclui os arquivos de máquina virtual correspondentes do sistema de arquivos no servidor de biblioteca. O parâmetro Confirm solicita que você confirme se deseja excluir cada uma dessas máquinas virtuais.
Parâmetros
-Confirm
Solicita sua confirmação antes de executar o cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Indica que esse cmdlet exclui apenas a máquina virtual do banco de dados do VMM. Ele não exclui a própria máquina virtual.
Observação
Para máquina virtual implantada usando modelos de serviço ou VMRole, esse parâmetro é ignorado e a máquina virtual real também é excluída.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-JobVariable
Especifica uma variável na qual o progresso do trabalho é rastreado e armazenado.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUser
Especifica um nome de usuário. Esse cmdlet opera em nome do usuário especificado por esse parâmetro.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUserRole
Especifica uma função de usuário. Para obter uma função de usuário, use o cmdlet Get-SCUserRole . Esse cmdlet opera em nome da função de usuário especificada por esse parâmetro.
Type: | UserRole |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PROTipID
Especifica a ID da dica de Desempenho e Otimização de Recursos (dica PRO) que disparou essa ação. Esse parâmetro permite que você audite dicas pro.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RunAsynchronously
Indica que o trabalho é executado de forma assíncrona para que o controle retorne imediatamente ao shell de comando.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipFileRemoval
Indica que esse cmdlet não remove arquivos relacionados à máquina virtual diretamente. Se você especificar esse parâmetro, nenhuma tentativa será feita para excluir arquivos diretamente.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VM
Especifica um objeto de máquina virtual.
Type: | VM |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Observações
Esse cmdlet requer um objeto de máquina virtual do VMM, que pode ser recuperado usando o cmdlet Get-SCVirtualMachine .