Remove-SCVirtualMachine
Supprime un objet de machine virtuelle de VMM.
Syntaxe
Remove-SCVirtualMachine
[-VM] <VM>
[-SkipFileRemoval]
[-Force]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-WhatIf]
[-Confirm]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Description
La cmdlet Remove-SCVirtualMachine supprime un objet de machine virtuelle déployé sur un hôte ou stocké sur un serveur de bibliothèque VMM (Virtual Machine Manager).
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 l’ordinateur virtuel de l’hôte sur lequel il est déployé ou du serveur de bibliothèque sur lequel il est stocké.
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 aucune autre machine virtuelle 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 Forcer, cette applet de commande supprime uniquement la machine virtuelle de la base de données VMM. Elle ne supprime pas la machine virtuelle elle-même.
Cette applet de commande retourne l’objet en cas de réussite qui a une valeur de $True pour la propriété MarkedForDeletion. En cas d’échec, l’applet de commande retourne 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 obtient 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 avec des noms qui incluent 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 obtient 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 $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 obtient l’objet qui représente la machine virtuelle nommée VM03, puis stocke l’objet de machine virtuelle dans $VM. Dans cet exemple, une seule machine virtuelle nommée VM03 existe.
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 obtient tous les objets de machine virtuelle dont les noms incluent la chaîne VM0 et qui sont stockés sur LibraryServer01. La commande stocke ensuite les objets de 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, ce 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èque. Le paramètre Confirmer 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.
Type: | SwitchParameter |
Alias: | cf |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Force
Indique que cette applet de commande supprime uniquement la machine virtuelle de la base de données VMM. Elle ne supprime pas la machine virtuelle elle-même.
Note
Pour la machine virtuelle déployée à l’aide de modèles de service ou vmRole, ce paramètre est ignoré et la machine virtuelle réelle est également supprimée.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-JobVariable
Spécifie une variable dans laquelle la progression du travail est suivie et stockée.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-OnBehalfOfUser
Spécifie un nom d’utilisateur. Cette applet de commande fonctionne pour le compte de l’utilisateur que ce paramètre spécifie.
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-OnBehalfOfUserRole
Spécifie un rôle d’utilisateur. Pour obtenir un rôle d’utilisateur, utilisez la cmdlet Get-SCUserRole. Cette applet de commande fonctionne pour le compte du rôle d’utilisateur spécifié par ce paramètre.
Type: | UserRole |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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.
Type: | Guid |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-SkipFileRemoval
Indique que cette applet de commande ne supprime pas directement les fichiers associés aux machines virtuelles. Si vous spécifiez ce paramètre, aucune tentative n’est effectuée pour supprimer directement les fichiers.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-VM
Spécifie un objet de machine virtuelle.
Type: | VM |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-WhatIf
Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.
Type: | SwitchParameter |
Alias: | wi |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
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.