Ошибка 0x8007007E - 0x40008 на этапе SECOND_BOOT в Windows: решение
Симптомы ошибки обновления 0x8007007E - 0x40008
При попытке выполнить функциональное обновление (In-place Upgrade) до новой версии Windows 10 или Windows 11 процесс обновления доходит до 75–85%, компьютер уходит на вторую перезагрузку, после чего происходит автоматический откат изменений. После возврата на рабочий стол появляется уведомление: Ошибка 0x8007007E - 0x40008. Ошибка на этапе SECOND_BOOT во время операции MIGRATE_DATA.
| Журнал | Сообщение / Код | Значение |
|---|---|---|
| setupact.log | 0x8007007E (ERROR_MOD_NOT_FOUND) | Не найден указанный DLL-модуль, требуемый для миграции профилей или драйверов |
| setuperr.log | SPExecutionPhase_SecondBoot failed | Сбой фазы инициализации нового ядра ОС после окончательного переноса системных данных |
| MigLog.xml | Failed to gather / apply system registry hive | Блокировка доступа к веткам реестра или сторонним службам виртуализации |
Алгоритм устранения ошибки фазы SECOND_BOOT
Код 0x8007007E означает «Не найден указанный модуль» (ERROR_MOD_NOT_FOUND). Ошибка возникает, когда установщик пытается загрузить отсутствующий системный драйвер или DLL из реестровых ключей автозапуска.
- Удалите устаревшие фильтры и виртуальные драйверы: деинсталлируйте софт, создающий низкоуровневые хуки: виртуальные диски (Daemon Tools, Alcohol 120%), старые VPN-клиенты (Cisco AnyConnect, OpenVPN TAP), утилиты разгона и антивирусы.
- Очистите поврежденные драйверы в хранилище DriverStore:
# Проверьте список сторонних драйверов:pnputil /enum-drivers# Удалите проблемные или дублирующиеся драйверы:pnputil /delete-driver oemXX.inf /uninstall /force - Исправьте поврежденную системную библиотеку Windows Update:
DISM /Online /Cleanup-Image /RestoreHealth; sfc /scannow - Очистите временные каталоги развертывания Windows Setup:
Remove-Item -Path "C:\$WINDOWS.~BT" -Recurse -Force -ErrorAction SilentlyContinue; Remove-Item -Path "C:\$Windows.~WS" -Recurse -Force -ErrorAction SilentlyContinue - Запустите обновление автономно через ISO-образ: скачайте официальный ISO-образ, смонтируйте его в Проводнике, отключите сетевой кабель (Интернет) и запустите
setup.exe, выбрав пункт «Не загружать обновления драйверов сейчас».
Точная локализация: Откройте в Блокноте файл C:\$WINDOWS.~BT\Sources\Panther\setuperr.log. Найдите последние 10 строк. Там будет указано конкретное имя сбойной библиотеки DLL или драйвера (например, wlanres.dll или драйвер античита), вызвавшего сбой 0x8007007E.
Частые вопросы (FAQ)
Что представляет собой фаза SECOND_BOOT?
Это финальный этап апгрейда Windows, когда операционная система загружается уже в новую установленную среду, применяет миграцию пользовательских профилей (MIGRATE_DATA) и инициализирует драйверы оборудования.
Почему отключение Интернета помогает обойти ошибку?
При активном сетевом соединении инсталлятор пытается на лету подтянуть с серверов Microsoft новые версии конфликтующих драйверов, что провоцирует ошибку их регистрации.
Как очистить реестр от битых ссылок на отсутствующие службы?
Изучите ветку HKLM\SYSTEM\CurrentControlSet\Services. Если путь ImagePath указывает на отсутствующий файл, служба вызовет падение мигратора.
Остаются ли пользовательские файлы целыми при откате?
Да, защитный механизм Windows Setup при ошибках этапа SECOND_BOOT гарантированно производит полный откат (Rollback) к предыдущему состоянию системы без потери пользовательских данных.