Partager via


Remove-SCVirtualMachine

Supprime un objet de machine virtuelle de VMM.

Syntaxe

Default (Par défaut)

Remove-SCVirtualMachine
    [-VM] <VM>
    [-SkipFileRemoval]
    [-Force]
    [-RunAsynchronously]
    [-PROTipID <Guid>]
    [-JobVariable <String>]
    [-WhatIf]
    [-Confirm]
    [-OnBehalfOfUser <String>]
    [-OnBehalfOfUserRole <UserRole>]
    [<CommonParameters>]

Description

L’applet de commande Remove-SCVirtualMachine supprime un objet de machine virtuelle déployé sur un hôte ou stocké sur un serveur de bibliothèque Virtual Machine Manager (VMM).

Cette applet de commande supprime l’enregistrement de la machine virtuelle de la base de données VMM, supprime tous les fichiers associés à la machine virtuelle et supprime la machine virtuelle de l’hôte sur lequel elle est déployée ou du serveur de bibliothèque sur lequel elle est stockée.

Si un dossier sur un hôte a été créé pour cette machine virtuelle par VMM, au lieu de Hyper-V ou VMware, et si ce dossier ne contient pas d’autres machines virtuelles ou d’autres données, vous pouvez utiliser le système de fichiers pour supprimer le dossier après avoir supprimé la machine virtuelle.

Si vous spécifiez le paramètre Force , cette applet de commande supprime uniquement la machine virtuelle de la base de données VMM. Il ne supprime pas la machine virtuelle elle-même.

En cas de réussite, cette applet de commande renvoie l’objet dont la valeur est $True pour la propriété MarkedForDeletion . En cas d’échec, l’applet de commande renvoie un message d’erreur.

Exemples

Exemple 1 : Supprimer une machine virtuelle spécifique déployée sur un hôte

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

La première commande récupère l’objet de machine virtuelle nommé VM01 déployé sur VMHost01, puis stocke l’objet de machine virtuelle dans la variable $VM.

La deuxième commande supprime l’objet stocké dans $VM et supprime les fichiers de machine virtuelle correspondants du système de fichiers sur son hôte.

Exemple 2 : Supprimer toutes les machines virtuelles dont le nom inclut une chaîne spécifique

PS C:\> $VMs = @(Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -Match "VM0" } )
PS C:\> $VMs | Remove-SCVirtualMachine

La première commande récupère tous les objets de machine virtuelle déployés sur n’importe quel hôte dont le nom inclut la chaîne VM0, puis stocke ces objets de machine virtuelle dans le tableau nommé $VMs.

La deuxième commande supprime chaque objet de machine virtuelle dans le tableau de $VMs et supprime les fichiers de machine virtuelle correspondants du système de fichiers sur chaque hôte.

Exemple 3 : Supprimer une machine virtuelle spécifique stockée sur un serveur de bibliothèque 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

La première commande récupère l’objet qui représente la machine virtuelle nommée VM03, puis stocke l’objet de la machine virtuelle dans $VM. Dans cet exemple, il n’existe qu’une seule machine virtuelle nommée VM03.

La deuxième commande supprime l’objet qui représente VM03 de la bibliothèque et supprime les fichiers de machine virtuelle correspondants du système de fichiers sur le serveur de bibliothèque.

Exemple 4 : Supprimer plusieurs machines virtuelles stockées de la bibliothèque 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

La première commande récupère tous les objets de machine virtuelle dont le nom inclut la chaîne VM0 et qui sont stockés sur LibraryServer01. La commande stocke ensuite les objets de la machine virtuelle dans le tableau nommé $VMs.

La deuxième commande transmet chaque objet de machine virtuelle stocké dans $VMs à l’applet de commande actuelle, qui supprime chaque objet de la bibliothèque et supprime les fichiers de machine virtuelle correspondants du système de fichiers sur le serveur de bibliothèques. Le paramètre Confirm vous invite à confirmer si vous souhaitez supprimer chacune de ces machines virtuelles.

Paramètres

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False
Alias:cf

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Force

Indique que cette applet de commande supprime uniquement la machine virtuelle de la base de données VMM. Il ne supprime pas la machine virtuelle elle-même.

Remarque

Pour les machines virtuelles déployées à l’aide de modèles de service ou de VMRole, ce paramètre est ignoré et la machine virtuelle réelle est également supprimée.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-JobVariable

Spécifie une variable dans laquelle la progression du travail est suivie et stockée.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-OnBehalfOfUser

Spécifie un nom d’utilisateur. Cette applet de commande fonctionne pour le compte de l’utilisateur spécifié par ce paramètre.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-OnBehalfOfUserRole

Spécifie un rôle d’utilisateur. Pour obtenir un rôle d’utilisateur, utilisez l’applet de commande Get-SCUserRole . Cette applet de commande fonctionne pour le compte du rôle d’utilisateur spécifié par ce paramètre.

Propriétés du paramètre

Type:UserRole
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-PROTipID

Spécifie l’ID de l’info-bulle d’optimisation des performances et des ressources (CONSEIL PRO) qui a déclenché cette action. Ce paramètre vous permet d’auditer les conseils pro.

Propriétés du paramètre

Type:Guid
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-RunAsynchronously

Indique que le travail s’exécute de façon asynchrone afin que le contrôle retourne immédiatement à l’interpréteur de commandes.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-SkipFileRemoval

Indique que cette applet de commande ne supprime pas directement les fichiers liés à la machine virtuelle. Si vous spécifiez ce paramètre, aucune tentative de suppression directe des fichiers n’est effectuée.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-VM

Spécifie un objet de machine virtuelle.

Propriétés du paramètre

Type:VM
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:0
Obligatoire:True
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False
Alias:Wi

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Notes

Cette applet de commande nécessite un objet de machine virtuelle VMM, qui peut être récupéré à l’aide de l’applet de commande Get-SCVirtualMachine .