Принудительное выключение зависшей ВМ Hyper-V и процесса vmwp.exe
Симптомы зависания виртуальной машины Hyper-V
Виртуальная машина зависает в статусе Stopping (Остановка), Saving (Сохранение) или перестает отвечать на действия в диспетчере Hyper-V. Кнопка «Выключить» недоступна, а команда Stop-VM -Force завершается бесконечным ожиданием.
| Инструмент | Сообщение / Статус | Причина |
|---|---|---|
| Диспетчер Hyper-V | Статус «Остановка (Stopping) 10%» | ВМ ожидает ответа от заблокированного VHDX-диска на общем томе CSV |
| PowerShell | Stop-VM: The operation cannot be performed while the virtual machine is in its current state | Зависание рабочего процесса виртуальной машины (Virtual Machine Worker Process) |
Пошаговое уничтожение зависшей ВМ без перезагрузки хоста
- Получение уникального идентификатора (GUID) зависшей виртуальной машины: запустите PowerShell от имени администратора на хосте Hyper-V:
$VMName = "Stuck_VM_Name" $VM = Get-VM -Name $VMName $VM.Id.Guid - Поиск конкретного рабочего процесса vmwp.exe по GUID виртуальной машины: каждый инстанс ВМ изолированно обслуживается отдельным процессом
vmwp.exe:$VMGUID = (Get-VM -Name $VMName).Id.Guid $VMProcess = Get-CimInstance Win32_Process -Filter "Name = 'vmwp.exe'" | Where-Object { $_.CommandLine -match $VMGUID } $VMProcess | Select-Object ProcessId, CommandLine - Принудительное уничтожение процесса (Kill): снимите процесс по найденному PID:
Stop-Process -Id $VMProcess.ProcessId -Force - Аварийный перезапуск службы управления виртуальными машинами (VMMS): если статус ВМ не обновился на Off, перезапустите управляющий менеджер Hyper-V (это безопасно для остальных работающих ВМ!):
Restart-Service -Name vmms -Force
Важно: Перезапуск службы vmms не перезагружает работающие рядом гостевые виртуальные машины, а только перезапускает интерфейс управления и службу снимков Hyper-V.
Частые вопросы (FAQ)
Почему процесс vmwp.exe зависает намертво?
В 95% случаев причина в дисковом таймауте: если СХД (SAN/NAS/iSCSI) или том CSV перестал отвечать на операции записи, рабочий процесс ядра ВМ переходит в состояние бесконечного ожидания (D-state) дискового драйвера.
Пострадают ли соседние ВМ, если убить один процесс vmwp.exe?
Нет. Архитектура Hyper-V строго изолирует каждую гостевую машину в собственный независимый процесс vmwp.exe с собственным адресным пространством памяти.
Что делать, если Stop-Process возвращает ошибку 'Access Denied'?
Используйте встроенную системную утилиту taskkill с ключами жесткого снятия: taskkill /F /PID <Номер_PID>.
Может ли зависание произойти из-за создания снапшота?
Да, при сбое слияния динамических дисков AVHDX машина может зависнуть на операции слияния при отключении питания.