Remove-SCVirtualMachine
Remove um objeto de máquina virtual do VMM.
Sintaxe
Default (Padrão)
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 ela está implantada ou do servidor de biblioteca no qual ela está armazenada.
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 máquina virtual em si.
Esse cmdlet retorna o objeto em caso de êxito 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, em seguida, armazena o objeto de máquina virtual na variável $VM.
O segundo comando remove o objeto armazenado no $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 inclua a cadeia de caracteres VM0 e, em seguida, 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, em seguida, 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 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 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 no $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.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | cf |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Force
Indica que esse cmdlet exclui apenas a máquina virtual do banco de dados do VMM. Ele não exclui a máquina virtual em si.
Observação
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.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-JobVariable
Especifica uma variável na qual o progresso do trabalho é rastreado e armazenado.
Propriedades do parâmetro
| Tipo: | String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-OnBehalfOfUser
Especifica um nome de usuário. Esse cmdlet opera em nome do usuário especificado por esse parâmetro.
Propriedades do parâmetro
| Tipo: | String |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | 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.
Propriedades do parâmetro
| Tipo: | UserRole |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | 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.
Propriedades do parâmetro
| Tipo: | Guid |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-RunAsynchronously
Indica que o trabalho é executado de forma assíncrona para que o controle retorne ao shell de comando imediatamente.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | 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 nenhum arquivo diretamente.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-VM
Especifica um objeto de máquina virtual.
Propriedades do parâmetro
| Tipo: | VM |
| Valor padrão: | None |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
(All)
| Cargo: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
| Aliases: | wi |
Conjuntos de parâmetros
(All)
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Observações
Esse cmdlet requer um objeto de máquina virtual do VMM, que pode ser recuperado usando o cmdlet Get-SCVirtualMachine .