Якщо видаляється завантажувального EFI розділу в Windows 10/8/7

У цій статті ми покажемо, як вручну відновити випадково видалений завантажувальний розділ Windows на UEFI системі. Спочатку в статті був описаний мій досвід з відновлення завантажувального EFI розділу на Windows 7, проте стаття актуальна і для сучасних операційних систем Microsoft (від Windows 7 і до Windows 10). Вона не раз виручала мене, після випадкового форматування або видалення EFI розділу в Windows 10. У цій статті ми покажемо простий спосіб ручного пересозданія завантажувального EFI і MSR розділів в Windows.

Отже, припустимо, що якимось чином випадково (або не дуже випадково, наприклад при спробі видалити з диска OEM розділи виробника) був видалений або відформатований завантажувальний EFI розділ на UEFI системі (НЕ BIOS), в результаті чого Windows 10 / 8.1 / 7 перестала завантажуватися, циклічно пропонуючи вибрати завантажувальний пристрій (Reboot and select proper boot device or insert boot media in selected). Розберемося чи можна відновити працездатність Windows при видаленні розділу з Boot Manager без переустановлення системи.

попередження. Інструкція передбачає роботу з розділами диска і не призначена новачкам. У разі невірної інтерпретації команд, ви можете випадково видалити всі дані на жорсткому диску. Також настійно рекомендується створити резервну копію важливих даних на окремому носії.

зміст:

  • Структура розділів на GPT диску
  • Вручну створюємо EFI і MSR розділи на GPT диску
  • Відновлення EFI завантажувач і BCD в Windows

Структура розділів на GPT диску

Розглянемо, як повинна виглядати таблиця розділів завантажувального жорсткого диска з GPT розміткою на UEFI системі. Як мінімум повинні бути присутніми наступні розділи:

  • Системний розділ EFI (EFI System Partition або ESP - Extensible Firmware Interface) - 100 Мб (тип розділу - EFI).
  • Резервний розділ Майкрософт - 128 Мб (тип розділу - MSR).
  • Основний розділ Windows - розділ з Windows.

Це саме мінімальна конфігурація. Ці розділи створює інсталятор Windows при установці системи на нерозмічену диск. Виробники ПК або самі користувачі можуть додатково створювати власні розділи, що містять, наприклад середовище відновлення Windows у файлі winre.wim (Windows RE), розділ з резервним чином системи від виробника (дозволяє відкотиться до вихідного стану комп'ютера), призначені для користувача розділи і т.д.

розділ EFI c файлової системою Fat32 є обов'язковим на дисках з GPT розміткою на UEFI системах. Даний розділ, за аналогією з розділом System Reserved на дисках з MSR розміткою, зберігає сховище конфігурації завантаження (BCD) і ряд файлів, необхідних для завантаження Windows. При завантаженні комп'ютера середу UEFI завантажує з розділу EFI (ESP) завантажувач (EFI \ Microsoft \ Boot \bootmgfw.efi) І передає управління йому. Якщо цей розділ видалений, завантажити ОС можна.

MSR розділ на GPT диску використовується для спрощення управління розділами і використовується для службових операцій (наприклад, при конвертації диска з простого в динамічний). Це резервний розділ, якому не призначається код розділу. На цьому розділі можна зберігати дані користувача. У Windows 10 розмір MSR розділу - всього 16 Мб (в Windows 8.1 розмір MSR розділу - 128 Мб), файлова система - NTFS.

Порада. Для установки Windows на комп'ютерах з підтримкою UEFI знадобиться оригінальний DVD або спеціально підготовлена ​​завантажувальна флешка з Windows 7, Win 8.1 / Serve 2012 або Win 10/2016.

Вручну створюємо EFI і MSR розділи на GPT диску

Оскільки система коректно не завантажується, нам знадобиться інсталяційний диск з Windows 10 (Win 8 або 7) або будь-який інший завантажувальний диск. Отже, завантажується з інсталяційного диска і на екрані початку установки натискаємо комбінацію клавіш Shift+F10. Повинно відкритися вікно командного рядка:

Запустимо утиліту управління дисками і розділами:

Diskpart

Виведемо список жорстких дисків в системі (в цьому прикладі він один, disk 0. зірочка (*) В стовпці Gpt означає, що диск використовує GPT таблицю розділів).

list disk

Виберемо цей диск:

Select disk 0

Виведемо список розділів на диску:

List partition

У нашому прикладі в системі залишилося всього 2 розділу:

  • Розділ MSR - 128 Мб
  • Системний розділ Windows - 9 Гб

Як ми бачимо, розділ EFI відсутня (вилучено).

Наше завдання видалити залишився MSR розділ, так щоб на диску залишилося неразмечено як мінімум 228 Мб вільного місця (для розділів MSR і EFI). Видалити залишився розділ можна за допомогою графічної GParted або безпосередньо з командного рядка (саме так і вчинимо).

важливо! Тут будьте максимально уважними та не видалите випадково розділ з Windows або розділи з одними даними (якщо такі є).

Вибираємо розділ для видалення:

Select partition 1
І видаляємо його:
Delete partition override

Переконаємося, що залишився тільки розділ з Windows:

List partition

Тепер ми можемо вручну перестворити розділи EFI і MSR. Для цього в контексті утиліти diskpart послідовно виконайте команди:

Вибираємо диск:

select disk 0

create partition efi size = 100

Переконуємося, що обраний розділ 100 Мб (зірочка навпроти рядка Partition 1):

list partition
select partition 1
format quick fs = fat32 label = "System"
assign letter = G
create partition msr size = 128
list partition
list vol

У нашому випадку розділу з Windows вже призначена буква диска C:, якщо це не так, призначимо йому букву наступним чином:

select vol 1
assign letter = C
exit

Відновлення EFI завантажувач і BCD в Windows

Після того, як ви створили мінімальну структуру дискових розділів для UEFI системи, можна переходити до копіювання файлів завантаження EFI на диск і створення конфігураційного файлу завантажувача (BCD).

Скопіюємо операційне середовище EFI з каталогу вашого диска, в який встановлена ​​ваша Windows:

mkdir G: \ EFI \ Microsoft \ Boot

xcopy / s C: \ Windows \ Boot \ EFI \ *. * G: \ EFI \ Microsoft \ Boot

Пересоздадім конфігурацію завантажувача Windows 10/7:

g:
cd EFI \ Microsoft \ Boot
bcdedit / createstore BCD
bcdedit / store BCD / create bootmgr / d "Windows Boot Manager"
bcdedit / store BCD / create / d "Windows 7" / application osloader

Ви можете замінити напис "My Windows 10", на будь-яку іншу.

Порада. У тому випадку, якщо на розділі EFI були пошкоджені тільки операційне середовище EFI, а сам розділ залишився на місці, ви можете пропустити процес перевтілення розділів за допомогою diskpart. Хоча в більшості випадків досить відновити завантажувач за статтею Відновлення EFI завантажувач в Windows 10 / 8.1. Вручну перестворити BCD на звичайних MBR + BIOS системах можна так.

Команда повертає GUID створеної записи, в наступній команді цей GUID потрібно підставити замість your_guid.


bcdedit / store BCD / set bootmgr default your_guid
bcdedit / store BCD / set bootmgr path \ EFI \ Microsoft \ Boot \ bootmgfw.efi
bcdedit / store BCD / set bootmgr displayorder default

Подальші команди виконуються в контексті default:

bcdedit / store BCD / set default device partition = c:
bcdedit / store BCD / set default osdevice partition = c:
bcdedit / store BCD / set default path \ Windows \ System32 \ winload.efi
bcdedit / store BCD / set default systemroot \ Windows
exit

Перезавантажуємо комп'ютер ... У нашому випадку з першого разу він не завантажився, довелося додатково потанцювати з бубном:

  1. Відключаємо харчування ПК.
  2. Відключаємо (фізично) жорсткий диск.
  3. Включаємо ПК, чекаємо появи вікна з помилкою завантаження і знову його вимикаємо.
  4. Підключаємо диск назад.

Потім в нашому випадку (тестування проводилося на віртуальній машині VMWare з UEFI середовищем) довелося додати новий завантажувальний пункт меню, вибравши файл EFI \ Microsoft \ Boot \ bootmgrfw.efi на EFI розділі.

У деяких UEFI меню за аналогією потрібно змінити пріоритет завантажувальних розділів.

Після всіх розглянутих маніпуляцій Windows повинна завантажитися коректно.

Порада. Якщо щось не запрацювало, рекомендуємо перевірити, що завантажувальний прапор (boot flag) встановлено тільки у розділу EFI. Найпростіше в цьому переконається за допомогою LiveCd GParted.