В системе не хватает памяти для запуска виртуальной машины hyper v
Диспетчер Hyper-V
Произошла ошибка при попытке запустить выбранную виртуальную машину (ы).
Не удалось запустить Windows.
Недостаточно памяти в системе для запуска виртуальной машины Windows 10 1903.
Не удалось инициализировать память: закончилась память (0x8007000E).
Симптомы
Кроме того, следующее событие регистрируется в журнале Microsoft-Windows-Hyper-V-VMMS-Admin.
Имя журнала: Microsoft-Windows-Hyper-V-VMMS-Admin
ID события: 19544
Уровень: ошибка
Описание:
Не удалось запустить виртуальную машину "Имя виртуальной машины", которая требовала xxxx МБ памяти, так как только xxxx МБ был доступен в системе (Виртуальный ID Virtual Machine ID> машины).
2. Выберите динамическую память для виртуальной машины и убедитесь, что оптимальные требования выполнены
В процессе настройки виртуальной машины очень важно, чтобы вы выбрали параметры динамической памяти для вашей настройки. Это позволит Hyper-V распределять объем оперативной памяти, доступной для наиболее важных процессов.
Вы должны иметь в виду, что даже динамические виртуальные машины имеют минимальные требования к памяти, объем, необходимый для оптимальной работы, и максимальный объем выделенной оперативной памяти.
Посетите эту ссылку для более подробного описания этого процесса.
Как мне выделить Hyper-V больше памяти?
Для выделения или Увеличьте объем памяти с помощью диспетчера Hyper-V, следуйте этим инструкциям: Откройте диспетчер Hyper-V. В списке виртуальных машин щелкните правой кнопкой мыши нужную, а затем выберите «Параметры». На панели навигации щелкните Память. Измените объем оперативной памяти как минимум на 512 МБ. В разделе «Динамическая память» измените минимальный размер ОЗУ до 256 МБ и максимальный размер ОЗУ до 512 МБ.
В этой статье предоставляется обходное решение проблемы, которая не позволяет Windows Server 2012 виртуальной машине на основе R2. Эта проблема возникает, даже несмотря на то, что диспетчер задач указывает на достаточное количество доступной памяти.
Применяется к: Windows Server 2012 R2
Исходный номер КБ: 2962295
Не удалось инициализировать память, закончилась память (0x8007000E)
Если вы столкнулись с этой проблемой, вы можете попробовать наши рекомендуемые решения ниже в указанном порядке и посмотреть, поможет ли это решить проблему Не удалось инициализировать память: исчерпана память (0x8007000E) в вашей Windows. 11/10 ПК.
Давайте посмотрим на описание процесса, связанного с каждым из перечисленных решений.
1] Перезагрузите главный компьютер
Первый шаг по устранению неполадок, который вы можете предпринять для решения проблемы Не удалось инициализировать память: исчерпана память (0x8007000E) на вашем ПК с Windows 11/10 - это перезагрузить компьютер - полный перезапуск системы перезагрузит виртуальную машину и освободит память.
Вкл. загрузитесь, проверьте, решена ли проблема. В последнем случае перейдите к следующему решению.
2] Очистить кеш памяти
Это решение требует, чтобы вы очистили кеш памяти на вашем ПК с Windows.
3] Распределитьменьше памяти для виртуальной машины
Пользователи ПК могут настроить объем оперативной памяти, который виртуальная машина Hyper-V может использовать на главном компьютере с Windows 11/10. Но вы должны помнить, что не следует выделять слишком мало, потому что это приводит к очень медленной работе виртуальной машины - слишком большое количество может вызвать возникшую проблему и часто не оказывает положительного влияния на производительность.
Чтобы выделить меньше памяти в виртуальную машину, выполните следующие действия:
- Перейдите в Hyper-V Manager .
- Щелкните правой кнопкой мыши виртуальную машину и выберите Настройки .
- На левой панели нажмите Память .
- Теперь на правой панели в разделе Укажите объем памяти, который этот виртуальный устройство может использовать поля и Минимальный объем ОЗУ , установите значение 2048 МБ (2 ГБ).
Примечание : не присваивайте никакого значения менее 2048 МБ ОЗУ, так как это заметно замедляет работу вашей виртуальной машины. Это может даже привести к тому, что виртуальная машина вообще не загрузится. Однако это может сопровождаться снижением производительности виртуальной машины.
Убедитесь, что проблема решена. Если нет, попробуйте следующее решение.
4] Закройте приложения
Если у вас одновременно запущено несколько программ, эти программы могут потреблять ресурсы памяти. В этом случае вы можете просто закрыть эти программы, чтобы освободить дополнительную память и запустить виртуальную машину. Вы можете проверить программы, использующие верхнюю память, через Диспетчер задач > Вкладка Details.
После успешного запуска виртуальной машины вы можете снова запустить приложения. Производительность виртуальной машины остается гарантированной. При запуске виртуальная машина часто использует большую часть памяти. Как только вы войдете в Windows, использование памяти немного снизится.
5] Приобретите больше памяти
В крайнем случае вам может потребоваться приобрести дополнительную память - при условии, что у вас есть 4Гб физической памяти - это почти единственный вариант. Ваш хост-компьютер с Windows 11/10 наверняка снизит производительность при выделении 2 ГБ для вашего ПК и 2 ГБ для вашей виртуальной машины.
Имейте в виду, покупая память, обратите особое внимание на тип памяти и на то, у вас все еще есть свободный слот для дополнительной памяти. Вам могут потребоваться услуги специалиста по аппаратному обеспечению ПК.
Надеюсь, это поможет!
3. Добавьте больше оперативной памяти на хост-компьютер и добавьте память в Hyper-V
Другой вариант исправления ошибки Hyper-V Run out of memory — добавить дополнительную оперативную память на хост-компьютер Hyper-V. Это, в свою очередь, позволит вам выделить больше оперативной памяти для виртуальной машины, которую вы пытаетесь использовать.
После того, как вы добавили больше оперативной памяти на хост-компьютер, выполните следующие действия, чтобы назначить новое значение для вашей виртуальной машины:
Обходной путь
Чтобы запустить виртуальную машину, либо освободим достаточную память на хост, либо в зависимости от доступности в зависимости от счетчика производительности, упомянутого ниже.
Следующий счетчик производительности можно использовать для явной проверки того, сколько памяти доступно для виртуальных машин:
Hyper-V динамического балансира памяти \ доступной памяти
- Имя экземпляра — "System Balancer".
- Значение Hyper-V динамического балансиры памяти зависит от количества памяти, используемой приложением, установленным в хосте Hyper-V, и от количества, используемого \ vmwp.exe.
Счетчик показывает, сколько памяти доступно для запуска виртуальной машины. Поэтому, если вы столкнулись с этой проблемой, доступная память, показанная в диспетчере задач, не помогает. Однако доступная память, показанная в счетчике производительности, может указывать на фактическую доступную память для Hyper-V.
На Windows Server 2008 R2 Standard с 8 ГБ RAM, установлена Hyper-V, а на нее — Linux Centos 6.0, в которую добавлено 2 ГБ оперативки.
Так вот странное: на хостовой машине суммарно процессами потребляется порядка 1 ГБ памяти, плюс на виртуалку — еще 2 ГБ, но всего занято 7,5 ГБ и свободно порядка 600 МБ. Ни законам арифметике, ни логике это не подвластно.
Поиски по гуглу не привели к результату. Может, кто сталкивался?
- Вопрос задан более трёх лет назад
- 4022 просмотра
Оценить 2 комментария
Что значит занято? если занято, то должно быть видно чем, а если не видно чем, то просто закешированно.
В винде не знаю, а в линуксе кеш чистится коммандой:
sync; sudo echo 3 > /proc/sys/vm/drop_caches
Возможно и синде это как-то делается.
В винде в диспетчере задач хлопаем кнопку монитора ресурсов, переходим на вкладку память, там все расписано. Если покажется мало, почитайте ветку на тэчнете, была аналогичная проблема, но там оказалось, что железо виновато. Но разобрали много вариантов, что-нибудь полезное для себя точно найдете.
Да, только там была речь о памяти, зарезервированной оборудованием. У меня же оборудованием резервируется сколько нужно.
В обсуждении были ссылки на стати, которые полезно почитать, плюс ссылка на довольно полезную программу от Руссиновича для мониторинга памяти. Какой именно процесс занял слишком много памяти?
Пока всем хватает памяти, не стоит заморачиваться, пусть хоть вся память будет занята, если всем хватает то все ок, некоторые программы резервируют себе на будущее (не будем далеко ходить, не знаю как про гипер-в, опера выжирает до полу гектара пока ее не попросят поделиться). Другое дело если памяти нет и из-за этого другие программы тормозят, вот тут уже надо паниковать! Неужели Вам жалко свободной памяти? Некоторые заранее резервируют чтоб потом стартовать как можно быстрей (думаю к виртуальным машинам это относится)
Когда вся память займется — уже поздно будет выяснять, куда утекла вся остальная: будут на сервере работать люди, а перезагрузки или дебаги приведут к недоступности сервиса.
Поставил на Hyper-V Debian 9, указал динамически выделяемую ОЗУ. Пользуюсь только консолью, графическую оболочку отключил. И, внезапно, эта виртуалка стала потреблять под 12 гб ОЗУ. Ок, ограничил до 4гб и перезапустил. Но опять ОЗУ выделяется максимум, но при этом имеется вот такой вывод free:
Объясните, плс, почему так?
Простой 3 комментария
Где вы это посмотрели в самой машине?
Потребляемую память можно увидеть только в консоли гипервизора.
Машина не знает сколько памяти она потребляет, если память динамическая.
Суть работы динамической памяти - если гипервизору нужно отобрать память у машины, в виртуальной машине зпускается процесс пустышка, который отжирает кучу памяти,
3 года имел интимную близость в линукасми под хайпер-в - мой вывод, графические оболочки жрут до упора, не зависимо от наличия потребности.
только голая установка, без компонентов GUI изначально, того же debian, показывает скромный расход по реальным нуждам
особо отмечу KDE (в любом дистрибе) тут все не так катастрофично, но и на реализм виндовых гостей, все равно еще не похоже. KDE меньше жрет про запас, и легче отдает, когда не нужно.. (вероятно особенности архитектуры QT) однако все полюсы испаряются, когда ставим много GTK-based приложений, и активно эксплуатируем их
ну и субьективное наблюдение - кажется, что с установкой новейших ядер, ситуация слегка улучшается. точно не знаю, но возможно МС контрибутит потихоньку, улучшения гостевых модулей под хайпер-в (а таковые в ядре есть точно, искал инфу в свое время, начиная с 3. чего то там, гостевые модули под хайпер-в в ядре линукса из коробки))
ps в конечном итоге, я остановился на виртуалбоксе - да, димаческого выделения памяти нет (upd но есть забавный эффект, от механизма "компрессии" свободной памяти win 10, иллюзия динамического распределения возвращается, в VMWare тот же эффект), зато овладел презентованием физическх дисков, ну и главная плюшка - легкий проброс всячечских юсби девайсов. в плане графики - VMWare будет покруче, но в прошке, а она платная (а пиратства избегаю)
мой личный вывод - для макетных серверов гипер-в классный, но можно и контейнеры тогда уж освоить, а для разнообразного эксперементизма с линуксовыми гостями, под виндой, вуртуал бокс выходит все же по удобнее
pps но естественно, для виндовых гостей под виндовым хостом - хайпер-в вне конкуренции
Ошибка Hyper-V исчерпала память, что лишит вас возможности создавать любые новые виртуальные машины или даже не позволит вам запустить существующие созданные виртуальные машины.
Эта проблема вызвала у пользователей много стресса, и это понятно.
Очень важно решить эту проблему, особенно если вам нужно, чтобы ваша виртуальная машина работала правильно для работы.
Вот что один пользователь из форумов Microsoft Technet сказал об этой проблеме:
Попытка запустить Windows Server в Hyper-V, но из-за ошибки 0x8007000e вышла ошибка. Даже предоставил 2 ГБ ОЗУ, но все тот же MSG. С нескольких минут он работал нормально, но теперь перестал работать.
Эта проблема, очевидно, вызвана объемом памяти, необходимого Hyper-V для запуска выбранных виртуальных машин. В сегодняшней статье мы рассмотрим некоторые из лучших проверенных методов для решения этой проблемы. Читайте дальше для более подробной информации.
Ваш Hyper-V исчерпал память? Вот исправление
Сколько оперативной памяти мне нужно для Hyper-V?
Самому Hyper-V нужно примерно 300 мегабайт памяти для собственного процесса. Для каждой виртуальной машины любой объем памяти до первого мегабайта требует 32 мегабайта накладных расходов. Каждый гигабайт после первого требует дополнительных 8 мегабайт накладных расходов.
Причина
Когда Windows Server 2012 R2, Hyper-V динамически оставляет минимальное количество памяти, необходимое для запуска операционной системы хост и любых приложений. Размер этого резервирования зависит от нескольких факторов.
Оставшаяся память доступна виртуальным машинам. Однако это количество отличается от того, что отображается в task Manager как "доступная память". Таким образом, виртуальная машина может не запускаться, даже если Hyper-V, как представляется, имеет достаточную память в соответствии с диспетчером задач.
Чтобы точно проверить доступную память для виртуальных машин, см. в разделе Обходное решение для использования объекта производительности и имени счетчика.
1. Закройте все виртуальные машины, которые вам не нужны
Это позволит правильно распределить вашу оперативную память, чтобы без проблем запустить виртуальную машину, с которой вы работаете.
Вывод
Мы хотели бы знать, если вы нашли это руководство полезным. Пожалуйста, не стесняйтесь поделиться этой информацией с нами, используя раздел комментариев ниже.
Читайте также: