VirtualBox — решение проблемы с ошибкой E_FAIL (0x80004005) при запуске. Что делать если не удалось открыть сессию для виртуальной машины

Некоторые пользователи, использующие такое программное обеспечение, как VirtualBox(также Oracle VM VirtualBox), время от времени жалуются на возникающую при его использовании проблему в виде ошибки E_FAIL 0x80004005. Данную ошибку можно встретить во время попытки запуска в работу необходимой вам виртуальной машины. В сообщении к ней прилагается следующая информация:

Не удалось открыть сессию для виртуальной машины «НАЗВАНИЕ В.М.»
Код ошибки: E_FAIL 0x80004005

Как правило, Virtualbox вылетает с ошибкой E_FAIL 0x80004005 из-за того, что программе по какой-то причине не удалось сохранить состояние вашей виртуальной машины в файл с расширением.vbox. Причин, почему это произошло — целая куча. Например, он мог быть поврежден или использован во время сохранения состояния для какой-то иной цели. В общем, VirtualBox попытался загрузить состояние ВМ из vbox-файла, но ничего не вышло и он выдал ошибку.

Однако, стоит заметить, что ошибка виртуальной машины E_FAIL 0x80004005 могла возникнуть также из-за ряда других причин: конфликтующее с VirtualBox обновление для операционной системы, отключенная функция виртуализации в BIOS или нестабильная версия самой программы VirtualBox.

Итак, думается, вы в достаточной мере ознакомились с проблемой. Давайте же теперь посмотрим на то, как вы можете избавиться от ошибки E_FAIL 0x80004005 в VirtualBox.

Виртуальная машина: ошибка 0x80004005

Метод №1 Переименование vbox-файла

Один небольшой трюк помогает большинству пользователей избавиться от проблемы при попытке запустить нужную им виртуальную машину. Как уже было сказано, ошибка 0x80004005 возникает, по большей части, из-за неправильно сохраненного состояния виртуальной машины в vbox-файл. Когда это происходит, то VirtualBox создает еще один файл, но только уже с приставкой -prev или -tmp. Вам нужно переименовать этот файл. Выполните следующее:

  • пройдите в директорию C:\Users\<ПОЛЬЗОВАТЕЛЬ>\VirtualBox VMs\ ;
  • найдите в папке файлы с именем вашей виртуальной машины и расширением .vbox и .vbox-prev (или -tmp ), например, пускай это будут ВМ.vbox и ВМ.vbox-prev;
  • удалите файл ВМ.vbox;
  • переименуйте ВМ.vbox-prev в ВМ.vbox;
  • далее перейдите в директорию C:\Users\<ПОЛЬЗОВАТЕЛЬ>\.VirtualBox\ и выполните все описанное выше еще раз, т.е. удаление и переименование файлов.

Как только завершите возиться с файлами, попытайтесь вновь запустить нужную вам виртуальную машину в VirtualBox. Большинство пользователей утверждают, что от ошибки E_FAIL 0x80004005 им помогает избавиться именно вышеуказанный процесс.

Метод №2 Удаление обновления KB:3004394

Если дело заключалось не в неудачном сохраненном состоянии виртуальной машины, то, возможно, оно заключается в обновлении под номером KB:3004394 . Уже многими доказано, что данное обновление может создавать конфликт во время работы VitualBox. Вам нужно попробовать удалить это обновление, а затем проверить наличие кода ошибки E_FAIL 0x80004005.

Удалить это обновление можно как через графический интерфейс системы, так и через консоль. Однако, через консоль процесс удаления выполняется куда быстрее. Поэтому мы покажем вам именно этот способ удаления обновления. Выполните следующие действия:

  • нажмите на клавиатуре Windows+X ;
  • выберите из контекстного меню пункт «Командная строка(администратор)»;
  • впишите в консоль команду wusa /uninstall /kb:3004394 и нажмите Enter;

Удалив обновление KB:3004394 из своей операционной системы, перезагрузите компьютер. Снова зайдите в VitualBox, запустите нужную виртуальную машину и убедитесь, что ошибка E_FAIL 0x80004005 была устранена. Если же нет, то давайте посмотрим на другие методы.

Метод №3 Активирование виртуализации в BIOS

Порой, ошибка E_FAIL 0x80004005 может возникать в результате отключенной в BIOS технологии виртуализации, которая позволяет на одном ПК создавать несколько виртуальных компьютеров. К сожалению, интерфейс BIOS разнится между собой, а поэтому описание точного расположения данной функции — невозможно. Вам придется покопаться в настройках BIOS и найти там опцию Виртуализации, а затем активировать ее. Как только вы это сделаете, попробуйте снова запустить VirtualBox и посмотрите, возникнет ли ошибка виртуальной машины E_FAIL 0x80004005.

Метод №4 Подбор рабочей версии VirtualBox

К сожалению, порой описываемая в данной статье проблема не может быть разрешена вышеуказанными методами. Правда в том, что не каждая версия программы VirtualBox будет работать на том или ином компьютере стабильно. Удалите ту версию, которая установлена на вашем компьютере в данный момент, а затем установите другую, желательно, самую последнюю версию.

Если код ошибки E_FAIL 0x80004005 появляется и на новой версии VirtualBox, то вам придется искать ту версию программы, которая наконец-то таки стабильно заработать на вашей системе. Так или иначе, вы найдете ее. Исходя из отзывов пользователей, стабильными версиями являются 4.3.12, 4.3.20, 5.0.6 и 5.1.8. Пробуйте, запускайте и проверяйте наличие ошибки E_FAIL 0x80004005.

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

Привет, друзья. В этой статье предлагаю поговорить о проблеме импорта файлов конфигурации виртуальных машин OVA программой VirtualBox. Об этой проблеме вы не единожды упоминали , где приводились инструкции по скачиванию готовой машины с Windows 8.1. Процесс импорта программой VirtualBox машин, экспортированных нами ранее или скачанных в Интернете, увы, не всегда проходит успешно. И иногда мы можем столкнуться с ошибкой типа «Не удалось импортировать конфигурацию виртуальной машины». Ниже поговорим о том, что может привести к такой ошибке импорта, а также рассмотрим универсальный способ решения этой проблемы.

Рабочие виртуалки VirtualBox вместе с их настройками и содержимым виртуального жёсткого диска можно экспортировать в универсальный файл конфигурации формата OVA, а затем импортировать его после переустановки основной Windows, на другом компьютере или на другом гипервизоре. С механизмом экспорта-импорта с участием формата OVA работают программы VirtualBox, VMware Workstation, а при дополнительных усилиях - ещё и Hyper-V. Готовые виртуальные машины в Интернете обычно выкладывают именно в формате OVA.

В идеале механизм импорта в программе VirtualBox прост: выбираем «Импорт конфигураций», указываем путь к файлу OVA, жмём «Далее».

При необходимости меняем кое-какие настройки и жмём «Импорт».

И через какое-то время можем уже запускать виртуалку.

Но это так в идеале. Что может препятствовать этому процессу?

Причины ошибки импорта виртуальных машин VirtualBox

Сообщением типа «Не удалось импортировать конфигурацию виртуальной машины» процесс импорта может завершиться банально из-за проблем с файлом OVA (если он повреждён) или из-за нехватки места на диске, куда распаковывается виртуальная машина. Если с самим OVA всё в порядке, при возникновении такой проблемы можно попытаться извлечь виртуалку на другой раздел диска. Или на исходный, только после очистки системной корзины. Можно даже попробовать дефрагментировать такой раздел (если, конечно же, это раздел HDD).

У раздела диска, куда распаковывается импортируемая машина, естественно, должна быть файловая система NTFS. На раздел с FAT32 не запишется файл виртуального жёсткого диска в составе машины, который обычно весит больше 4 Гб.

Если мы говорим о виртуалке, скачанной с Интернета, нужно тщательно проверить параметры импорта. Возможно, тот, кто её экспортировал, работал на более мощном компьютере и указал большой объём оперативной памяти или слишком много ядер процессора.

Но часто, друзья, бывает так, что в одной версии VirtualBox не хочет осуществлять импорт, а в другой, к примеру, в более старой версии – делает это без каких-либо проблем.

За исключением случаев порченного OVA и раздела с FAT32 решить проблему ошибки импорта виртуальной машины можно путём извлечения из OVA файла виртуального жёсткого диска и формирования на его базе новой машины.

Создание новой виртуальной машины VirtualBox на базе виртуального диска из файла OVA

Создание новых машин на базе файлов виртуальных жёстких дисков – это более удобный, чем экспортирование в формат OVA, способ восстановления виртуалок. Особенно, если их много. Кто активно работает с гипервизорами, обычно больше привязан к виртуальным дискам машин, а не к их конфигурации. Такие пользователи прекрасно знают, какие настройки виртуалок они используют. И им проще создать новую машину на базе имеющегося виртуального диска, чем возиться с созданием увесистого файла экспорта OVA.

Но где взять диск виртуальной машины, если последняя, например, в формате OVA скачана с Интернета? Друзья, OVA – это контейнер архива TAR, его содержимое можно увидеть и извлечь какую-то часть данных с помощью программ 7-zip, WinRAR или любого иного архиватора, который поддерживает формат архивов «.tar». Этими частично извлечёнными данными и станет виртуальный жёсткий диск, на базе которого мы создадим новую виртуалку. Что же, поехали.

  • Примечание : друзья, каталогом хранения содержимого виртуальных машин в программе VirtualBox по умолчанию является папка на системном диске. И чтобы не захламлять диск С, рекомендую вам отвести под работу с виртуалками специальную папку на несистемном каком-нибудь разделе. Или даже выделить под это целый раздел, например, самый быстрый по результатам тестирования скорости чтения и записи данных, если мы говорим об HDD. Путь хранения данных виртуалок можно прописать в общих настройках программы, чтобы каждый раз при создании новой машины не отвлекаться на смену пути по умолчанию.

Этап 1. Создание новой машины

В окне VirtualBox создаём новую машину.

Называем её, указываем версию Windows, задаём показатель оперативной памяти. В графе «Жёсткий диск» выставляем пункт «Не подключать виртуальный жёсткий диск». Жмём «Создать».

И пока сворачиваем окно VirtualBox.

Этап 2. Работа с архиватором

Теперь, друзья, с помощью архиватора нам нужно извлечь из OVA виртуальный жёсткий диск.

  • Примечание : если вы скачали виртуалку с Интернета в архиве RAR, ZIP и т.п, не забудьте распаковать такой архив путём обычной разархивации, чтобы на выходе получился именно контейнер OVA.

Запускаем архиватор. Я буду использовать классику жанра – программу WinRAR. Открываем наш OVA в окне архиватора с помощью меню «Файл - Открыть». Важно : архиваторы по умолчанию могут отображать не все поддерживаемые типы архивов. Чтобы OVA был виден в меню обзора для открытия, необходимо указать тип отображаемых данных «Все файлы».

После успешного открытия в окне архиватора увидим содержимое OVA. В моём случае это файл конфигурации виртуальной машины OVF и совместимый с VirtualBox и VMware Workstation файл виртуального жёсткого диска VMDK. Последний нам-то и нужен. Кликаем его, вызываем контекстное меню и в случае с WinRAR выбираем пункт меню «Извлечь в указанную папку». В архиваторе 7-zip используем пункт контекстного меню «Копировать в…».

Файл виртуального диска для удобства можем распаковать в папку хранения созданной нами на предыдущем этапе новой виртуалки.

Таким образом все её составляющие будут аккуратненько сосуществовать в одном месте.

Теперь возвращаемся к программе VirtualBox.

Этап 3. Подключение виртуального жёсткого диска

На первом этапе мы создали машину без жёсткого диска. Выделяем её и жмём кнопку настроек.

В окошке настроек идём в раздел «Носители», жмём кнопку контроллера SATA и добавляем новый жёсткий диск из числа существующих.

Указываем путь хранения файла, который мы извлекали с помощью архиватора на предыдущем этапе.

Жмём «Ок».

Всё – машина настроена. Можем запускать её.

Если при запуске Windows появляется BSOD

Если запуск виртуалки прошёл успешно, однако на этапе запуска Windows возникли проблемы в виде синего экрана смерти, возможно, друзья, мы имеем дело с проблемой контроллера виртуального жёсткого диска. Это мелкий недостаток способа создания новой машины на базе извлечённого из OVA файла диска. Когда мы импортируем машину вместе с её конфигурацией, в этой конфигурации предусматривается нужный тип контроллера. Когда же эту конфигурацию мы формируем по новой, мы можем указать не тот тип контроллера. А Windows даже в актуальной версии 10 пока ещё не умеет на ходу менять драйверы контроллера носителей. И вот реагирует экраном смерти.

Для скачанных с ресурсов Microsoft готовых виртуальных машин подойдёт установленный по умолчанию в VirtualBox тип контроллера SATA. Если мы скачаем виртуалку с Windows, в среде которой установлены драйверы под тип контроллера IDE, но подключим его через контроллер SATA, операционная система в большинстве случаев запустится. Но вот если мы на каком-нибудь сайте в Интернете скачаем машину, где Windows установлена на виртуальный диск, подключённый через контроллер SCSI, с большой долей вероятности получим BSOD. Или наоборот: BSOD будем лицезреть при подключении через SCSI виртуального диска с Windows, которая устанавливалась на виртуалке с типом контроллера SATA или IDE.

В таком случае просто нужно переподключить виртуальный диск через другой тип контроллера. Необходимо вернуться в раздел настроек машины «Носители», удалить диск из числа устройств текущего контроллера, затем добавить новый тип контроллера (SCSI, SATA или IDE).

И подключить диск уже через новый контроллер.

При попытке запуска операционной системы Windows или Linux в виртуальной машине пользователь может столкнуться с ошибкой 0x80004005. Она возникает до старта ОС и препятствует любой попытке ее загрузки. Есть сразу несколько способов, помогающих устранить существующую проблему и продолжить пользоваться гостевой системой в обычном режиме.

Ситуаций, из-за которых не получается открыть сессию для виртуальной машины, может быть несколько. Зачастую данная ошибка возникает спонтанно: еще вчера вы спокойно работали в операционной системе на VirtualBox, а сегодня выполнить то же самое не удается из-за сбоя при запуске сессии. Но в некоторых случаях не удается выполнить первичный (установочный) запуск ОС.

Это может произойти вследствие одной из следующих причин:

  1. Ошибка при сохранении последней сессии.
  2. Отключенная поддержка виртуализации в BIOS.
  3. Некорректно работающая версия VirtualBox.
  4. Конфликт гипервизора (Hyper-V) с VirtualBox на 64-разрядных системах.
  5. Проблемное обновление хостовой Windows.

Способ 1: Переименование внутренних файлов

Сохранение сессии может завершиться ошибочно, в результате чего последующий ее запуск будет невозможен. В этом случае достаточно выполнить переименование файлов, связанных с запуском гостевой ОС.

Для выполнения дальнейших действий вам необходимо включить отображение расширений файлов. Это можно сделать через «Параметры папок» (в Windows 7) или «Параметры Проводника» (в Windows 10).


Способ 2: Включение поддержки виртуализации в BIOS

Если вы решили воспользоваться ВиртуалБокс впервые, и сразу же столкнулись с вышеупомянутой ошибкой, то, возможно, загвоздка кроется в не настроенном BIOS для работы с технологией виртуализации.

Чтобы осуществить запуск виртуальной машины, в БИОС достаточно включить всего лишь одну настройку, которая называется Intel Virtualization Technology .


Настройка может иметь и другой путь (например, в BIOS на ноутбуках HP или в БИОС Insyde H20 Setup Utility):

  • System Configuration > Virtualization Technology > Enabled ;
  • Configuration > Intel Virtual Technology > Enabled ;
  • Advanced > Virtualization > Enabled .

Если вы не нашли данной настройки в своей версии BIOS, то ищите ее вручную во всех пунктах меню по ключевым словам virtualization , virtual , VT . Для включения выбирайте состояние Enabled .

Способ 3: Обновление VirtualBox

Возможно, состоялось очередное обновление программы до последней версии, после чего и появилась ошибка запуска «E_FAIL 0x80004005». Есть два выхода из сложившейся ситуации:


  • Переустановите VirtualBox на текущую или предыдущую версию.
  • Способ 4: Отключение Hyper-V

    Hyper-V - система виртуализации для 64-разрядных систем. Иногда у нее может возникнуть конфликт с VirtualBox, что и провоцирует появление ошибки при старте сессии для виртуальной машины.

    Для отключения гипервизора выполните следующее:

    Способ 5: Изменение типа запуска гостевой ОС

    В качестве временного решения (например, до выпуска новой версии VirtualBox) можно попробовать изменить тип запуска ОС. Этот способ помогает не во всех случаях, но, возможно, сработает у вас.


    Данная функция доступна только в VirtualBox, начиная с версии 5.0.

    Способ 6: Удаление/исправление обновления Windows 7

    Этот способ считается устаревшим, поскольку после неудачного патча KB3004394, приводящего к прекращению работы виртуальных машин в ВиртуалБокс, была выпущена заплатка KB3024777, устраняющая данную проблему.

    Тем не менее, если у вас на компьютере по каким-то причинам отсутствует фикс-патч, а проблемный присутствует, то есть смысл либо удалить KB3004394, либо установить KB3024777.

    Удаление KB3004394:

    Установка KB3024777:


    В подавляющем большинстве случаев точное выполнение данных рекомендаций приводит к устранению ошибки 0x80004005, и пользователь может без труда начать или продолжить работать с виртуальной машиной.

    На английском языке ошибка звучит так:

    Cannot register the hard disk because a hard disk with UUID ... already exists.

    Данная ошибка возникает при попытке добавить файл виртуального жёсткого диска к виртуальной машине после перемещения этого файла.

    Зачем перемещать файл виртуального жёсткого диска

    Это бывает необходимо, если на текущем жёстком диске компьютера недостаточно свободного места. Либо в случае, если вы хотите переместить файл на более быстрый накопитель компьютера (например SSD) для улучшения быстродействия виртуальной машины.

    Перемещение файла виртуального жёсткого диска

    1.Поиск файла и собственно перемещение

    Откройте менеджер виртуальных машин. Выберите нужную виртуальную машину и вызовите её свойства (Настроить ):

    На вкладке Носители выясните путь к файлу виртуального жёсткого диска и скопируйте его:

    Вставьте в адресную строку путь, сотрите имя файла в конце и нажмите Enter. Вы попадёте в папку, где расположен файл.

    Переместите файл, куда желаете. Мы в нашем примере перемещаем с диска E на диск C SSD.

    2. Изменение UUID виртуального жёсткого диска в Virtualbox

    Выполните следующие действия:

    1. Запустите командную строку:

    2. Откройте папку, где установлена Virtualbox.

    3. В командной строке наберите cd и поставьте один пробел.

    4. Перетащите иконку папки в командную строку. Должна получиться строка:

    Cd "C:\Program Files\Oracle\Virtualbox"

    5. Нажмите Enter:

    6. Наберите команду vboxmanage internalcommands sethduuid и поставьте один пробел.

    7. Перетащите файл жёсткого диска в командную строку. Должна получиться строка вида:

    Vboxmanage internalcommands sethduuid C:\folder\win7.vdi

    8. Нажмите Enter:

    Вот так выглядит окно консоли после выполнения всех команд:

    Если вы видите сообщение

    UUID changed to:...

    значит, всё получилось.

    Если при попытке изменить UUID вы получили ошибку Syntax error: Invalid UUID parameter , возьмите путь в кавычки следующим образом:

    Vboxmanage internalcommands sethduuid "E:\VirtualBox VMs\win8\win8.vdi"

    Чаще всего эта ошибка возникает из-за того, что в имени какой-то папки в пути есть пробелы .

    Виртуализация - интересная возможность современных компьютеров, которая позволяет использовать часть ресурсов устройства для запуска любой операционной системы внутри основной ОС. Максимальной актуальности эта технология достигла в Windows 10 по причине возросшей необходимости запускать программы, совместимые только с более старыми версиями этой ОС.

    Программы такого рода для серверов и настольных компьютеров начали появляться уже давно, но со временем на этой ниве больше всех преуспела компания Oracle. Ее продукт под названием VirtualBox позволил легко настраивать и использовать подобные возможности даже простому пользователю, будучи при этом очень стабильным.

    Но даже в столь долго отлаживаемой и стабильной программе часто складывается ситуация, когда пользователю не удалось открыть сессию для виртуальной машины из-за ошибки 0x80004005 .

    Когда проявляется проблема

    Возникновение проблемы замечено на всех версиях ядра операционных систем Microsoft с версией 6.1 и старше. Иначе говоря, ошибка при запуске уже установленного на виртуальную машину образа возникает на ОС от Windows 7 и до новейшей Windows 10. Появление проблемы не зависит от типа системы, которую вы инсталлировали на свой ПК, и версии программы VirtualBox.

    Особенно неприятной подобная ошибка становится, когда пользователь уже успел установить, настроить и некоторое время даже попользоваться виртуальной машиной. Банальный перезапуск результата в таком случае уже не дает, то есть дальнейшая эксплуатация ОС на VirtualBox невозможна без принятия срочных мер.

    Первый вариант

    После того, как во время попытки активации виртуальной машины у вас на экране появилась ошибка с кодом 0x80004005 , стоит закрыть программу.

    Переходим на системный диск, обычно обозначенный буквой «С ».

    Далее ищем папку с информацией для вашей учетной записи. Ее вы можете видеть при окне входа в систему, запуске меню «Пуск » в Windows 7/10 или активации плиточного меню вверху экрана при использовании Виндоус 8.

    Проходим туда и находим папку «VirtualBoxVMs », в которой ищем каталог незапустившейся виртуальной машины. Там увидите три файла, список которых будет выглядеть так:

    • Example.vbox.
    • Example.vbox-prev.
    • Папка «Logs» (ее мы игнорируем, она нам не понадобится).

    Предварительно копируем «Example.vbox » и «Example.vbox-prev » в любое другое место на компьютере, например, на диск «D».

    Затем выполняем простую комбинацию:

    1. Возвращаемся в папку с неработающей виртуальной машиной.
    2. Удаляем файл Example.vbox.
    3. Переименовываем файл Example.vbox-prev в Example.vbox с помощью вызова опций по клику правой кнопкой мыши.

    В новых версиях программы содержимое папки может быть несколько другим, например, она может вмещать в себя файлы «Example.xml » и «Example.xml-prev ».

    Для всех них проделываем абсолютно те же операции:

    1. Делаем резервную копию.
    2. Стираем файл с разрешением.xml.
    3. Меняем имя «Example.xml-prev» на «Example.xml».

    Описанная выше процедура занимает не более пяти минут, и стоит изначально попробовать ее. Она сработает практически всегда, за исключением другого случая.

    Другой вариант решения проблемы

    Существует ряд ситуаций, когда пользователь получает сообщение «Не удалось открыть сессию для виртуальной машины » из-за одного обновления Windows под маркировкой KB3004394 . Исправить проблему в таком случае возможно, удалив это обновление из системы. Существует сразу два способа это сделать:


    Третий вариант

    Если вы попробовали и то, и другое решение, но указанный выше код ошибки все равно появляется вместо окна загрузки системы, то стоит откатиться до прежней версии VirtualBox .

    Список стабильных версий программы можно найти по этой ссылке .

    Перед установкой старой версии удалите текущую версию из системы, при этом оставив данные. Перечень действий таков:

    1. Войти в Панель управления , а затем в меню «Установка и удаление программ ».
    2. Выбрать там программу VirtualBox .
    3. При запросе на удаление пользовательских данных программы нажать Нет .
    4. Скачать и установить другую стабильную версию программы из приведенного выше списка.

    Возможно, что если установить более старую версию не получится, то придется полностью деинсталлировать программу вместе со всеми данными, так как старая версия может оказаться не совместима.

    Итог

    Итак, мы указали несколько способов решения проблемы открытия сессии виртуальной машины. Если вы знаете еще какие-либо способы - смело оставляйте их в комментариях, и мы обязательно добавим их в основной текст статьи.

    Видео по теме