При заміні обладнання комп'ютера або сервера, відновленні з резервної копії або при міграції фізичного хоста в середу віртуалізації (P2V), при першому запуску Windows Server 2008 R2 / Windows 7 може з'явитися синій екран BSOD з помилкою 0x0000007B.
STOP: 0x0000007B (0xFFFFF880009A9928, 0xFFFFFFFFC0000034, 0x0000000000000000, 0x0000000000000000).Даний стоп-код відповідає помилку INACCESSABLE_BOOT_DEVICE і пов'язаний з тим, що контролер жорсткого диска нового сервера (комп'ютера або віртуальної машини) відрізняється від вихідного обладнання. При завантаженні системи не завантажується драйвер, які потрібен для завантаження з нового контролера. Через це Windows не може запуститися.
Адміністратор може зіткнутися з помилкою 0x0000007B в наступних випадках:
- При відновленні ОС з резервної копії на інший фізичний комп'ютер йди віртуальну машину Hyper-V, VMware або VirtualBox (як окремий випадок відновлення з Bare Metal Recovery на інше залізо).
- При міграції фізичної системи за допомогою створення образу комп'ютера (наприклад, за допомогою disk2vhd) і розгортанні з цього vhd образу нової віртуальної машини.
- При перемиканні режиму роботи SATA контролера в BIOS з AHCI на IDE, або навпаки.
- При заміні материнської плати та / або контролера жорсткого диска.
У моєму випадку проблема виникла при міграції фізичного сервера з Windows Server 2008 R2 в середу VMWare. При першому завантаженні ВМ з'явився синій екран.
У режимі налагодження видно, що завантаження Windows зупиняється на етапі завантаження драйвера CLASSPNP.SYS.
Для виправлення проблеми, потрібно завантажитися з установочного диска Windows (не нижче Windows 7/2008 R2) або завантажувального диска (наприклад, DART). У разі використання інсталяційного диска на першому екрані початку установки (вибір мови та розкладки клавіатури) натисніть клавіші 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).
У тому випадку, якщо ви перед виникненням переключили режим роботи SATA контролера на AHCI, потрібно також в розділі msahci встановити Start = 0 (див. Статтю Як включити AHCI в Windows без перевстановлення).
Примітка. Значення Start = 0, означає що дана служба буде запускатися при завантаженні Windows. Start = 3 - ручний запуск службиДля збереження змін у файлі реєстру на диску потрібно встати на розділ
HKEY_LOCAL_MACHINE \ local_hkey і в меню вибрати Unload Hive.
Тепер можете перезавантажити сервер в звичайному режимі. Windows повинна завантажиться нормально і запустить пошук і установку драйверів для нового обладнання.
У разі VMWare залишиться тільки встановити VMWare Tools.
Якщо після цих змін ваша Windows так і не завантажилася стій же помилкою INACCESSABLE_BOOT_DEVICE, значить у вас використовуються якийсь інший тип контролера. Спробуйте в гілці HKEY_LOCAL_MACHINE \ local_hkey \ ControlSet001 \ services змінити значення параметра Start відповідно до таблиці.
служба Windows | Віртуальна машина VMWare | Фізичний ПК з 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 |