Конвертація MBR диска в GPT в Windows 10 c допомогою MBR2GPT

У Windows 10 v1703 (Creators Update) з'явилася нова консольна утиліта  mbr2gpt.exe, яка дозволяє конвертувати диск з таблицею розділів MBR (Master Boot Record) в таблицю GPT (GUID Partition Table) без втрати даних і видалення розділів на диску. Утиліта може конвертувати як системний диск, на якому встановлена ​​Windows, так і диск з даними. Утиліту можна використовувати для перетворення таблиці розділів як в середовищі Windows PE (Windows Preinstallation Environment), в тому числі як частина апгрейда Windows 7 до Windows 10, так і безпосередньо з Windows 10.

Mbr2gpt дозволяє конвертувати таблицю розділів з MBR в GPT в версіях Windows 10 1507, 1511 і v1607 (за умови виконання офлайн конвертації з образу Windows 10 1703). Більш ранні версії ОС (Windows 7, Windows 8 і Windows 8.1) офицально не підтримуються.

Примітка. Раніше для перетворення несистемного диска з MBR в GPT без втрати розділів можна було використовувати сторонню утиліту gptgen. Для конвертації системного диска доводилося виконувати його форматування.

Логіка роботи утиліти Mbr2gpt при перетворенні диска з MBR в GPT наступна:

  1. Перевірка диска
  2. У тому випадку, якщо на диску відсутній системний розділ EFI (ESP), він створюється за рахунок вільного місця на одному з розділів
  3. Завантажувальні файли UEFI копіюються на розділ ESP
  4. Застосовуються метадані GPT
  5. Оновлення завантажувального файлу BCD

Як ви бачите, дані на наявних розділах при цьому не зачіпаються.

Утиліта MBR2GPT має наступний синтаксис:

mbr2gpt / validate | convert [/ disk:] [/ logs:] [/ map: =] [/ allowFullOS]

  • /validate - виконується тільки перевірка диска на можливість конвертації таблиці розділів (в тому числі виконується перевірка, чи достатньо місця для зберігання основної та вторинної таблиці GPT: 16Кб + 2 сектора на початку диска і 16Кб + 1 сектор в кінці)
  • / convert - запуск перетворення диска, за умови успішної валідації
  • /disk: - задається номер диск, який потрібно перетворити в GPT. Якщо номер не заданий, вважається, що потрібно конвертувати системний диск (аналогічно команді Diskpart: select disk system)
  • /logs: - вказується шлях до каталогу, в який утиліта MBR2GPT повинна писати логи. Якщо шлях не вказано, використовується каталог% windir%. Файли журналів diagerr.xml, diagwrn.xml, setuperr.log і setupact.log
  • / map: = дозволяє вказати додаткове зіставлення таблиці розділів між MBR і GPT. Наприклад / map: 42 = af9b60a0-1431-4f62-bc68-3311714a69ad. Номер MBR розділу описується в десяткової системі, а GPT GUID містить роздільники. Можна вказати кілька таких зіставлень.
  • /allowFullOS - за замовчуванням утиліта MBR2GPT запускається тільки в середовищі виконання Windows PE. За допомогою даного ключа, можна дозволити виконання утиліти в середовищі повноцінної Windows

Наприклад, запустимо перевірку на предмет можливості конвертувати поточний системний MBR диск в GPT.

mbr2gpt.exe / disk: 0 / validate / Logs: C: \ logs / allowFullOS

рядок MBR2GPT: Validation completed successfully свідчить про те, що таку конвертацію можна зробити.

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

Запустимо конвертацію:

mbr2gpt.exe / convert / disk: 0

MBR2GPT will now attempt to convert disk 0.
If conversion is successful the disk can only be booted in GPT mode.
These changes can not be undone!
MBR2GPT: Attempting to convert disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
MBR2GPT: Trying to shrink the system partition
MBR2GPT: Trying to shrink the OS partition
MBR2GPT: Creating the EFI system partition
MBR2GPT: Installing the new boot files
MBR2GPT: Performing the layout conversion
MBR2GPT: Migrating default boot entry
MBR2GPT: Adding recovery boot entry
MBR2GPT: Fixing drive letter mapping
MBR2GPT: Conversion completed successfully
MBR2GPT: Before the new system can boot properly you need to switch the firmware to boot to UEFI mode!

Щоб комп'ютер міг завантажиться з нового розділу EFI, потрібно переналаштувати комп'ютер для завантаження в режимі UEFI. Перезавантажте комп'ютер, в настройках UEFI змініть режим завантаження Legacy (BIOS) на UEFI (Pure) і збережіть зміни.

Windows 10 повинна успішно завантажитися. За допомогою утиліти msinfo32.exe можна переконатися, що Windows 10 завантажився в режимі UEFI.

При використанні UEFI користувачі можуть скористатися наступними перевагами:

  • можливість створювати розділи більше 2 Тб
  • захист середовища завантаження за допомогою Secure Boot
  • технологія раннього запуску захисту від шкідливого ПО - ELAM (Early Launch Antimalware)
  • Device Guard іCredential Guard в Windows 10 Enterprise
  • безпечний запуск (Measured Boot)