Remove-SCVirtualMachine
Remove um objeto de máquina virtual do VMM.
Sintaxe
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 está armazenado.
Se uma pasta em um host tiver sido criada para essa máquina virtual pelo VMM, em vez de por 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
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 denominado 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 cadeia de caracteres VM0 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 da 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 cadeia de caracteres VM0 e que são armazenados no 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 Confirme solicita que você confirme se deseja excluir cada uma dessas máquinas virtuais.
Parâmetros
-Confirm
Solicita a confirmação antes de executar o cmdlet.
Tipo: | SwitchParameter |
Aliases: | cf |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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.
Nota
Para a 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.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-JobVariable
Especifica uma variável na qual o progresso do trabalho é acompanhado e armazenado.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-OnBehalfOfUser
Especifica um nome de usuário. Esse cmdlet opera em nome do usuário especificado por esse parâmetro.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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.
Tipo: | UserRole |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-PROTipID
Especifica a ID da dica de Otimização de Recursos e Desempenho (dica PRO) que disparou essa ação. Esse parâmetro permite que você audite dicas pro.
Tipo: | Guid |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-RunAsynchronously
Indica que o trabalho é executado de forma assíncrona para que o controle retorne ao shell de comando imediatamente.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-VM
Especifica um objeto de máquina virtual.
Tipo: | VM |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Tipo: | SwitchParameter |
Aliases: | wi |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Observações
Esse cmdlet requer um objeto de máquina virtual do VMM, que pode ser recuperado usando o cmdlet Get-SCVirtualMachine.