Chameleon bootloader - osxpc

Все написане в статті відноситься як до хамелеона, так і до завантажувач на його основі (Chimera і подібні).

Перше, що варто знати - це FakeEFI, тобто, він змушує комп'ютер вважати, що середовище EFI вже відпрацювала, залишивши сліди в пам'яті, що і дозволяє нам завантажити нашу OS X. Тобто, Хамелеон вдає, ніби оригінальний BIOS на справжніх Mac спрацював, і ми вже в середовищі завантаження самої операційної системи. Ось і весь його невигадливий спосіб роботи.

Що вдає із себе Хамелеон? Просто збірник таблиць з оригінального Mac, з виправленими фрагментами, щоб завантажити його на простому PC.

Безумовно, цього достатньо, щоб завантажити OS X, але ж нам потрібна повноцінна OS X, як на справжньому комп'ютері Mac, чи не так? Давайте розбиратися, в чому різниця RealEFI і FakeEFI?

  • FakeEFI - видає статичну таблицю; вантажить абсолютно все, що є, щоб не промахнутися (як підсумок захаращена OS X); не вміє підхоплювати що-небудь на льоту (не кажучи вже про патчах).
  • RealEFI - при завантаженні обробляє таблиці, дізнаючись інформацію про стан апаратного забезпечення; вантажить тільки потрібне, орієнтуючись на отримані від материнської плати таблиці; здатний пачтіть розширення ядра (kexts) "на льоту", тобто прямо під час завантаження; вміє працювати з кешем системи (працює панель "завантажувальний том", або ж установка OS X з програми).

Як висновок, FakeEFI має купу недоліків, які RealEFI поборов. Але все-таки пост про Хамелеоне, а не про Кловер, так що зосередимося на FakeEFI.

Хамелеон є скоріше універсальним рішенням, оскільки особливо не вимогливий ні до конфігурації, ні до типу його установки. Тобто, більше підходить для тих, кому ліньки розбиратися з Кловером, або ж Кловер здається їм занадто складним. Даний завантажувач вантажить інші системи не в EFI, тобто, в режимі legacy.

Отже, принцип дії:

  1. BIOS завантажує з жорсткого диска сам завантажувач;
  2. Завантажувач Новомосковскет структуру дисків, перевіряючи, де що знаходиться;
  3. Формує список операційних систем, побачених в п.2;
  4. Далі, завантажувач або передає управління вбудованому в систему завантаження (ntldr для Windows, наприклад), або завантажує ядро ​​OS X (що нам і потрібно).

Установка завантажувача відбувається за допомогою інсталятора, безпосередньо з OS X, але є і альтернативні способи, наприклад BootDiskUtility. Установка відбувається як на GPT, так і на MBR (хоча, з GPT хамелеон веде себе неналежним чином - найчастіше некоректно встановлюється тип завантаження, або взагалі відмовляється працювати, видаючи прозаїчну рядок Boot GPT: error).

У даного завантажувача є n-ну кількість "прапорів" завантаження, тобто параметрів. Наступні прапори знати обов'язково, якщо ви маєте намір використовувати саме його:

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

Що стосовно налаштування хамелеона, є чудова утиліта Chameleon wizard.

Є й інші завантажувачі, наприклад Химера (chimera), які за принципом роботи не відрізняються від хамелеона, тому що створені на його исходниках. Відповідно, і настройка і завантаження застосовується від оригінального хамелеона.

На завершення, хочу сказати - хамелеон дійсно вже, як то кажуть, «не торт". На даний момент його не варто використовувати, адже є чудовий Clover. Проте, якщо ви з якоїсь причини використовуєте його, або збираєтеся використовувати - хорошою, придатної роботи ви не отримаєте, а завантаження буде дуже повільним, плюс kernel panic при кожній третій завантаженні забезпечений.