Как исправить ошибку e fail 0x80004005 virtualbox
WINDOWS

Как исправить ошибку e fail 0x80004005 virtualbox

Ошибка E FAIL (0x80004005) в Oracle VM VirtualBox не позволяет запустить сеанс виртуальной машины. Существует несколько типов этих ошибок, и в отдельных случаях вы увидите разные сообщения, сопровождающие код ошибки.

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





Причины ошибки с кодом: E FAIL (0x80004005)

Вот некоторые из вероятных причин ошибки: E fail (0x80004005):

  • Отсутствует файл виртуальной машины.
  • Гипервизор, мешающий работе VirtualBox.
  • Дублируйте значения конфигурации в файле vbox.
  • Ошибки в сборках VirtualBox.
  • Несовместимость с операционной системой.
  • Отсутствует драйвер VirtualBox.
  • Вмешательство сторонних приложений.
  • Неисправная DLL из-за графического драйвера.
  • Неправильная конфигурация сетевого адаптера.

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

Код ошибки: E FAIL (0x80004005) на конкретной виртуальной машине

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

Это связано с тем, что VirtualBox сохраняет все действия во временный файл во время своей работы и переименовывает его в файл виртуальной машины во время обычного завершения работы.

Вы можете устранить эту проблему, переименовав файл вручную. Вот как вы можете это сделать:

  1. Перейдите в папку с файлом вашей виртуальной машины.
  2. В Windows обычно это C:\Users\<username>\.VirtualBox\Machines\<virtualmachine>. Здесь замените <имя пользователя> на имя вашего профиля пользователя, а <виртуальную машину> - на виртуальную машину, на которой вы получаете эту ошибку.
  3. Если <virtualmachine>.vbox он не существует, скопируйте <virtualmachine>.vbox-tmp и назовите скопированный файл как <virtualmachine>.vbox
Примечание: в старых версиях расширение было .xml вместо .vbox.


Код ошибки: E FAIL (0x80004005) из-за гипервизора

Если ошибка вызвана гипервизором, вы, скорее всего, увидите в сообщениях об ошибках VT-x или Hyper-V. Это потому, что гипервизор конфликтует с использованием VirtualBox ресурсов виртуализации в вашей системе. Попробуйте приведенные ниже методы для устранения этой проблемы:

Включить виртуализацию в BIOS / UEFI

Для работы VirtualBox необходимо включить виртуализацию в вашей системе. Вы можете сделать это в настройках вашего BIOS / UEFI.

Обновить VirtualBox

Раньше виртуальные машины VirtualBox не запускались, когда был активен Hypervision (Hyper-V). Таким образом, было невозможно использовать VirtualBox вместе с любыми приложениями, которым требовался Hyper-V, такими как Docker.

Однако в VirtualBox 6 была введена экспериментальная поддержка Hyper-V. Итак, обновите VirtualBox до последней версии, чтобы избежать этой проблемы.

Перезапустите гипервизор

Если вы уже используете VirtualBox версии 6 +, возможно, что гипервизор работает некорректно. Сброс конфигурации типа запуска должен устранить эту проблему. Вот как вы можете это сделать:

  1. Откройте команду Run.
  2. Введите cmd и нажмите Ctrl + Shift + Enter. Он загрузит командную строку с повышенными правами.
  3. Введите следующую команду и нажмите Enter, чтобы выполнить ее: bcdedit /set hypervisorlaunchtype off
     
  4. Если у вас более одной операционной системы, используйте команду bcdedit /set {current} hypervisorlaunchtype off
  5. Перезагрузите компьютер.
  6. Снова откройте командную строку с повышенными правами и введите: bcdedit /set hypervisorlaunchtype auto

Перезагрузите компьютер и снова откройте виртуальную машину.

Отключить процессы гипервизора

Как мы упоминали выше, предыдущие версии, включая VirtualBox 5.x, не поддерживают запущенные виртуальные машины с активным Hypervision. Hyper-V забирает большую часть ресурсов виртуализации и не позволяет VirtualBox запускать виртуальную машину.

Итак, вы должны отключить все процессы Hypervision, чтобы исправить эту ошибку в этих сборках VirtualBox. Для этого,

  1. Откройте диалоговое окно "Выполнить" и введите optionalfeatures. Он направит вас к мастеру включения или выключения функций Windows .
  2. Найдите и снимите флажки со следующих параметров:
    • Hyper-V
    • Контейнеры
    • Платформа Windows Hypervision
    • Подсистема Windows для Linux
       
  3. Закройте мастер и откройте командную строку с повышенными правами.
  4. Введите следующую команду: bcdedit /set hypervisorlaunchtype off

Перезагрузите компьютер и проверьте, сохраняется ли ошибка.

Отключить защиту устройства или учетных данных

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

Вы можете использовать один из следующих методов, чтобы отключить эту функцию:

Через командную строку:

Откройте командную строку с повышенными правами и введите следующие команды:

mountvol X: /s
copy %WINDIR%\System32\SecConfig.efi X:\EFI\Microsoft\Boot\SecConfig.efi /Y
bcdedit /create {0cb3b571-2f2e-4343-a879-d86a476d7215} /d "DebugTool" /application osloader
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} path "\EFI\Microsoft\Boot\SecConfig.efi"
bcdedit /set {bootmgr} bootsequence {0cb3b571-2f2e-4343-a879-d86a476d7215}
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISO
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} device partition=X:
mountvol X: /d
Примечание: Замените X на неиспользуемый диск.


С помощью средства защиты устройств и защиты учетных данных для обеспечения готовности оборудования:

  1. Загрузите инструмент Защиты устройств и учетных данных для обеспечения готовности оборудования.
  2. Откройте PowerShell от имени администратора и перейдите к местоположению загруженного файла.
  3. Введите команду DG_Readiness_Tool_v3.6.ps1 -Disable -AutoReboot при замене версии v3.6 на версию средства обеспечения готовности.

Отключить целостность памяти

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

Вы можете сделать это, следуя любому из способов, упомянутых ниже:

Через настройки:

  1. Нажмите Win + I, чтобы запустить настройки.
  2. Перейдите в раздел Обновления и безопасность > Безопасность Windows > Безопасность устройства.
     
  3. Щелкните сведения об изоляции ядра.
  4. Отключите целостность памяти.
     

Через редактор групповой политики:

  1. Введите gpedit.msc в команду Выполнить.
  2. Перейдите по: Конфигурация компьютера > Административные шаблоны > Система > Защита устройства.
  3. Найдите и дважды щелкните Включить безопасность на основе виртуализации.
  4. Установите флажок Отключено и нажмите Ok.

Если вы используете домашнюю версию Windows, вот как вы можете включить Gpedit на своем компьютере.



Код ошибки: E FAIL (0x80004005) из-за дублирования значений конфигурации

В этом случае вы увидите сообщение “Повторяющиеся значения конфигурации’/CPUM/CMPXCHG16B’ и ‘/CPUM/IsaExts/CMPXCHG16B’ – пожалуйста, удалите первое! “. Точно так же, как говорится в сообщении, вам нужно удалить предыдущую инструкцию из файла виртуальной машины vbox. Чтобы сделать это в Windows,

  1. Откройте командную строку с повышенными правами.
  2. Введите следующие команды:
    • cd “%systemdrive%\Program Files\Oracle\VirtualBox”
    • VBoxManage.exe list vms
  3. Найдите имя компьютера VBOX, на котором вы получили ошибку E_FAIL (0x80004005).
  4. Введите команду: VBoxManage.exe setextradata “VBOX Machine” VBoxInternal/CPUM/CMPXCHG16B при замене “VBOX Machine” именем из предыдущего шага.
  5. Откройте VirtualBox и снова запустите виртуальную машину и проверьте, сохраняется ли ошибка.
  6. Если ошибка появится снова, закройте VirtualBox, перейдите в командную строку и введите: VBoxManage.exe setextradata global VBoxInternal/CPUM/CMPXCHG16B

Другие решения кода ошибки: E_FAIL (0x80004005)

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

Запустите процесс вручную

Если открытие виртуальной машины или монтирование iso-файла через VirtualBox вызывает ошибку, вы можете попытаться выполнить эти процессы вручную.

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

Отменить сеанс или снимок

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

Отключить / удалить мешающие стороны

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

Наиболее распространенные сторонние программы, ответственные за это, включают IBM Security Trusteer Rapport и Cyclance Protect. Известно, что многие сторонние антивирусные программы также вызывают эту проблему. Итак, обязательно отключите или удалите эти программы.

Некоторые пользователи также упоминали, что они столкнулись с этой ошибкой после запуска средства проверки драйверов. Чтобы отключить эту функцию, запустите командную строку от имени администратора и введите:verifier /reset

Переустановите до последней версии

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

В Windows:

  1. Загрузите последнюю версию VirtualBox вместе с соответствующим пакетом расширения.
  2. Удалите сторонний антивирус, если вы еще этого не сделали.
  3. Перейдите в Панель управления > Программы и компоненты> Удалите программу и удалите свое приложение VirtualBox .
     
  4. Перейдите к файлу установщика с шага 1.
  5. Щелкните его правой кнопкой мыши и выберите Запуск от имени администратора.
  6. Следуйте инструкциям на экране.
  7. На последней странице установки установите флажок Запустить Oracle VM VirtualBox...после установки и нажмите Готово.
  8. В VirtualBox выберите Файл > Настройки > Расширения.
  9. Щелкните значок с оранжевой стрелкой вниз и выберите ExtPack.
     

В Linux:

Откройте терминал и введите следующие команды:

sudo apt-get update
sudo apt-get purge virtualbox
sudo apt-get purge virtualbox-ext-pack
sudo apt-get install virtualbox
sudo apt-get install virtualbox-ext-pack

Перезапустите VirtualBox и проверьте, не возникает ли ошибка 0x80004005.

Откат к старой версии

Последние версии VirtualBox больше не поддерживают старые операционные системы, такие как Windows 7. В таких случаях вам придется выполнить откат к более ранней версии VirtualBox. Проверьте, какая версия работает, и загрузите ее установщик. Затем установите его, используя шаги из описанного выше метода.

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

Сброс сетевых адаптеров

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

  1. Выберите свою виртуальную машину и нажмите Настройки.
  2. Перейдите в "Сеть " и снимите флажок "Включить сетевой адаптер".
     
  3. Запустите виртуальную машину, пока сетевой адаптер отключен.
  4. Закройте виртуальную машину должным образом и снова включите сетевой адаптер.

Теперь снова запустите виртуальную машину и проверьте, не повторяется ли ошибка.

Вы также можете ввести следующие команды в PowerShell для сброса сетевых адаптеров для VirtualBox:disable-netadapter -InterfaceDescription "VirtualBox*" -confirm:$falseenable-netadapter -InterfaceDescription "VirtualBox*" -confirm:$false

Установите драйвер VirtualBox

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

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

  1. Перейдите в папку установки драйвера.
  2. При установке по умолчанию в Windows он должен быть в: C:\Program Files\Oracle\VirtualBox\drivers\vboxdrv
  3. Щелкните правой кнопкой мыши VBocDrv.inf и выберите Установить.
     

Обновите графические драйверы

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

  1. Введите devmgmt.msc в команде Run.
  2. Разверните "Адаптеры отображения " и щелкните правой кнопкой мыши на своем графическом устройстве.
  3. Выберите Обновить драйвер.
     
  4. Нажмите автоматический поиск драйверов.

Перезагрузите компьютер.

Если ваш графический драйвер полностью обновлен, вы можете удалить его и перезагрузить систему, чтобы переустановить драйвер. Это исправит любые незначительные ошибки, присутствующие в драйвере.

Исправить повреждение системы

Отсутствующие или поврежденные DLL-файлы ответственны за несколько системных ошибок и ошибок приложений. Если вы столкнулись с ошибкой E FAIL (0x80004005), стоит запустить средство проверки системных файлов для восстановления DLL-файлов.

Комментарии (0)
Добавить комментарий