DevOps

Как исправить VM Hyper‑V, застрявшую в состоянии «Сохранено»

VM Hyper‑V застряла в состоянии «Сохранено» из‑за повреждённых файлов состояния, конфликтов конфигурации или проблем с хранилищем. Узнайте, как диагностировать и исправить.

Почему виртуальная машина Hyper‑V не запускается из сохраненного состояния и как исправить эту проблему? У меня есть VM, которая раньше при перезапуске сервера сохраняла состояние и автоматически подгружалась, но теперь она остаётся в состоянии «Сохранено» и запускается только после удаления сохраненного состояния. Другие машины на том же сервере работают нормально. Что может быть причиной и как решить эту проблему?

Виртуальная машина Hyper‑V не запускается из сохраненного состояния — причины и решения

В большинстве случаев VM остаётся в состоянии «Сохранено» из‑за повреждённых файлов состояния, конфликтов конфигурации или проблем с хранилищем. Ниже приведено подробное руководство, как диагностировать, исправить и предотвратить эту проблему.


Содержание


Краткое резюме

VM остаётся в состоянии «Сохранено», потому что файлы состояния (.vsv, .bin) повреждены или конфигурация VM конфликтует с текущим хостом. Удаление сохранённого состояния через Hyper‑V Manager или PowerShell решает проблему, а дальнейшие проверки помогут исключить повторные сбои.


Понимание состояния «Сохранено»

Когда Hyper‑V выключает VM с параметром «Сохранить состояние», он сохраняет всю оперативную память и состояние устройств в два файла: .vsv (состояние) и .bin (сохраняет память). При включении VM Hyper‑V восстанавливает эти файлы. Если один из них повреждён, VM не может загрузиться.


Типичные причины зависания VM

Причина Как проявляется Как проверить
Повреждённые файлы состояния VM не запускается, появляется сообщение «Состояние сохранено» Смотрим размер файлов, сравниваем с датой последнего сна
Разница конфигурации (например, изменение версии Hyper‑V) VM не запускается после обновления хоста Сравниваем файлы .vmcx, .vmrs
Недостаток памяти VM падает в «Сохранено», а не «Остановлено» Проверяем журнал событий, размер VM
Проблемы с хранилищем (нет свободного места, ошибка диска) VM не может восстановиться Журнал событий, проверка файловой системы
Неправильные права доступа VM не может читать / писать файлы состояния Проверяем ACL на каталог VM
Служба VMMS не работает Запуск VM выдаёт ошибку 0x80070005 Службы Windows, журнал событий

Пошаговый план устранения неполадок

1. Проверка файлов состояния и журналов

  1. Откройте Event ViewerWindows Logs → System. Ищите события с источником Hyper-V-VMMS и кодом 0x80070005 или 0x8007000E.
  2. Найдите файлы .vsv и .bin в каталоге VM. Если их размер 0 байт или они значительно отличаются от других VM, они повреждены.

2. Удаление сохранённого состояния через GUI

  1. Откройте Hyper‑V Manager.
  2. Щёлкните правой кнопкой по VM → ДействияУдалить сохраненное состояние.
  3. Подтвердите действие. После этого VM будет в состоянии Остановлено.

Если пункт «Удалить сохраненное состояние» недоступен, перейдите к шагу 3.

3. Удаление сохранённого состояния через PowerShell

powershell
# Получаем список VM
Get-VM | Where-Object {$_.Name -eq "Имя_VM"}

# Удаляем сохранённое состояние
Remove-VMSavedState -VMName "Имя_VM"

Если команда вернёт ошибку «The machine is in a saved state. Remove the saved state first…», выполните сначала Stop-VM -Name "Имя_VM" -Force.

4. Проверка прав доступа и свободного места

  • Убедитесь, что у группы Administrators и Hyper‑V Administrators есть полный доступ к каталогу VM.
  • Проверьте, что на диске, где находятся файлы VM, есть минимум 10 % свободного места.

Если свободного места мало, освободите пространство или переместите VM на другой диск.

5. Перезапуск службы VMMS

powershell
Restart-Service -Name vmms

После перезапуска попытайтесь снова запустить VM.

6. Перезапуск хоста и/или миграция VM

  • Если VM продолжает застревать, перезагрузите физический сервер.
  • При необходимости переместите VM на другой хост: ExportImport или Move.

При миграции убедитесь, что целевой хост поддерживает ту же версию Hyper‑V и имеет одинаковые аппаратные возможности (например, Virtualization Extensions).


Как предотвратить повторные сбои

  • Регулярно проверяйте журнал событий на наличие ошибок 0x80070005.
  • Не выключайте сервер без предварительного выключения VM (если используете «Сохранить состояние»).
  • Обновляйте только после проверки совместимости: обновления Windows Server могут изменить формат файлов VM.
  • Периодически экспортируйте VM в архив, чтобы иметь резервную копию.
  • Следите за свободным местом на дисках, где хранятся состояния VMs.

Что делать, если проблема сохраняется

  1. Пересоздайте VM: экспортируйте, удалите, затем импортируйте, выбрав «Перезаписать существующий идентификатор».
  2. Проверьте целостность диска: запустите chkdsk на том, где находятся файлы VM.
  3. Убедитесь, что Hyper‑V обновлён: иногда баги в старых версиях Windows Server 2012 R2/2016/2019.
  4. Обратитесь к журналу событий: найдите более подробный код ошибки и ищите его в документации Microsoft.
  5. Попросите поддержку Microsoft: если VM используется в продакшене, можно открыть тикет.

Заключение

  • Причина большинства подобных проблем — повреждённые файлы состояния (.vsv, .bin) или конфликт конфигурации после обновления/переключения хоста.
  • Решение – удалить сохранённое состояние (GUI или PowerShell), проверить права и свободное место, перезапустить VMMS и при необходимости переместить VM.
  • Профилактика – регулярный мониторинг журналов, контроль свободного места и резервное копирование.

Если после выполнения всех шагов VM всё ещё застревает в «Сохранено», рекомендуется пересоздать VM из экспорта или перенести её на новый хост. Это избавит от повреждённых файлов и установит чистую конфигурацию.


Источники

  1. Microsoft Learn – Восстановленные виртуальные машины Hyper‑V не запускаются
  2. Microsoft Learn – Устранение неполадок Hyper‑V установке, конфигурации и операционных сбоев
  3. Redmond Magazine – Fixing a Virtual Machine that’s Stuck in a Saved State
  4. The Windows Club – Fix Hyper‑V Virtual Machine stuck in Saved State
  5. Vinchin Backup – How to Fix Hyper‑V VM Stuck in Saved State and Start It Safely?
Авторы
Проверено модерацией
Модерация