Remove-SCVirtualMachine
Удаляет объект виртуальной машины из VMM.
Синтаксис
Remove-SCVirtualMachine
[-VM] <VM>
[-SkipFileRemoval]
[-Force]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-WhatIf]
[-Confirm]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Описание
Командлет Remove-SCVirtualMachine удаляет объект виртуальной машины, развернутый на узле или хранящийся на сервере библиотеки Virtual Machine Manager (VMM).
Этот командлет удаляет запись виртуальной машины из базы данных VMM, удаляет все файлы, связанные с виртуальной машиной, и удаляет виртуальную машину с узла, на котором он развернут, или с сервера библиотеки, на котором он хранится.
Если папка на узле была создана для этой виртуальной машины VMM, а не Hyper-V или VMware, а если эта папка не содержит других виртуальных машин или других данных, вы можете использовать файловую систему для удаления папки после удаления виртуальной машины.
Если указать параметр Force , этот командлет удаляет виртуальную машину только из базы данных VMM. Она не удаляет саму виртуальную машину.
Этот командлет возвращает объект при успешном выполнении, имеющий значение $True для свойства MarkedForDeletion . В случае сбоя командлет возвращает сообщение об ошибке.
Примеры
Пример 1. Удаление определенной виртуальной машины, развернутой на узле
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
Первая команда получает объект виртуальной машины с именем VM01, развернутый на vmHost01, а затем сохраняет объект виртуальной машины в переменной $VM.
Вторая команда удаляет объект, хранящийся в $VM, и удаляет соответствующие файлы виртуальной машины из файловой системы на узле.
Пример 2. Удаление всех виртуальных машин с именами, включающими определенную строку
PS C:\> $VMs = @(Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -Match "VM0" } )
PS C:\> $VMs | Remove-SCVirtualMachine
Первая команда получает все объекты виртуальных машин, развернутые на любом узле, имя которого включает строку VM0, а затем сохраняет эти объекты виртуальных машин в массиве с именем $VMs.
Вторая команда удаляет каждый объект виртуальной машины в массиве $VMs и удаляет соответствующие файлы виртуальных машин из файловой системы на каждом узле.
Пример 3. Удаление определенной виртуальной машины, хранящейся на сервере библиотеки 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
Первая команда получает объект, представляющий виртуальную машину с именем VM03, а затем сохраняет объект виртуальной машины в $VM. В этом примере существует только одна виртуальная машина с именем VM03.
Вторая команда удаляет объект, представляющий VM03 из библиотеки, и удаляет соответствующие файлы виртуальной машины из файловой системы на сервере библиотеки.
Пример 4. Удаление нескольких сохраненных виртуальных машин из библиотеки 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
Первая команда получает все объекты виртуальных машин, имена которых включают строку VM0 и хранимые в LibraryServer01. Затем команда сохраняет объекты виртуальной машины в массиве с именем $VMs.
Вторая команда передает каждый объект виртуальной машины, хранящийся в $VMs, текущему командлету, который удаляет каждый объект из библиотеки и удаляет соответствующие файлы виртуальной машины из файловой системы на сервере библиотеки. Параметр Confirm предлагает подтвердить удаление каждой из этих виртуальных машин.
Параметры
-Confirm
Запрос подтверждения перед выполнением командлета.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Указывает, что этот командлет удаляет виртуальную машину только из базы данных VMM. Она не удаляет саму виртуальную машину.
Примечание
Для виртуальной машины, развернутой с помощью шаблонов служб или VMRole, этот параметр игнорируется, а фактическая виртуальная машина также удаляется.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-JobVariable
Указывает переменную, в которой выполняется выполнение задания, отслеживается и сохраняется.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUser
Указывает имя пользователя. Этот командлет работает от имени пользователя, указанного этим параметром.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OnBehalfOfUserRole
Указывает роль пользователя. Чтобы получить роль пользователя, используйте командлет Get-SCUserRole . Этот командлет работает от имени роли пользователя, указанной этим параметром.
Type: | UserRole |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PROTipID
Указывает идентификатор подсказки по оптимизации производительности и ресурсов (подсказка PRO), активировав это действие. Этот параметр позволяет выполнять аудит советов PRO.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RunAsynchronously
Указывает, что задание выполняется асинхронно, чтобы элемент управления немедленно возвращал командную оболочку.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipFileRemoval
Указывает, что этот командлет не удаляет файлы, связанные с виртуальной машиной, напрямую. Если этот параметр указан, попытка удалить файлы напрямую не выполняется.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VM
Указывает объект виртуальной машины.
Type: | VM |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Показывает, что произойдет при запуске командлета. Командлет не выполняется.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Примечания
Для этого командлета требуется объект виртуальной машины VMM, который можно получить с помощью командлета Get-SCVirtualMachine .