Поделиться через


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 .