sponsors:

Інсталяція HACKINTOSH. Метод для Маньяків, або коли нічого не допомагає.


Высшим отличием человека является упорство в преодолении самых жестоких препятствий.
Людвиг Бетховен

Давненько я колись написав статтю про проблемну інсталяцію Хакінтоша на ліве залізо. Стаття англійська, стара, функціональна і про неї знають в певних колах англомовного інтернету. Крім плюса в вигляді >15000 переглядів стаття має кілька недоліків - відсутній український переклад і процес описано з точки зору людини, що вміє інсталювати хакінтош, але зустрілась з важкосумісною конфігурацією.

osx86 hackintosh

Спробую тепер написати щось, більш людиноподібне.

Отже. Макос.
Складність самої макось ака Леопард(Чи хай там Тигр, Пантер і що там було раніше) в тому, що вона ніби юнікс, але й не юнікс.
Тобто історія її тягнеться з BSD4.4(чи навіть раніше) як і більшість сучасних систем, от тільки ядро в неї - MACH, трошки інше і по іншому розташоване.

Класичний Мак стартує з файлу-ядра mach_kernel, що знаходиться в корні диска. При завантаженні можна ручками написати іншу назву ядра з певними ключами, але про це пізніше.
"Класичний Хак" - трошки інша справа, хоча в ідеальному випадку - ніякої різниці. Ну крім процесу інсталяції.
Про нього і пишу.

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

Перед тим, як розповісти про конфігурацію інсталятора, варто розповісти дуже цікаву річ. Вікно інсталятора, що відображається на Вашому екрані - це вже Макос. Повноцінна. З підтримкою всіх можливих її плюсів та мінусів. Тобто побачивши Інсталятор - Ви вже маєте Макос. Ви можете запустити вікно Термінал і почати "роботу" будь-якої складності - у Вас вже запущена повноцінна система.
Справа Інсталятора - з набору пакетів, що зібрані Apple і іншими зловмисниками - скопіювати все правильно на вказаний Вами жорсткий диск. І з моєї практики - робить він(Інсталятор) - досить неуніверсально. Щоправда у всьому винні ті самі зловмисники.

Головні проблеми, що зустрічаються після інсталяції

  1. b0 error - в випадку, якщо інсталятор + дискова утиліта не проінсталювали на диск загрузчик. Пофіксити це досить просто по раніше написаному мануалу.
  2. panic - в випадку, коли або ядро, або набір Extensions (модулі ядра, або драйвери) - несумісні з Вашою системою. Також можна виправити ситуацію.
  3. Still waiting for root device - в цьому випадку Макос нічого не знає про наявність драйвера до Вашого IDE контролера. В більшості випадків фіксається.
  4. Проблеми з драйверами відео, коли все наче вантажиться, а на екрані нічого не відображається - також фікситься.

Отже. Стартанули Інсталятор. Вибрали купу патчів, програм, драйверів, ядер і все це встановили протягом 15-20 хвилин на свій диск.
Перезавантажились.
Якщо система завантажилась - вітаю. Далі питання інсталяції драйверів і програм - вже простіше. І читати далі - необов'язково.
А якщо не завантажилась - швидше за все - через одну з вищезгаданих причин.

b0 error

Відсутність загрузчика.
Щоб поправити - потрібні незначні навики роботи в консолі(Термінал)
Для цього читаємо статтю, щоб трошки запутатись і зрозуміти.

  1. Вантажимось з інсталяційного ДВД диска
  2. Після появи Інсталятора з меню вибираємо Термінал
  3. В терміналі запускаємо команду diskutil list
    вивід команди diskutil list

    Яка показує список дисків, що присутні і видимі в Вашій системі. Загалом логіка тут проста. Думаю зрозуміти по розміру диска і партицій легко куди саме Ви поставили Вашу Макос.
  4. Наступним кроком - активація загрузчика і створення активного розділу. Для цього існує команда fdisk -e /dev/rdiskX - де X - номер диска, визначений Вами в попередньому пункті. В запущеному терміналі команди fdisk можна набрати print, де буде відображено список партицій і головна команда - flag 1 - де 1 - номер партиції, яку хочете зробити активною. Після цього, набравши quit - збережете зміни і вийдете з fdisk
  5. Наступним кроком варто переписати також загрузчик з інсталяційного диска на Ваш HDD диск з Макос. Для цього набираєте команду
    cp -Rvf /usr/standalone/i386/* /System/ім'я_Вашого_Диска/usr/standalone/i386
    , де ім'я_Вашого_Диска - це мітка партиції, на яку Ви поставили Вашу Макос, і підглянути ї можна було з виводу команди diskutil list, або в попередньо запущеній Diskutil з того ж меню, де і запускали Термінал, або глянувши на вивід команди ls -la /Volumes
  6. Після цього запустіть Diskutil і зробіть Repair Permissions на партиції, над якою весь цей час знущались...
  7. b0 error - виправлено!

Panic

В паніків є два варіанти - паніка ядра і паніка якогось з модулів(kext).

  • Перше - лікується інсталяцією якогось ядра, сумісного з Вашим обладнанням(Хоча б того, з яким стартує інсталяційний DVD).
  • Друге - з екрана паніки можна вичитати назву модуля, на якому система починає панікувати. Скажімо якщо на екрані буде написано щось на зразок AppleIntelCPUPowermanagement - значить на цьому модулі і падає. Поправити це можна видаленням даного модуля з папки Extensions в тому ж терміналі, завантажившись з інсталяційного диска. Головне не забувати стартувати систему з ключем -x -f.
    Ну і варто пам'ятати, що при завантаженні системи з інсталяційного диска Ваш HDD і Маківські Extensions будуть доступними за шляхом
    /Volumes/ім'я_Вашого_Диска/System/Library/Extensions
    Де з допомогою Термінала і команд cp, mv можна легко зробити резервну копію Вашої папки Extensions, а також модулів, які Ви збираєтесь стирати або додавати, щоб позбутися паніки.

Still waiting for root device

Досить розповсюджена проблема, коли проінстальована система не бачить контролера дисків і приходиться якимось чином підміняти проінстальовані драйвери тими, які як мінімум стартувати з того ж інсталяційного диска.
Я в власній практиці використовував практично універсальний драйвер AppleVIAATA.kext, в який прописував вручну PCI ідентифікатор контролера HDD, поруч із ідентифікаторами контролерів VIA і в результаті такої підміни - драйвер стартував на "лівому" чіпсеті і працював в більшості випадків.
Підміна драйвера - аналогічна тому, що описано вище - завантаження з інсталяційного диска і робота в Terminal. Ну або використовуючи boot-132 , що дощволяє завантажувати kext з спеціальної папки Extra, які стартують раніше за "некоректні" системні.

Video drivers

ЦІ проблеми можна вирішувати складно - шукаючи драйвера саме такі які потрібно і інтегрувати їх в інсталятор, або boot-132 , або , як це роблю я - видалення з папки Extensions всіх драйверів відео даного виробника і в результаті система завантажується з вбудованим драйвером Vesa, який дозволяє трошки пізніше погратись з інсталяцією повноцінних, Hardware Accelerated QI/QE драйверів конкретно до Вашого Відеоконтролера.

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

Trackback URL for this post:

http://itua.name/en/trackback/576
Share this

Syndicate content Syndicate content

Propeople Expert

Партнери

експерименти

Rambler's Top100