Код ошибки e fail 0x80004005 возникает при попытке запустить виртуальную машину в программе Oracle VirtualBox. Возникает она практически по любому поводу, отличаются лишь модули программы в которых происходит сбой.
Не удалось открыть сессию для виртуальной машины <ИМЯ ВИРТУАЛЬНОЙ МАШИНЫ>.
В самом распространенном случае данная ошибка индициируется тогда, когда программа VirtualBox не смогла записать состояние машины в vbox-файл. Это и приводит к ошибке при попытке запустить машину в следующий раз.
Когда VirtualBox по каким либо причинам не сумела записать состояние машины в vbox-файл (он был занят другим процессом, поврежден, и т.п.), программа все же попыталась сохранить состояние виртуалки в файлы, с таким же именем, но добавила к расширению *.vbox приставку -prev или -tmp.
Все эти действия происходят в папках:
C:\Users\<имя пользователя>\VirtualBox VMs\<имя машины>\
C:\Users\<имя пользователя>\.VirtualBox\
Для того, чтобы восстановить данную несправедливость:
В случае если в папке имеются файлы с расширением *.xml-prev или *.xml-tmp , то с ними нужно поступить также как описано выше.
Все те же операции проделать во второй папке C:\Users\<имя пользователя>\.VirtualBox\
Во втором случае (по некоторым данным) нормальному запуску виртуальной машины мешает обновление Windows под названием KB3004394. Для нормальной работы виртуальной машины, нам необходимо его удалить.
Для этого нажмем кнопку «Пуск» и в строке поиска введем cmd .
В результатах поиска увидим программу CMD
на которой нам необходимо щелкнуть правой кнопкой мыши и выбрать «Запустить от имени Администратора»
.
В открывшемся окне командной строки введите:
wusa /uninstall /kb:3004394
и нажмите
Если в Вашей системе присутствует это обновление, оно будет удалено. Вам остается перезагрузить компьютер и попробовать запустить ВМ снова.
Еще, как вариант: в BIOS вашей материнской платы, может быть отключена поддержка виртуализации по технологии Intel Virtualization Tecnology.
Технология виртуализации Intel Virtualization Technology (VT) известна также под кодовым названием Vanderpool. Смысл VT заключается в том, что один компьютер, построенный на единственном центральном процессоре, может выступать в роли нескольких виртуальных ПК. Благодаря технологии виртуализации на единой платформе могут одновременно и независимо друг от друга запускаться несколько операционных систем или приложений.
К огромному сожалению (а может и к лучшему), BIOS на разных материнских платах — тоже разный. Но принцип один и тот же. Нам нужно найти в нем поддержку виртуализации и разрешить ее.
Стоит напомнить, что неправильные настройки BIOS компьютера, могут повлиять на работоспособность системы в целом. BIOS требует бережных и осознанных действий пользователя. Попросите помочь человека, разбирающегося в BIOS, если не уверены в своих силах
Обновления. Большинство из нас гонятся за ними. Еще бы! Ведь в обновлениях что-то улучшено, ускорено, исправлено, доделано, переделано и т.д.
Это утверждение верно. Но на практике все оказывается не совсем так хорошо.
Если все вышеописанное не помогло вам избавится от кода ошибки e-fail 0x80004005, остается еще способ. Это установить более старую версию VirtualBox.
В определенных случаях можно увидеть код ошибки e fail 0x80004005. Данный сбой возникает при попытке запуска посредством программы Oracle VirtualBox.
Как правило, fail 0x80004005 можно увидеть, если приложение не сумело записать состояние в файл. Материал может быть занят иным процессом либо поврежден. В такой ситуации программа пытается сохранить данные о виртуальной машине. Причем файлы получают аналогичное имя и приставку -tmp или -prev.
Если на экране виден код ошибки e fail 0x80004005, переходим к диску C. Открываем папу Users. Входим в каталог с именем пользователя. Открываем папку VirtualBox VMs. Заходим в каталог с именем машины. На следующем этапе устранения сбоя e fail 0x80004005 перемещаем файл с vbox в любое удобное место. Также его можно удалить. Речь идет о файле с названием машины. Из расширения элемента vbox-prev убираем приставку. Если каталог содержит файлы xml-tmp или xml-prev, поступаем с ними по описанному выше алгоритму.
В менее распространенном случае причиной возникновения сбоя e fail 0x80004005 может служить обновление Windows. Если говорить точнее, компонент KB3004394 иногда мешает старту виртуальной машины. Чтобы нормализовать положение, удаляем его.
Переходим в меню «Пуск». В строку поиска вводим cmd. В результатах находим программу с соответствующим названием. Нажимаем на данный элемент правой кнопкой мышки. В возникшем меню выбираем запуск с правами администратора. Открывается окно командной строки. В него вводим задачу удаления компонента KB3004394. Нажимаем на Enter. Если в системе присутствует данное обновление, оно сразу же будет удалено. После этого выполняем перезагрузку компьютера. Снова запускаем виртуальную машину.
Если возникает код ошибки e fail 0x80004005, устранить его можно и еще одним способом. Нам необходимо включить виртуализацию в BIOS персонального компьютера. Речь идет о технологии под названием Intel Virtualization. Она также упоминается в различных источниках под кодовым именем Vanderpool. Смысл технологии заключается в возможности работы одного компьютера, построенного на едином центральном процессоре, в качестве нескольких виртуальных устройств. Виртуализация позволяет на выбранной платформе независимо и одновременно запускать несколько приложений или операционных систем.
BIOS на различных материнских платах отличается. Однако все они работают по единому принципу. Неправильные настройки платформы BIOS могут оказать влияние на работоспособность всей системы. БИОС требует осознанных и бережных действий пользователя. Лучше всего доверить настройку эксперту. Если ничего не помогло, устанавливаем VirtualBox более старой версии.
Является ошибка 0x80004005 . Неприятна она тем, что не даёт запускать виртуальную машину (или все машины).
Для себя я выделил три основные причины этой ошибки:
В этой статье мы рассмотрим методы исправления ошибки во всех трех случаях.
Первая причина довольно тривиальна. Существуют технологии аппаратной виртуализации, которые дают возможность использования изолированных гостевых систем (подробнее об отличиях между программной и аппаратной виртуализацией можно прочитать в сети). Если в BIOS компьютера функции аппаратной виртуализации отключены — VirtualBox выдаст ошибку 0x80004005.
Ошибка 0x80004005 в VirtualBox.Для включения аппаратной виртуализации нужно зайти в BIOS и найти пункты Intel Virtualization Technology или AMD-V в зависимости от чипсета.
Названия могут быть и другие. Например, Intel VT , Virtualization Technology или просто Virtualization . Значение параметра должно быть Enabled .
Какого-то строго определенного месторасположения у этого пункта в BIOS нет. Он может быть на вкладке Advanced , System Configuration , Processor или какой-то другой.
Если включение аппаратной виртуализации не помогло, пройдемся по следующим пунктам.
VirtualBox, конечно, далеко не единственное решение в области виртуализации и он может конфликтовать с другим ПО для виртуализации за доступ к гипервизору. Выход в данном случае — удалить другое ПО для виртуализации.
Рассмотрим пример с Hyper-V , который встроен в качестве роли в ОС Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, а также в Профессиональной и Корпоративной редакциях Windows 8, Windows 8.1 и Windows 10.
Для отключения роли Hyper-V необходимо открыть Диспетчер сервера , перейти в раздел Роли и нажать Удалить роли .
Запустится Мастер удаления ролей . Приданные серверу роли будут отмечены галочками. Вам необходимо убрать галочку с Hyper-V.
После удаления сервер потребует перезагрузку.
Любители стучать пальцами по клавишам оценят возможность отключать роли через .
Для этого запустите Windows PowerShell с правами администратора и подгрузите модуль Диспетчера серверов:
Import-Module ServermanagerПосле этого можно работать с Диспетчером серверов из PowerShell. В частности, удалять роли. Для удаления роли Hyper-V введите:
Remove-WindowsFeature Hyper-V -restartПараметр -restart нужен для автоматической перезагрузки и можно обойтись без него.
Альтернативой PowerShell может стать командная строка, которую тоже надо запускать от имени администратора. Удалить Hyper-V поможет следующая команда:
ServerManagerCmd.exe -remove Hyper-V -restartКак и в случае с PowerShell, параметр -restart является необязательным.
Если Вам хочется сохранить настройки Hyper-V или по какой-то причине роль Hyper-V не удаляется из системы (бывает и так, к сожалению), то можно пойти другим путем и отключить использования гипервизора в момент загрузки Windows.
Сделать это можно путем редактирования загрузчика Windows. К сожалению, прошли те времена, когда редактирование загрузчика происходило через изменения простого текстового файла boot.ini. Теперь надо лезть в командную строку и использовать утилиту bcdedit.exe .
Внимание!
При любых операциях с загрузчиком ОС будет разумным сперва сделать резервную копию загрузчика, и только потом вносить изменения.
Запускаем командную строку от имени администратора. Для создания резервной копии используем команду:
bcdedit /export C:\BackupBCD\BCDfileПуть к файлу и имя файла Вы тут можете указать любые. Единственное уточнение — каталог, куда будет выгружен , уже должен существовать. Так что сначала создайте папку (или используйте существующую), а потом запускайте команду.
Если в пути к файлу присутствуют пробелы, нужно использовать кавычки:
bcdedit /export "C:\My BackupBCD\BCDfile"В случае чего загрузчик можно восстановить командой:
bcdedit /import C:\BackupBCD\BCDfileТеперь, когда бэкап загрузчика создан, можно отключить через него использование системой гипервизора.
bcdedit /set hypervisorlaunchtype offПосле этого нужно будет перезагрузить систему. Это приведет к тому, что роль Hyper-V в Windows сохранится, Вы сможете заходить в оболочку Hyper-V, но запустить созданные там виртуальные машины не получится. Зато получится запустить виртуальные машины в VirtualBox.
Для включения использования гипервизора используйте команду:
bcdedit /set hypervisorlaunchtype autoПосле этой команды тоже нужно перезагрузить систему.
Если конфликт между системами виртуализации не наш случай, обратимся к другой возможной причине.
Иногда VirtualBox не может сохранить состояние машины в файл. Такое может быть если файл поврежден или занят другим процессом. В таком случае VirtualBox пытает сохранить состояние машины в файлы с тем же именем, но с добавлением к расширению файла -prev или -tmp на конце. Поэтому, если виртуальная машина не загружается, можно попробовать подгрузить её состояние из этих файлов.
Зайдите в каталоги:
C:\Users\[имя пользователя]\VirtualBox VMs\[имя машины]
C:\Users\[имя пользователя]\.VirtualBox\
Путь к каталогу с машинами может отличаться от дефолтного, если Вы меняли его самостоятельно.
В каталоге с машинами Вы можете обнаружить файлы с.vbox-prev или.vbox-tmp на конце.
Если таковые есть, скопируйте куда-нибудь файл с.vbox на конце, а у файла с.vbox-prev уберите -prev, подменив таким образом файл состояния машины.
Кроме этого, проверьте обе папки на наличие файлов с.xml-prev и.xml-tmp на конце. Если такие найдутся, проверните с ними ту же операцию, что с файлами с расширением.vbox.
P.S. Ну и, наконец, бывает так, что VirtualBox конфликтует с обновлением Windows KB3004394 . Можно попробовать удалить это обновление через Панель управления → Все элементы панели управления → Программы и компоненты → Просмотр установленных обновлений (в разных версиях Windows название пунктов меню немного отличается) или через командную строку от имени администратора командой:
wusa /uninstall /kb:3004394После этого нужно перезагрузить компьютер. Может статься так, что корень проблемы крылся в такой мелочи.