Сьогодні ми розберемося, як встановити будь-яку сучасну версію Windows (в тому числі Windows 7 або Windows 10) на жорсткий диск, з таблицею розділів GPT на застарілому комп’ютері з BIOS, який не підтримує сучасне середовище UEFI. Необхідність виконати такий трюк виникла при спробі встановити Windows Server 2008 R2 x64 на сервері HP DL380 G8 (сервера HP DL поки не підтримують EFI) з локальними дисками, загальна ємність яких в RAID 5 перевищує 4 Тб. При стандартній установці Windows на диск з MBR розміткою, в системі доступні тільки 2 Тб. Розмаїття або отримати доступ до решти 2 ТБ місця на диску з-під Windows не вийде. Єдиний спосіб скористатися всім доступним місцем на диску – перетворити розмітку диска в формат GPT.

У цій статті описано, як налаштувати завантаження Windows з жорсткого диска, розміченого в таблиці розділів GPT на комп’ютері з класичним BIOS (в якому відсутня UEFI) або в режимі Legacy BIOS. Операційна система Windows не вміє завантажуватися з GPT дисків на старих BIOS системах. Для обходу цього обмеження ми скористаємося методикою перенесення BCD завантажувача Windows на окрему невелику USB флешку (або HDD диск) з таблицею розділів MBR. Дана флешка буде використовуватися тільки для запуску завантажувача Windows, який потім повинен передати управління основним образу Windows, розташованому на диску з GPT розміткою. Інструкція універсальна і повинна працювати як в Windows 7, так і Windows 10 і будь-яких інших підтримуваних 32 і 64 редакціях Windows.

Переваги GPT перед MBR

Які ж переваги дає використання Таблиця розділів GUID (GPT) – нового формату розміщення таблиць розділів на жорсткому диску. Таблиця розділів GPT дозволяє обійти ряд обмежень класичної таблиці розділів MBR. Перелічимо основні моменти:

  • Підтримка жорстких дисків розміром більше 2,2 Тб (Максимальний доступний розмір диска для GPT- 9,4 ЗетаБайт (9,4 × 1 021 байт))
  • Підтримка до 128 розділів на диску (в MBR тільки 4 розділу)
  • висока надійність, Що досягається завдяки дублюванню таблиці розділів в декількох місцях диска і перевірки таблиці розділів за допомогою циклічної перевірки парності з надмірністю (CRC). Таким чином, структура розділу диска не втрачена при пошкодженні перших секторів диска.
  • Немає необхідності використовувати логічні розділи, Схильні до різних помилок

Завантаження Windows з GPT диска

Згідно офіційній документації Microsoft http://msdn.microsoft.com/en-us/windows/hardware/gg463525.aspx , Все її ОС, починаючи з Windows Server 2003 SP1, підтримують томи з розміткою GPT як дисків з даними, однак завантажитися з GPT томи зможуть лише 64 бітові версії Windows, встановлені на материнських платах з підтримкою нової специфікації UEFI (Unified Extensible Firmware Interface) . Таким чином, не вийде встановити або завантажити Windows з GPT диска на старих комп’ютерах з класичним BIOS.

Порада. існує кілька обхідних рішень, Що дозволяють завантажити Windows 10/7 x64 на BIOS системах з GPT диска. Для цього потрібно скористатися завантажувальним диском, що містить емулятор середовища розробки UEFI – DUET (середовище розробника UEFI), Що імітує EFI. У цій конфігурації BIOS комп’ютера почне завантажувати з встановленого SYSLINUX, який завантажує емулятор UEFI (DUET). DUET в свою чергу викликає стандартний завантажувач Windows – bootx64.efi. Також є можливість перекладу диска в гібридний Режим MBR (гібридний mbr) за допомогою Linux-утиліти gdisk. Однак в обох випадках процедура задоволена складна і вимагає від користувача доброго знання ОС Linux.

Ще раз відзначимо важливий факт, який слід назавжди засвоїти: завантаження Windows x64 з GPT диска можлива тільки на системі з UEFI.

Таким чином, якщо ваш комп’ютер працює на базі BIOS, і вам необхідно щоб його диск містив таблицю розділів GPT, найпростіше буде додати в систему ще один жорсткий диск (звичайний або SSD) з розміткою MBR, встановити на нього Windows і надалі завантажуватися вже з нього.

Ми спробуємо трохи модифікувати цю методику. Для цього нам знадобиться USB флешка або SD карта невеликого обсягу (не менше 64 Мб) з MBR розміткою, на якій ми розмістимо диспетчер завантаження Windows – bootmgr. Ця завантажувальна флешка буде забезпечувати початкову завантаження системи і передавати управління завантажувачу основної системи, розташованому на GPT томі.

важливо. Система повинна на рівні BIOS підтримувати завантаження з USB флешки або SD карти.

Таким чином ми зможемо забезпечити завантаження будь-(як 32, так і 64 бітної версії Windows !!!) З GPT диска на системі з BIOS, що не підтримує EFI.

Установка Windows на GPT диск на комп’ютері з BIOS

Припустимо, у нас є комп’ютер з BIOS (без UEFI), на жорсткому диску якого використовується нова таблиця розділів GPT. При спробі встановити Windows на gpt диск такий комп’ютер, інсталятор Windows видасть помилку:

Windows не можна встановити на цей диск, вибраний диск має стиль розділу GPT

У російській версії помилка:

Установка Windows на даний диск. Обраний диск мають стиль розділів GPT.

Установка Windows на даний диск.  Обраний диск мають стиль розділів GPT.

Порада. Здійснити конвертацію диск з MBR в GPT з втратою всіх даних можна, натиснувши на екрані установки Windows комбінацію Shift + F10. І виконавши в командному рядку наступні команди:
Diskpart
select disk 0 (Якщо в системі один жорсткий диск)
clean (Очистити вміст диска)
convert gpt (Перетворити таблицю розділів в GPT)

Встановити Windows 10 / 8.1 / 7 безпосередньо на GPT диск в такій ситуації можливо тільки в режимі UEFI через емуляцію цього середовища за допомогою DUET. Але в такому режимі можливо установка тільки 64 бітових версій Windows, і сама процедура, як ми вже говорили вище, досить складна.

В такому випадку, набагато простіше в звичайному режимі встановити Windows на MBR диск, а потім конвертувати його в GPT за допомогою утиліти gptgen.

Gptgen – перетворимо таблицю розділів диска з MBR в GPT без видалення розділів

Консоль Windows “Управління дисками” дозволяє конвертувати диск з розмітки MBR в GPT тільки «чисті» нерозмічену диски. Консоль не дозволить виконати конвертацію розділів на диску, на якому вже встановлена ​​ОС.

Для онлайн перетворення жорсткого диска з MBR в GPT можна скористатися невеликою утилітою Gptgen, Що дозволяє «на льоту» перетворити формат таблиці розділу без необхідності видалення всіх розділів (без втрати даних).

важливо. Перед виконанням перетворення настійно рекомендується скопіювати всі критичні дані на зовнішній носій. І хоча, я ще не стикався з некоректною роботою утиліти gptgen, Яка б привела до повного обвалення файлової системи, я рекомендую всім користувачам все-таки зберігати свої важливі дані перед конвертацією таблиці розділів, щоб потім не було претензій до автора статті 🙂.

Скачайте утиліту gptgen, і розпакуйте її в довільний каталог (наприклад, c: tools gptgen-1.1).

  1. Запустіть командний рядок з правами адміністратора
  2. Виконайте команду: diskpart
  3. В контексті diskpart виведемо на екран всі диски в системі: list disk Висновок типу структури розмітки на диску.  НЕ gpt, значить mbr В даному прикладі в системі є один диск розміром 40 Гб з індексом 0 (Disk 0). Як ви бачите, цей диск має стандартну таблицю розділів MBR (стовпець Gpt порожній)
  4. Перетворимо таблицю розділів диска 0 з MBR в GPT командою: gptgen.exe -w \.\physicaldrive0 В процесі виконання утиліти з’явився попередження про те, що розробники не гарантують, що після перетворення в GPT з розділу на цьому диску з нього вийде завантажитися.

    Примітка. 0 в кінці physicaldrive показує, що потрібно конвертувати disk 0.

    gptgen.exe: Перетворювач таблиць розділів v1.1
    Завантаження: 1, тип: 0x7, початок: сектор 2048, довжина: 204800 секторів
    Завантаження: 0, тип: 0x7, початок: сектор 206848, довжина: 83675136 секторів
    ПОПЕРЕДЖЕННЯ: Завантажувальні розділи знайдено. Цей інструмент не може цього гарантувати
    такі розділи залишатимуться завантажувальними після перетворення.
    Ви хочете продовжити? [Y/N] і
    Запис первинного GPT та захисного MBR на адресу LBA 0 …
    Написання вторинного GPT на адресу LBA 83886047…
    Успіху!

    gptgen утиліта перетворення з mbr в gpt без втрати даних

Отже, перетворення таблиці розділів в GPT пройшло успішно!

Перенесення завантажувача Windows на USB флешку

Перезавантажуємо комп’ютер і переконуємося, що BIOS система не може завантажиться з жорсткого диска з GPT таблицею. Так і має бути! Підключаємо до системи невелику USB флешку або SD карту. Завантажуємося з установочного CD / USB диска з Windows (підійде як інсталяційний диск з Windows 10, так і Win 7, як в нашому випадку) і на екрані установки натискаємо Shift + F10, Відкриваючи консоль командного рядка:

  1. Виконайте команду: diskpart
  2. Виведемо список дисків в системі: list disk . В даному випадку в системі є два диски: Disk 0 – жорсткий диск з системою розміром 40 Гб (* в стовпці Gpt вказує, що даний диск містить таблицю розділів GPT) і Disk 1 – USB флешка розміром 1 Гб. перегляд списку дисків в windows
  3. Розберемося з розділами на дисках і буквами, які їм призначені. Виберемо жорсткий диск: select disk 0 і виведемо список розділів на ньому: list volume перегляд списку розділів на дисках windowsВиходячи з розмірів розділів можна зрозуміти, що система встановлена ​​на 2 розділі (Volume 2), якій призначена буква D: (дана буква може не відповідати букві системного диска, який відображається в самій Windows)
  4. Створимо необхідні розділи на флешці:
    select disk 1 (Вибираємо флешку)
    clean (Очищення вмісту диска)
    create partition primary size=1000 (Створюємо на USB флешці основний розділ, в даному випадку розміром 1 Гб)
    format (Форматіруем його в файлової системі FAT32. Не використовуйте для USB флешки файлову систему NTFS, тому що завантажиться з такого розділу не вийде)
    select partition 1 (Вибираємо перший розділ на флешці)
    active (Помічаємо розділ як активний)
    list volume (Виведемо список розділів ще раз. У цьому прикладі видно, що створений нами розділ має індекс 3)
    select volume 3 (Виберемо його)
    assign letter=G (Призначимо йому вільну букву диска, наприклад G)
    створюємо завантажувальну флешку з таблицею розділів mbr
    list volume (Переконався, що розділу на флешці присвоєна буква G) висновок списку розділів в системі
    exit (Вихід з утиліти diskpart)
  5. Скопіюємо операційне середовище завантаження з системного диска на флешку: bcdboot d:Windows /l en-us /s g:
  6. Запишемо на флешку завантажувальний код для забезпечення завантаження bootmgr (диспетчера завантаження Windows): bootsect /nt60 G: /mbr /force
  7. Перезавантажуємося

Зайдіть в BIOS і задайте максимальний пріоритет завантаження вашому USB (SD) накопичувача. Збережіть зміни. Якщо ви все зробили правильно, система повинна завантажитися коректно. Упевнитися, що ваша Windows знаходиться на GPT диску можна в диспетчері дисків (diskmgmt.msc), Відкривши властивості системного диска. На вкладці Volumes зазначено, що тип таблиці розділів – GPT (Partition style – GUID Partition Table)

windows 7 на диску gpt на комп'ютері з bios, що не котра розуміє EFI

Подібна методика перенесення завантажувача на окрему USB флешку дозволить скористатися усіма перевагами таблиці розділів GPT і використовувати всю місткість жорсткого диска (розміром більше 2.2 Тб) на системах з BIOS (без середовища UEFI). Подібний трюк можна проробити з наступними (навіть 32 бітових версіях) Windows:

  • Windows 10 / Windows Server 2016
  • Windows 8, Windows 8.1
  • Windows Server 2012/2012 R2
  • Windows 7
  • Windows Server 2008/2008 R2
  • Windows Vista
  • Windows Server 2003 SP1 / 2003 (64-розрядна)
  • Windows XP x64

Застереження. Стаття пропонується як є. Всі зазначені операції були протестовані на віртуальній машині – на реальних машинах тестування не проводилося. Якщо хтось протестує подібну конфігурацію і роботу системи на фізичному залозі і відпише про результати – буду дуже радий. За наявне інформації деякі старі комп’ютери з BIOS в принципі не дозволяють працювати з GPT дисками, такі диски просто не визначаються.

Також потрібно розуміти, що кожен раз при включенні / перезавантаження системи ваша USB флешка з MBR таблицею і загрузчиком на ній повинна бути підключена до комп’ютера, інакше Windows просто не буде завантажуватися.

Leave a Reply

Your email address will not be published. Required fields are marked *