Многие слышали про замечательные компьютеры Apple и их хорошую операционную систему Mac OS, но высокая цена отпугивает его приобрести. Ведь Мак значительно дороже PC.
Любители данной ОС разработал универсальное решение для тех, кто давно хотел попробовать Mac OS X называется оно Hakintosh.
Hakintosh является проектом позволяющим отвязать Mac OS X от hardware Apple состоящий как из написания загрузчика PC-EFI, эмулирующего вызовы EFI и TPM для родного ядра (Vanilla) Mac OS X так и написания новых драйверов и/или их модификации. Версии Mac OS X описываемые на этом форуме, в основном, имеют интегрированный эмулятор PC-EFI, а также взломанные ядра с отключенной проверкой TPM и загрузчик работающий через BIOS, а не через EFI, что позволяет запускать Mac OS X на многих компьютерах удовлетворяющих системным требованиям.
Смысл всего это установка операционной системы Mac OS на обычное железо PC путем подбора совместимых комплектующих и дальнейшего «запуска» железа использую специальные kext файлы (драйвера).
1. Подбор железа
Когда я впервые столкнулся с установкой Мака я получал одну и туже ошибку на разных железках
[IOBluetoothHCIController][start] — completed
**** [IOBluetoothHCIController][SearchForTransportEventTimeOutHandler] — Missing Bluetooth Controller Transport!, Оказалось что запустить встроенное видео в материнке оказалось невозможным откапав в сети вот такой список несовместимого железа:
Несовместимое железо:
- Intel GMA;
- Intel HD2000;
- Intel HD2500;
- HD6950/6970 (очень проблемные карты, установка Mac OS X крайне не рекомендуется)
У меня был процессор Intel® Core™ i3-3220 который держал на борту именно то несовместимое видео Intel HD2500 инфо, детальное описание вашего процессора можно найти на сайте Intel. Решением было покупка недорогой видео карты NVIDIA Ge-Force 8500GT, после повтороной установки система запустилась без проблем.
Еще бывает ошибка «Still waiting for root device» — скорее всего, есть проблема с железом, возможно какая-то несовместимость, проверьте включен ли AHCI в BIOS и отключите ненужные устройства от компьютера или в BIOS, ниже об этот будет подробнее.
Выбор железа под Mac OS X не самая простая задача. Предлагаю вашему вниманию несколько простых советов, которые могут вам помочь:
- Посмотрите на конфигурации свежих компьютеров Apple и старайтесь собирать компьютер максимально похожей комплектации.
- Процессор. На сегодняшний день лучшим вариантом для сборки будет процессор линейки Intel core i3/i5/i7, так как именно они используются в современных маках.
- Если вы собираете хакинтош с мощной видеокартой, то, по моему мнению лучше для этого именно Nvidia.
- Используйте для сборки жесткие диски и оптические накопители с интерфейсом SATA. Устройства с IDE интерфейсом – не поддерживаются.
- Фанатам качественного звука, перед покупкой стоить посмотреть есть ли драйвер для покупаемой звуковой карты. Очень часто случается так, что пользователи хакинтошей с дорогими аудиокартами получают большие проблемы в виде отсутствия звука.
- Внимательно изучите чипсет, встроенное аудио, сетевую карту и WI-FI на покупаемой материнской плате. Предпочтение стоит отдать чипсетам от Intel, а вот чипсеты и ethernet карты от VIA совершенно не желательны.
- Mac OS X не поддерживает дискеты и 3,5″ дисководы.
- Как правило, на современные нетбуки поставить хакинтош не проблема, но с некоторыми моделями возможны проблемы со встроенными wi-fi/bluetooth модулями.
Совместимое железо: ссылка
Из личного опыта система без проблем заработала на железе
1 конфигурация
Intel® Core™2 Duo Processor E8400
Материнка: ASUS P5Q-EM
Видео: ASUS 8500GT 256мб
2. конфигурация
Intel® Core™ i3-3220
Материнка: ASUS P8B75-M
Видео: ASUS 8500GT 256мб
2. Подготовка к установке.
Первым напервым заходим в BIOS и выставляем следующие параметры:
Storage Configuration.
Configure SATA as [AHCI] Самый главный параметр.
Configure advanced CPU settings.
CPU Ratio Setting [Auto]
C1E Support [Enabled]
Max CPUID Value Limit [Disabled]
Intel® Virtualization Tech [Enabled]
CPU TM Function [Disabled]
Execute Disable Bit [Enabled]
Intel® SpeedStep(™) Tech [Enabled]
Onboard Device Configuration.
Marvell IDE [Disabled]
В этом разделе БИОС нужно отключить контроллер IDE, все остальное не особо важно. Я отключил Firewire, поскольку не пользуюсь им.
USB Configuration.
USB Function [Enabled]
USB 2.0 Controller [Enabled]
USB 2.0 Controller Mode [HiSpeed]
BIOS EHCI Hand-Off [Enabled]
Legacy USB Support [Enabled]
Power.
Suspend Mode [S3 only]
Repost Video on S3 Resume [Yes]
ACPI 2.0 Support [Enabled]
ACPI APIC support [Enabled]
Далее если это стационарный компьютер вынимаем все ненужные карты расширения, сетевые, модемы, и т.д.
3. Установка.
-
-
- На первом этапе был скачен образ последней операционной системы Mac OS Maveric с торрент трекера Rutracker ссылка
(фото)
-
- Далее понадобится флешка 4Гб +
(фото)
-
- Программа для подготовки и очистки флешки hp usb disk storage format tool ссылка или качаем по ссылке которая есть в раздаче
- Открываем скаченный образ и видим там файлы
— 1092_usb.arc
— Прочти меня.pdf
— R Drive Image 4.7.4725.zip
(фото)
- Устанавливаем R-Drive (в раздаче)
- Форматируем флешку программой выше, запускаем R-Drivе.
- В R-Drivе нажимаем Restore, выбираем 1093_usb.arc (находится на образе) выбираем нашу флешку, жмем далее и выбираем Primary (Active), жмем создать, ждем… готово.
-
-
- Загружаемся с флешки.
- Выбираем 1093_usb
-
- Начинаем установку.
-
- После установки вновь загружаемся с флешки и при выборе загрузки выбираем установленный мак.
- Далее, после успешной загруки Mac OS X устнавливаем хамелион который будет на присоединенном к MAC OS диске
- Скачать установочный пакет загрузчика можно на osx86.net
Далее есть 2 Варианта: если железо совместимо система загрузится, если нет то зависнет при загрузке.
Разберем второй вариант, система не запостилась что же делать? первым делом надо при выборе загрузке системы попробовать запустить ее с ключем -v в итоге мы увидим на каком месте у нас произойдет ошибка запуска системы, если не поможет можно запустить следующим способом:
-v -x
-v -x -GraphicsEnabler=On
Описание ключей загрузки MAC OS
-x — safe mode — загрузка в безопасном режиме (отключатся все посторонние расширения системы)
-v — verbose mode — режим вывода на экран отладочной информации (на экране вместо яблока вы увидите все системные сообщения)
-f — force re-load kext files — принудительное пересоздание кеша системных кекстов
-s — single user mode — загрузка в режиме командной строки (на экране появится командная строка Терминала)
arch=x86_64 — загрузка в 64битном режиме
arch=i386 — загрузка в 32битном режиме
cpus=1 — количество используемых системой ядер процессора, в данном примере используется 1 ядро
maxmem=xxxx — максимальный объём используемой оперативной памяти (в мегабайтах)
«Graphics Mode»=«640x480x32» — графический режим видеокарты при загрузке. Первая цифра – ширина экрана, вторая – высота (обе имеют значения в пикселях), третья – глубина цвета (в битах)
rd=diskXsY — загрузка системы с другого раздела с ядром, находящимся на разделе с постоянно используемой ОС. первая цифра X – это номер жёсткого диска (счёт начинается с нуля), вторая Y – номер раздела на этом диске (счёт идёт с единицы)
debug=0x100 — показывает сведения о панике ядра
Имейте ввиду, что использовать эти ключи можно одновременно друг с другом,
Если система запостилась с одним или несколькими ключами, для автоматизации и отмены вписывания их каждый раз при запуске системы мы их вносим в файл org.chameleon.Boot.plist, который находится в /Extra.
Водим их в такойм виде:
Так же, ключи загрузки могут быть указаны перед запуском ОС, при выборе дисков в графической оболочке Chameleon.
Если желаете, чтобы Chameleon дожидался от пользователя согласия на загрузку системы добавьте следующие строки:
<key>Wait</key> <string>Yes</string>
Параметр:
<key>Timeout</key> <string>3</string>
Отвечает за ожидание действий от пользователя, если по истечению указанного времени (в секундах) отменяющих команд (нажатия на любую клавишу) не последовало, начнется загрузка ядра.
Для принудительного отображения разделов необходимы строки:
<key>Timeout</key> <string>3</string>
Ну а если хотите упростить загрузку до предела добавьте:
<key>Quiet Boot</key> <string>Yes</string>
Не будет ни сообщений, ни прогресса, ни строки ввода (используйте данный ключ только если уверенны на все сто).
Для включения автоматического определения сетевой карты вводим:
<key>EthernetBuiltIn</key> <string>Yes</string>
Для включения рестарт/шатдаун вводим:
<key>EthernetBuiltIn</key> <string>Yes</string>
Для авто-определения видео карты:
<key>GraphicsEnabler</key> <string>Yes</string>
При необходимости выставить определённое разрешение монитору можно ввести:
<key>Graphics Mode</key> <string>1920x1200x32</string>
Если же вы используете альтернативную прошивку Ati ROM добавьте:
<key>UseAtiROM</key> <string>Yes</string>
Обязательным условием является помещение файла в дирректорию Extra
(/Extra/_.rom)
Для Nvidia ROM ключ следующий:
<key>UseNvidiaROM</key> <string>Yes</string>
Если есть желание профиксить USB-контроллер впишите:
<key>USBBusFix</key> <string>Yes</string>
Для того чтоб включить HPET — таймер пребывания ввести необходимо следующее:
<key>ForceHPET</key> <string>Yes</string>
Для инжектирования данных из VBIOS:
<key>VBIOS </key> <string>Yes</string>
Ключ:
<key>PciRoot</key> <string>Yes</string>
Отвечает за значение для Pci, по умолчанию выставлено 0, но для некоторых мат. плат необходимо значение 1 иначе не адекватно будет происходить авто-определение сетевых и видео карт. Для определения UID своей карты в терменале выполните команду ioreg -l | grep -15 «AppleACPIPCI\ » | grep UID
Для того чтоб отключить интерфейс загрузчика необходимо ввести:
<key>GUI</key> <string>No</string>
Хамелеон примет вид версии 1 (что ни как не отразится на его функциональности). Для быстрой смены можно использовать клавишу Tab
Если ввести:
<key>Legacy Logo</key> <string>Yes</string>
При загрузке будет отображаться стандартное яблоко (серое)
Чтобы скрыть какие либо разделы в меню вводим:
<key>Hide Partition</key> <string>hd(x,y) hd(m,n)</string>
где x,m — номера дисков, а y,n — разделов
Если желаете указать загрузчику с какого раздела загружаться по умолчанию пишем:
<key>Default Partition</key> <string>hd(x,y)</string>
Где х — номер диска, а у — раздела.
Есть и довольно специфичный ключ:
<key>Rename Partition</key> <string>hd(x,y) <alias> [;hd(m,n) <alias2> ...]</string>
Позволяет переименовать какой либо раздел, где — <Новое имя>
Для отключения выхода из режима сна добавляет:
<key>Wake</key> <string>No</string>
Для запуска sleepimage принудительно:
<key>ForceWake</key> <string>Yes</string>
Для использования альтернативного файла sleepimage:
<key>WakeImage</key> <string>/путь/</string>
Файл помещается в директорию /private/var/vm/sleepimage
Если есть необходимость использовать альтернативный DSDT:
<key>DSDT</key> <string>/путь/</string>
Помещаем DSDT либо в корень системного диска, либо в папку Extra.
Тоже самое можно проделать и с smbios.plist директории те же, ключ:
<key>SMBIOS</key> <string>/путь/></string>
Введя ключ
<key>SMBIOSdefaults</key> <string>Yes</string>
Cистема будет брать данные из системного SMBIOS.
Для отмены загрузки SSDT таблиц:
<key>DropSSDT</key> <string>Yes</string>
Если у вас есть необходимость тестировании патченные ядра как раз к стати будет:
<key>mach_kernel</key> <string>Имя_ядра</string>
Этот ключ позволяет запускать систему с любым их ядер помещенных в корневой каталог.
Ну и наверное самая важная часть структуры com.apple.Boot.plist
<key>Kernel Flags</key> <string>Значение</string>
Прописать параметры в файл можно через терминал при выборе загрузи системы, либо подключив жесткий диск к компьютеру и редактировать под ОС Windows, для того чтобы увидеть разделы MAC OS нужно установить программу MAC DRIVE)
Готово, система запустилась
Но мы заметили что отсутствует звуковая карта, сетевая и другие устройства, как их запустить и о дальнейшей настройке системы во втрой части статьи.