Устранение ошибок 0xc000000e при загрузке Windows с полным шифрованием диска Bitlocker
7768
Siguza
Примечание. Первоначально я думал, что проблема в BCD, что оказалось не так.
Первоначально мой ноутбук был настроен следующим образом:
Раздел объемом 300 ГБ с OS X 10.10 и встроенным шифрованием полного диска (FileVault).
Раздел 200 ГБ с Windows 10 и встроенным шифрованием полного диска (BitLocker).
REFInd менеджер загрузки установлен на ESP в /EFI/boot.
Менеджер загрузки Microsoft, установленный на ESP в /EFI/Microsoft/Boot.
Два дня назад я сократил раздел OS X до 200 ГБ и добавил раздел 100 ГБ, на котором я установил Ubuntu. С тех пор я не могу загрузить Windows. При входе в менеджер загрузки Windows мне все еще предлагается ввести пароль, но после этого я получаю экран с надписью
Ваш ПК / Устройство нуждается в ремонте
Произошла непредвиденная ошибка.
Код ошибки: 0xc000000e
Затем я вставил установочный диск Windows 10 и начал проверять раздел из командной строки ( ShiftF10). Но diskpartоказалось не в состоянии смонтировать раздел, потому что он, видимо, работает на MBR. (Я удостоверился, что загрузил установочный диск в режиме EFI (через раздел ручной загрузки в rEFInd), и поэтому я ожидал diskpartработать на GPT, ну да ладно ...)
Изначально MBR содержит четыре раздела:
ESP
Macintosh HD
Восстановление HD
УЧЕБНЫЙ ЛАГЕРЬ
GPT дополнительно содержал раздел восстановления BitLocker после BOOTCAMP. Оказалось, что добавление раздела Linux изменило, вытолкнуло BOOTCAMP из списка и сделало «Linux HD» четвертым разделом. Я просто настроил MBR, чтобы иметь последнюю точку входа в BOOTCAMP снова, таким образом «пропуская» раздел Linux.
После этого я все еще мог загружать OS X и Ubuntu, и теперь я мог также смонтировать раздел Windows diskpart. И мне удалось разблокировать раздел с
manage-bde -unlock W: -Password
доказывая, что 1) я не испортил MBR, и 2) раздел все еще не поврежден.
В свете этого я почти уверен, что проблема заключается в BCR. По причинам, которые до сих пор неясны для меня, я не могу смонтировать ESP с установочного диска - попытка назначить букву диска первому разделу диска 0 говорит мне, что «не указан том», а list volumeтолько перечисляет все, что уже смонтировано. bootrec /rebuildbcdтакже ужасно терпит неудачу, удаляя файл BCD с установочного диска . Однако я могу просто скопировать BCD на установочный диск и использовать bcdeditна нем.
Но после помещения этого BCD-файла обратно в мой ESP, менеджер загрузки Windows даже не запрашивает у меня пароль, а вместо этого сразу отображает другую ошибку, говоря:
Ваш ПК / Устройство нуждается в ремонте.
Не удалось загрузить приложение или операционную систему, поскольку требуемый файл отсутствует или содержит ошибки.
Файл: \ Windows \ system32 \ winload.efi Код ошибки: 0xc0000225
Я попытался установить deviceи osdeviceдо и после расшифровки W:диска, с тем же результатом. Настройка deviceдля также не имеет значения. Теперь я уверен, что это был шаг назад, потому что он даже не спрашивает мой пароль.
Я также заметил, что даже при запуске было bcdedit /store BCDвнесено довольно много изменений в файл, учитывая тот факт, что не было никаких изменений данных. Среди прочего, файл, очевидно, будет содержать свой собственный путь, как Volume1\EFI\Microsoft\Boot\BCDдля исходного BCD-файла, так и ??\C:\BCDдля моего измененного файла. Сначала я волновался, что это каким-то образом «осквернит» файл, но я запустил тест, изменив descriptionего на Windows 42, что, опять же, вызвало довольно много изменений в файле, но менеджер загрузки Windows по-прежнему просил меня пароль при использовании этого файла, поэтому ни пользовательское расположение файла не «омрачает» файл, ни используемый bcdeditмной файл не повреждены.
Теперь наконец мой вопрос:
Как я могу восстановить мой BCD? Или, если это не проблема, тогда что и как я могу это исправить?
Дополнительная информация:
diskutil list
/dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *500.3 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_CoreStorage 200.4 GB disk0s2 3: Apple_Boot Recovery HD 650.1 MB disk0s3 4: Microsoft Basic Data 99.0 GB disk0s4 5: Microsoft Basic Data 199.7 GB disk0s5 6: DE94BBA4-06D1-4D40-A16A-BFD50179D6AC 363.9 MB disk0s6 /dev/disk1 #: TYPE NAME SIZE IDENTIFIER 0: Apple_HFS Macintosh HD *200.0 GB disk1 Logical Volume on disk0s2 4A45027B-2703-4C7D-816E-3419DE0F0F61 Unlocked Encrypted
sudo gpt show -l /dev/disk0
gpt show: /dev/disk0: Suspicious MBR at sector 0 start size index contents 0 1 MBR 1 1 Pri GPT header 2 32 Pri GPT table 34 6 40 409600 1 GPT part - "EFI System Partition" 409640 391334208 2 GPT part - "Customer" 391743848 1269760 3 GPT part - "Recovery HD" 393013608 1688 393015296 193355776 4 GPT part - "Linux HD" 586371072 2048 586373120 390019148 5 GPT part - "BOOTCAMP" 976392268 1972 976394240 710656 6 GPT part - "" 977104896 131 977105027 32 Sec GPT table 977105059 1 Sec GPT header
Менеджер загрузки Windows с оригинальной BCD после ввода моего пароля:
Диспетчер загрузки Windows с измененным BCD:
Обновление 1:
Я попытался пометить BOOTCAMP как «загрузочный» в MBR, без каких-либо изменений.
1 ответ на вопрос
6
Siguza
BCD на самом деле был в порядке, именно MBR вызывал все проблемы.
Я уже расшифровал свой диск [1] и пытался переустановить Windows, но при выборе диска у меня появилось всплывающее окно: «Этот жесткий диск использует MBR, но системы на основе EFI могут быть установлены только на GPT-диски». Очевидно, что в Windows MBR имеет приоритет над GPT.
Я пошел дальше и заменил мой MBR на «защитный», используя
sudo gdisk /dev/disk0 # On Linux, use /dev/sda r # Recovery/transformation x # Expert mode n # New protective MBR w # Write changes to disk y # Yes (confirm)
(В Linux gdiskдолжен быть установлен по умолчанию (в противном случае попробуйте sudo apt-get install gdisk), на Mac вы можете получить его отсюда .)
Это наконец решило мою проблему.
[1] Кажется, что на самом деле это не нужно, но для записи: при условии, что ваш зашифрованный диск помечен W:, сначала разблокируйте его из командной строки установочного диска, затем запустите manage-bde -off W:, время от времени проверяйте ход выполнения manage-bde -status W:и перезагружайтесь после шифрования Хиты 0%.
Вы действительно спасли меня сегодня! :) Честно говоря, я хотел бы дать вам больше очков! Еще одна незначительная вещь (в основном, чтобы дать этому комментарию повод для существования), вы * можете * еще более четко указать, что исправление включает * только * вещь `gdisk` и что нет необходимости расшифровывать ваш раздел BitLocker, даже если это было то, как вы нашли решение. Это немного смутило меня. Во всяком случае, у меня нет ничего, кроме благодарности за публикацию этого, фу, Спасибо большое !!
Andreas Magnusson 7 лет назад
1
Спасибо, я обновил свой ответ. И пожалуйста, мужик. :) Я не желаю, чтобы кто-то должен был понять это для себя.
Siguza 7 лет назад
0