Ошибка 0x0000007B (INACCESSABLE_BOOT_DEVICE) при загрузке компьютеру указывает на то, что Windows не может получить доступ к загрузочному диску из-за отсутствия необходимого драйвера или повреждения носителя.
Администратор может столкнуться с ошибкой 0x0000007B в следующих случаях:
- При восстановлении Windows из бэкапа на другой физический компьютер или виртуальную машину Hyper-V, VMware или VirtualBox (как частный случай восстановление из Bare Metal Recovery на другое железо);
- После переносе (клонировании) Windows на новый диск или новый компьютер;
- При миграции физической системы с помощью создании образа компьютера (например, с помощью disk2vhd) и разворачивании из этого vhd образа новой виртуальной машины;
- При переключении режима работы SATA контроллера в BIOS с AHCI на IDE/RAID, или наоборот (в этом случае достаточно открыть настройки BIOS и вернуть исходный режим SATA);
- При замене материнской платы и / или контроллера жесткого диска;
- После обновления BIOS/UEFI или смене настроек.
Чаще всего я сталкивался с ошибкой 0x7b после конвертации физического компьютера с Windows Server 2008 R2/ Windows 7 в виртуальную машину с помощью VMware vCenter Converter. После окончания конвертации Windows на новой ВМ не загружается и на экране появляется BSOD со стоп-кодом:
STOP: 0x0000007B (0xFFFFF880009A9928, 0xFFFFFFFFC0000034, 0x0000000000000000, 0x0000000000000000).
Ошибка INACCESSABLE_BOOT_DEVICE в этом случае вызвана тем, что контроллер жесткого диска нового сервера (компьютера или виртуальной машины) отличается от исходного оборудования. Например, в большинстве гипервизоров для подключения дисков по умолчанию используется SCSI или SAS контроллер, который обычно отключен в исходном образе Windows. Т.е. драйвер lsi_sas.sys установлен, но служба, которая его запускает – отключена. В результате операционная системе не может загрузить необходимый драйвер и загрузка Windows прерывается с BSOD.
В режиме отладки видно, что загрузка Windows останавливается на этапе загрузки драйвера CLASSPNP.SYS.
Для исправления проблемы, нужно загрузиться с установочного диска/ USB флешки с Windows или загрузочного диска (например, MsDaRT). Если вы загрузили компьютер с установочного диска, нужно на первом экране начала установки (выбор языка и раскладки клавиатуры) нажать сочетание клавиш Shift+F10. Должно открыться окно командной строки, в котором нужно выполнить команду:
Regedit.exe
В открывшемся окне редактора реестра выберите на раздел HKEY_LOCAL_MACHINE и нажмите меню File -> Load Hive. На локально диске сервера (не перепутайте его с диском со средой WinPE) выберите файл \Windows\System32\config\SYSTEM. В этом файле хранится системная часть реестра вашей Windows.
Эти действия смонтируют в редактор реестра куст реестра вашей системы с жесткого диска. Укажите временное имя новой ветки (например, local_hkey).
В загруженной ветке перейдите в раздел HKEY_LOCAL_MACHINE\local_hkey\ControlSet001\services\.
Найдите следующие ключи реестра:
- Atapi
- Intelide
- LSI_SAS
В каждом из этих ключей найдите параметр типа REG_DWORD с именем Start и измените его значение на 0 (0x00000000).
Примечание. Значение Start=0, означает что данная служба (и соответвующий драввер) будут загружаться при загрузке Windows. Start=3 – ручной запуск службы.
Если перед возникновением проблемы вы переключили режим работы SATA контроллера на AHCI, нужно также в разделе msahci установить Start=0 (см. статью Как включить AHCI в Windows без переустановки).
Для сохранения изменений в файле реестра на диске нужно выбрать ваш HKEY_LOCAL_MACHINE\local_hkey и в меню выбрать Unload Hive.
Теперь можете перезагрузить сервер в обычном режиме. Windows должна загрузится нормально, при загрузке будет выполнен автоматический поиск и установка драйверов для нового контроллера диска.
Если после данных изменений ваша Windows так и не загрузилась с той же ошибкой INACCESSABLE_BOOT_DEVICE, значит у вас используются какой-то другой тип контроллера. Попробуйте в ветке HKEY_LOCAL_MACHINE\local_hkey\ControlSet001\services изменить значение параметра Start в соответствии с таблицей.
Служба Windows | Виртуальная машина VMWare или HyperV | Физический ПК с Windows x64 с нативным SATA адаптером | Физический ПК с RAID контроллером |
aliide | 3 | 3 | 3 |
amdide | 3 | 3 | 3 |
atapi | 0 | 0 | 0 |
cmdide | 3 | 3 | 3 |
iastorv | 3 | 3 | 3 |
intelide | 0 | 3 | 3 |
msahci | 3 | 0 | 0 |
pciide | 3 | 0 | 3 |
viaide | 3 | 3 | 3 |
LSI_SAS | 0 | 3 | 3 |
Ручная установка драйвера при возникновении ошибки INACCESSABLE_BOOT_DEVICE
Вы можете вручную установить драйверы в ваш офлайн образ Windows. Например, после выполнения миграции хоста через P2V вы можете установить в офлайн образ драйвер для VMware SCSI Disk Controller или драйвер VirtIO (для KVM виртуализации). Для этого скопируйте необходимые драйвера на загрузочную USB флешку и загрузитесь с нее.
Для установки драйвера в офлайн образ Windows (в этом примере он находитмя на диске F:), выполните команду:
dism /image:f:\ /add-driver /driver:vioscsi.inf
В некоторых организациях настроены групповые политики, которые ограничивают установку сторонних драйверов в Windows. Например, с помощью следующих параметров в разделе Computer Configuration -> Administrative Templates -> System -> Device Installation -> Device Installation Restrictions:
- Prevent installation of devices that match any of these device IDs
- Prevent installation of devices using drivers that match these device setup classes
- Prevent installation of removable devices
- Prevent installation of devices not described by other policy settings.
Если эти политики включены, Windows не сможет выполнить автоматическую установки драйвера контроллера. В этом случае нужно
- Загрузить с диска ветку реестра \Windows\System32\config\SYSTEM (как описано выше);
- Затем перейдите в ветку
HKEY_LOCAL_MACHINE\local_hkey\System\ControlSet001\Control\PnP
- Измените значения параметров реестра DisableCDDB и DontStartRawDevices на 0
- Выгрузите куст реестра и перезагрузите компьютер.
Решение для Hyper-V
После восстановления бекапа Windows Server 2008 R2 сделанного с физической машины на виртуальную машину, windows не запускается с ошибкой «STOP: 0x0000007B«.
01. Вставьте в CD/DVD-ROM установочный диск
Windows Server 2008 R2 DVD.
02. Загрузите с него виртуальную машину.
03. В окне «Install Windows», нажмите «Next».
04. Нажмите «Repair your computer»
05. Выберите «Use recovery tools that can help fix problems starting Windows. Select an operating system to repair»
06. Нажмите «
Next»
07. Нажмите «Command Prompt» (командная строка)
08. Введите «regedit», запустится «Registry Editor»
09. Перейдите в «
HKEY_LOCAL_MACHINE»
10. В меню «File» выберите «Load Hive» (Загрузить куст»)
Примечание: Пока не кликнешь на ветку «HKEY_LOCAL_MACHINE»
в Меню не будет активна «Загрузить куст»
11. Выберите там файл «\Windows\System32\Config\SYSTEM»
12. Нажмите «
Open»
13. В поле «Key Name», введите «Recovery»
14. Нажмите «
OK»
15. Перейдите в «HKEY_LOCAL_MACHINE\Recovery\ControlSet001\services\intelide»
16. Откройте свойства ключа «
Start»
17. Измените «Value data» на «0».
18. Нажмите «
OK».
19. Перейдите в «
HKEY_LOCAL_MACHINE\Recovery»
20. В меню нажмите «File» — «Unload Hive»
21. В окне «Confirm Unload Hive» нажмите «Yes»
22. Закройте «
Registry Editor»
23. В окне «System Recovery Options», нажмите «Restart»
После перезагрузки восстановленный Windows должен запуститсяПримечание: Если Windows Server 2008 R2 не запустился то вернитесь к шагу 18 и проверьте следующие параметры реестраHKLM \ Recovery \ System \ CurrentControlSet \ Services \
Имя сервиса = Значение параметра
Start
Aliide = 3
Amdide =3
Atapi = 0
Cmdide = 3
iaStorV = 3
intelide = 0
msahci = 3
pciide = 3
viaide = 3
LSI_SAS = 0
* * * *
Microsoft Visual C++ Redistributable: learn.microsoft.com
* * * *
Ссылки на другие новости:
+ Удаляем пароль Windows 8 (netplwiz)
+ Ошибка 0xc8000222 при установке приложений (WinServ2008)
+ Отключаем Teredo в Windows 7
+ Отключаем планировщик заданий в Windows 7
+ Отключаем и удаляем hiberfil.sys в Windows 7
+ Ручная синхронизация времени
+ Отключение учетных записей при входе в Windows 7
+ Отключаем QoS и сетевой сброс в Windows 7
+ Удаление GPT и создание MBR раздела
+
Windows — Ошибка Event ID10 & ID4107 & ID3036(WMI & Certificates)
+ Windows 7 — Удаляем папку Windows Mail
+ Windows 7 — Очищаем WinSxS
+ Windows 7 — Сбой при загрузке драйвера cdrom
+ Windows 7 — Автозагрузка (Superfetch)
+ Windows 7 — Обновление сетевых папок
+ Windows 7 — Удаление пакета обновления
+ Windows 7 — Error 0x00000057 (Printer)
+ Windows 7 — Сбой при загрузке драйвера cdrom
+ Windows 7 — Ошибка при установке NET Framework 4.7.2
+ Ошибка 80072EFE обновления в Windows
+ Замена материнской платы без переустановки WindowsВот такая ещё история была: Lenovo IdeaPad Y570
_
Теги: soft, windows, server, 2008, восстановление, teredo, netplwiz, hiber, c8000222, 0000007b
Распределенное обучение с TensorFlow и Python
AI_Generated 05.05.2025
В машинном обучении размер имеет значение. С ростом сложности моделей и объема данных одиночный процессор или даже мощная видеокарта уже не справляются с задачей обучения за разумное время. Когда. . .
CRUD API на C# и GraphQL
stackOverflow 05.05.2025
В бэкенд-разработке постоянно возникают новые технологии, призванные решить актуальные проблемы и упростить жизнь программистам. Одной из таких технологий стал GraphQL — язык запросов для API,. . .
Распознавание голоса и речи на C#
UnmanagedCoder 05.05.2025
Интеграция голосового управления в приложения на C# стала намного доступнее благодаря развитию специализированных библиотек и API. При этом многие разработчики до сих пор считают голосовое управление. . .
Реализация своих итераторов в C++
NullReferenced 05.05.2025
Итераторы в C++ — это абстракция, которая связывает весь экосистему Стандартной Библиотеки Шаблонов (STL) в единое целое, позволяя алгоритмам работать с разнородными структурами данных без знания их. . .
Разработка собственного фреймворка для тестирования в C#
UnmanagedCoder 04.05.2025
C# довольно богат готовыми решениями – NUnit, xUnit, MSTest уже давно стали своеобразными динозаврами индустрии. Однако, как и любой динозавр, они не всегда могут протиснуться в узкие коридоры. . .
Распределенная трассировка в Java с помощью OpenTelemetry
Javaican 04.05.2025
Микросервисная архитектура стала краеугольным камнем современной разработки, но вместе с ней пришла и головная боль, знакомая многим — отслеживание прохождения запросов через лабиринт взаимосвязанных. . .
Шаблоны обнаружения сервисов в Kubernetes
Mr. Docker 04.05.2025
Современные Kubernetes-инфраструктуры сталкиваются с серьёзными вызовами. Развертывание в нескольких регионах и облаках одновременно, необходимость обеспечения низкой задержки для глобально. . .
Создаем SPA на C# и Blazor
stackOverflow 04.05.2025
Мир веб-разработки за последние десять лет претерпел коллосальные изменения. Переход от традиционных многостраничных сайтов к одностраничным приложениям (Single Page Applications, SPA) — это. . .
Реализация шаблонов проектирования GoF на C++
NullReferenced 04.05.2025
«Банда четырёх» (Gang of Four или GoF) — Эрих Гамма, Ричард Хелм, Ральф Джонсон и Джон Влиссидес — в 1994 году сформировали канон шаблонов, который выдержал проверку временем. И хотя C++ претерпел. . .
C# и сети: Сокеты, gRPC и SignalR
UnmanagedCoder 04.05.2025
Сетевые технологии не стоят на месте, а вместе с ними эволюционируют и инструменты разработки. В . NET появилось множество решений — от низкоуровневых сокетов, позволяющих управлять каждым байтом. . .
Problems with device drivers , viruses, data corruption, generally triggers Windows error 0x0000007B.
Here at Ibmi Media, as part of our Server Management Services, we regularly help our Customers to solve Windows related errors.
In this context, we shall look into the main causes of this error and how to get rid of it.
More information about Windows error 0x0000007B?
Sometimes, in the process of booting up a Windows Server 2008 R2 for the first time after a hardware replacement or system image restore, you may see an error message as shown below;
STOP: 0x0000007B (0xFFFFF880009A9928, 0xFFFFFFFFFC0000034, 0x0000000000000, 0x00000000000).
This stop code corresponds to the INACCESSABLE_BOOT_DEVICE error and is related to the difference of the hard disk controller of a new server (a computer or a virtual machine) from the original equipment.
In the process of booting booting, the driver necessary to boot from the new controller is not loaded.
What triggers Windows error 0x0000007B?
Below are the common causes for the error 0x0000007B are;
i. When restoring an OS from a backup to another physical computer or a Hyper-V/VMware/VirtualBox virtual machine.
ii. When migrating a physical system using a computer image and deploying a new virtual machine from this image.
iii. After switching the SATA controller mode in BIOS from AHCI to IDE or vice versa
iv. When replacing a motherboard and/or a hard drive controller.
In this case, the problem appeared when migrating a physical server running Windows Server 2008 R2 into VMWare environment. The blue screen appeared at the first startup of the VM.
In the debug mode you can see that Windows boot stops at the stage of loading the CLASSPNP.SYS driver.
How to fix Windows error 0x0000007B?
If the error message just triggered after we installed or made a change to a hard drive controller, you may fix it by Undoing the change.
Depending on the changes we made, some solutions might include:
i. Removing or reconfiguring the newly installed hard drive controller
ii. Starting up with Last Known Good Configuration to undo related registry and driver changes
iii. Using System Restore to undo recent changes
iv. Rolling back the hard drive controller device driver to the version prior to the driver update
Another solution is to verify that the SCSI chain is correctly terminated, assuming that we are using SCSI hard drives in the computer. Incorrect SCSI termination has been known to cause STOP 0x0000007B errors.
Additionally, it is also important to verify that the hard drive is properly installed. An improperly installed hard drive could cause this error.
Make sure you scan the computer for viruses. Certain malware that infects the master boot record (MBR) or boot sector can cause STOP 0x0000007B errors.
Also make sure that the virus scanning software is updated and configured to scan the MBR and boot sector.
Another solution is to update the drivers for the hard drive controller. If the drivers to the hard drive controller are outdated, incorrect, or corrupted, the STOP 0x0000007B error will likely occur.
How to Change the SATA mode in BIOS to IDE mode?
Disabling some of the advanced features of SATA drives in BIOS could stop the STOP 0x0000007B error from showing up, especially if we are seeing it in Windows installation.
Depending on the BIOS make and version, SATA mode may be referred to as AHCI mode and IDE mode may be referred to as either Legacy, ATA, or Compatibility Mode.
While not a common solution, we might also want to try the reverse: see if IDE mode is selected in BIOS and if so, change it to AHCI, especially if we see the STOP 0x0000007B error in Windows.
If we see this STOP error after making the BIOS change on a Windows computer, we might need to enable the AHCI disk driver.
How to run chkdsk on the hard drive?
If the boot volume is corrupted, the chkdsk command might repair the corruption.
We will likely have to run chkdsk from the Recovery Console.
This will likely be the solution if the second hexadecimal number after the STOP code is 0xC0000032.
Another option here is to run the fixmbr command to create a new master boot record. A corrupted master boot record might be causing the STOP 0x0000007B error.
This will likely be the solution if the second hexadecimal number after the STOP code is 0xC000000E.
Additionally, it is also a good option to clear the CMOS. Sometimes the STOP 0x0000007B error is caused by a BIOS memory issue. Clearing the CMOS could solve that problem.
Another option is to update the BIOS. In some situations, an outdated BIOS could cause this error due to incompatibilities with a hard drive controller.
Also, update the hard drive controller’s firmware if possible. Just as with the BIOS in the previous step, an incompatibility could be causing the 0x7B error and a firmware update from the manufacturer may correct the problem
[Need urgent support in fixing windows error 0x0000007B? – We are available 24*7]
Error 0x0000007B (INACCESSABLE_BOOT_DEVICE) at computer startup indicates that Windows cannot access the boot drive because a required driver is missing or the disk is corrupt.
An administrator may encounter the 0x0000007B
error in the following cases
- When you restore Windows from a backup to another physical computer or a Hyper-V, VMware, or VirtualBox virtual machine (or in bare metal recovery scenarios to other hardware);
- During P2V or V2V migrations;
- After moving (cloning) Windows to a new hard drive or computer;
- If you are using a Windows image to migrate a physical machine (for example, using disk2vhd) and deploying a new virtual machine from that VHD image;
- After switching the SATA controller mode in BIOS from AHCI to IDE/RAID or vice versa (in this case, simply open the BIOS settings and restore the original SATA settings);
- When replacing a motherboard and/or hard disk controller;
- After the BIOS/UEFI firmware has been updated or the settings changed.
Stop Error 0x0000007B After Converting Physical Host to Virtual Machine
Most commonly, I encountered the error 0x7b after converting a physical computer running Windows Server 2008 R2 or Windows 7 to a virtual machine using VMware vCenter Converter. After the conversion is complete, Windows won’t boot on the new VM and a BSOD (Blue Screen of Death) with a stop code will appear on the screen:
STOP: 0x0000007B (0xFFFFF880009A9928, 0xFFFFFFFFC0000034, 0x0000000000000000, 0x0000000000000000).
The INACCESSABLE_BOOT_DEVICE error in this case is caused by the fact that the hard disk controller of the new server (computer or virtual machine) is different from the original hardware. For example, most hypervisors by default use a SCSI or SAS controller to connect virtual hard disks, which is disabled in Windows by default. The lsi_sas.sys driver is installed, but the service it runs is disabled. As a result, the operating system won’t be able to load the required controller driver, and Windows will stop booting with a BSOD.
In debug mode, you can see that Windows boot stops at the CLASSPNP.SYS driver loading stage.
To fix the 0x0000007B error, you need to boot from any Windows installation media or a boot disk (for example, MsDaRT). If you have booted your computer from the install media, you will need to press Shift + F10
on the first screen of the installation wizard (then select a language and keyboard layout). The command prompt window will appear and you will need to run the command:
Regedit.exe
Navigate to the HKEY_LOCAL_MACHINE registry hive and select File -> Load Hive in the Registry Editor window. Select the \Windows\System32\config\SYSTEM file on the local server drive (don’t confuse it with the WinPE drive). This file stores the system part of your Windows registry.
These steps will mount your SYSTEM registry hive from your hard drive into Registry Editor. Enter a temporary name for the new registry hive (for example, use the name local_hkey).
Go to the HKEY_LOCAL_MACHINE\local_hkey\ControlSet001\services\ registry key in the hive that you have mounted.
Find these registry keys:
- Atapi;
- Intelide;
- LSI_SAS.
Find the REG_DWORD parameter called Start and change it to 0 (0x0000000000) in each of these keys.
Note. A value of Start=0 means that this service (and the corresponding driver) will be loaded at Windows startup. A value of Start=3 means that the service should be started manually.
If you had set your SATA controller mode to AHCI before this error occurred, you should also set Start = 0 in the msahci section.
To save the changes in the local registry file on the disk, select your registry key HKEY_LOCAL_MACHINE\local_hkey and click Unload Hive from the menu.
Now you can restart your server. Windows should boot normally. It will automatically search for and install drivers for your new disk controller.
If after making these changes your Windows still does not boot with the same INACCESSABLE_BOOT_DEVICE error, it means you are using some other type of disk controller.
Try to change the value of the Start parameter in the HKEY_LOCAL_MACHINE\local_hkey\ControlSet001\services
key according to the table below.
Windows Service Name | VMWare or Hype-V Virtual Machine | Physical PC Running Windows x64 with Native SATA Adapter | Physical PC with RAID Controller |
aliide | 3 | 3 | 3 |
amdide | 3 | 3 | 3 |
atapi | 0 | 0 | 0 |
cmdide | 3 | 3 | 3 |
iastorv | 3 | 3 | 3 |
intelide | 0 | 3 | 3 |
msahci | 3 | 0 | 0 |
pciide | 3 | 0 | 3 |
viaide | 3 | 3 | 3 |
LSI_SAS | 0 | 3 | 3 |
How to Manually Install the Driver When an INACCESSABLE_BOOT_DEVICE Error Occurs
You can manually install the drivers into your offline Windows image. For example, after performing a P2V host migration, you can install the VMware SCSI Disk Controller or the VirtIO driver (for KVM virtualization) to an offline Windows image. To do this, copy the necessary drivers to a bootable USB flash drive, boot from it, and open a command prompt.
To install the driver to an offline Windows image (in this example it is on the F: drive), run the command
dism /image:f:\ /add-driver /driver:vioscsi.inf
Some organizations have configured Group Policies that restrict installing third-party drivers on Windows. For example, with the following options under Computer Configuration -> Administrative Templates -> System -> Device Installation -> Device Installation Restrictions:
- Prevent installation of devices that match any of these device IDs
- Prevent installation of devices using drivers that match these device setup classes
- Prevent installation of removable devices
- Prevent installation of devices not described by other policy settings
Windows cannot install the controller driver automatically if these policies are enabled.
In this case, you will need:
- Boot your computer from the boot media and load the
\Windows\System32\config\SYSTEM
registry hive from the local drive (as described above); - Then navigate to the following registry key
HKEY_LOCAL_MACHINE\local_hkey\System\ControlSet001\Control\Pn
P - Change the DisableCDDB and DontStartRawDevices registry values to
0
- Unload the registry hive and restart your computer.