Arm1.ru

Как обновить хакинтош с OS X Mavericks до Yosemite

Как обновить хакинтош с OS X Mavericks до Yosemite

Недавно наконец сделал обновление с OS X 10.9 до 10.10 своего рабочего хакинтоша. Потратил много времени. Опишу, как это сделал и с какими проблемами столкнулся.

Как обновить хакинтош с OS X Mavericks до Yosemite

Недавно наконец сделал обновление с OS X 10.9 до 10.10 своего рабочего хакинтоша. Потратил много времени. Опишу, как это сделал и с какими проблемами столкнулся.

Итак, нам понадобится для обновления:

  1. Установщик OS X Yosemite. Для этого открываем Mac App Store и качаем его его оттуда. Пытаться его после этого запускать для обновления ОС в моём случае, как и раньше, было бессмысленно - установщик говорит, что сейчас всё поставит, но надо перезагрузиться. Перезагружаешься - и ничего не происходит, просто снова попадаешь в Mavericks.
    Как обновить хакинтош с OS X Mavericks до Yosemite
  2. Флэшка на 8 гигабайт и более. USB жёсткий диск тоже годится.
  3. Unibeast для создания загрузочной флэшки (качать тут).
  4. Multibeast для установки драйверов и загрузчика после установки ОС (качать тоже тут).

Загрузчик

Ранее у меня стоял Mountain Lion, который я год назад обновил до Mavericks, которые теперь обновил до Yosemite. С тех пор у меня стоял загрузчик Chameleon. Стояла у меня старая версия. В связи с этим после установки ОС у меня никак не устанавливался новый загрузчик из Multibeast, а старый не мог загрузить макось, просто отправляя в бесконечный ребут комп. Так что я не мог даже посмотреть ошибку при загрузке, из-за которой ОС не грузилась - просто не успевал.

Поэтому лучше заранее скачать и установить: посленднюю версию Chameleon и последнюю версию Chimera, иначе они почему-то не устанавливаются из Multibeast после обновления.

Ещё в инструкциях иностранных пишут, что нужно отредактировать файл /Extra/org.chameleon.Boot.plist, чтобы убрать в нём 2 строки:

Kernel
mach_kernel

Готовим загрузочную флэшку

Итак, установщик Yosemite скачан из App Store, последняя версия загрузчика установлена. Готовим флэшку. Запускаем Дисковую Утилиту в макоси, выбираем нужный диск, выбираем вкладку Partition (Разбить диск на разделы). Тут важный момент. У меня внешний диск на 160 гигабайт. Если я форматировал его в 1 большой раздел - то Unibeast, который создаёт загрузочный диск, просто не воспринимал его как флэшку. Выход - разбить диск на 2 раздела. Я сделал 1 раздел на 32 гигабайта и 2-й на оставшееся место.

Как обновить хакинтош с OS X Mavericks до Yosemite

После этого, жмём Options и выбираем Master Boot Record. Жмём OK, затем Apply и ждём, когда дисковая утилита подготовит нашу флэшку/жёсткий диск.

После этого запускаем Unibeast, следуем шагам установки. Выбираем нашу флэшку/раздел на внешнем жёстком диске:

Как обновить хакинтош с OS X Mavericks до Yosemite

На следующем этапе выбираем Yosemite:

Как обновить хакинтош с OS X Mavericks до Yosemite

На следующем этапе, если у вас ноутбук, выбираем Laptop Support. Если нет - жмём далее. Насчёт пункта USB Legacy Support не знаю. Скорее всего это для тех, у кого проблемы с USB-портами из коробки. Мне этот пункт не понадобился.

Как обновить хакинтош с OS X Mavericks до Yosemite

Жмём Continue, снова Continue, вводим пароль пользователя и ждём, когда Unibeast сделает нам загрузочную установочную флэшку.

Как обновить хакинтош с OS X Mavericks до Yosemite

По окончании - перезагружаем комп, при загрузке выбираем нашу флэшку и грузимся с неё.

Обновление OS X Mavericks до Yosemite

Если всё хорошо - попадаем в загрузчик Chimera. В меню выбираем наш USB-диск. После чего мы должны попасть в установщик OS X Yosemite. Чаще всего, так просто он не запускается. Поэтому при выборе USB в Chimera можно ещё ввести флаги загрузки (просто начать их набирать на клавиатуре и набранный текст появится внизу). Я просто загрузился с ключами "-v -f -x" (без кавычек) и попал в установщик. Хотя, кажется, сначала я увидел чёрный экран, поэтому кроме этих 3 ключей, мне надо было ещё добавить GraphicsEnabler=Yes до кучи. Далее следуем стандартным шагам установки. Когда доходим до выбора диска, на который ставить ОС - выбираем наш диск, на котором уже установлена OS X Mavericks - установщик автоматически обновит всё до Yosemite и сохранит настройки и ваши файлы.

По окончании всего установщик попросит перезагрузить комп. Перезагружаем. Снова грузимся с нашего USB-диска. В меню уже выбираем наш диск, на который мы установили Yosemite. Мне нужно было грузиться снова с ключами -v -f -x.

Ну а дальше уже разгребаем проблемы. Если всё хорошо - вы загрузитесь в безопасный режим в OS X, где из скачанного ранее Multibeast сможете установить все нужные вам драйвера.

Мне повезло меньше.

Грабли

Сначала я понял, что мой старый загрузчик ОС не грузит, а загрузчик с USB грузит. Установка загрузчика из Multibeast просто ничего не делала. Именно поэтому мне пришлось отдельно качать и ставить Chameleon и потом ставить Chimera. Я долго до этого доходил путём проб и ошибок. Долго, т.к. каждая перезагрузка компа занимала около 10 минут.

Затем я обнаружил в консоли ошибку, что FakeSMC.kext уже загружен и попытка загрузить дубликат оси не нравилась. Оказалось, что со старых времён, когда я ковырялся почти наугад с драйверами, у меня был какой-то myHack.kext, который лежал в /System/Library/Extension, в котором уже содержался FakeSMC старой версии, который в общем-то и не подходил новой оси, и блокировал загрузку нового, который ставился из Multibeast. Пришлось удалять его.

С редактированием файла /Extra/org.chameleon.Boot.plist у меня тоже всё не так гладко вышло. Т.к. загрузчик у меня был старый - он на то, что строку убрали ругался. Соответственно если что-то пошло не так, то загрузиться ты уже не можешь. В итоге пришлось грузится в Single User Mode (при загрузке добавляется ключ -s) и в консоли опять править этот файл. Причём рабочим решением было оставить это строки, написав вместо mach_kernel - /Systems/Library/Kernels/kernel. А может и не в этом было дело. Я, в общем-то, и сам не понял со своей путаницей из-за загрузчика. В общем, если загрузчик стоит последний, то либо 2 строчки эти удаляем, либо вместо mach_kernel пишем /Systems/Library/Kernels/kernel. Сейчас в работающей систему у меня этих строк нет :)

Как обновить хакинтош с OS X Mavericks до Yosemite

При установке пакетов из Multibeast там есть раздел Customize -> System Definitions, где можно установить, чтобы ОС считала наш писюк Mac Pro, или Mac Mini или iMac, или Macbook Pro. В общем, система нормально загрузилась у меня если определить комп как iMac 14,2. Однако, после этого я решил обновить родные драйвера NVIDIA для макоси и установщик сказал, что этот компьютер несовместим. Я стал перебирать варианты Mac Pro начиная с последнего (6,1), после чего система даже загружаться в нормальном режиме не хотела (приходилось опять грузиться с ключами -v -x -f). В итоге рабочий вариант оказался Mac Pro 3,1. С ним и система нормально грузится, и установщик новых драйверов NVIDIA согласился ставиться.

И последние грабли - описанные в моей шпаргалке ранее - Kernel Panic с описанием ошибки Kernel extensions in backtrace org.apple.driver.applertc(1.5). Правда, в новой версии макоси в конце в скобках стоит уже не 1.5, а 2.0. Так вот, для её решения нужно установить пакет "10.8.1 Rollback" из Multibeast из секции Drivers -> System -> AppleACPIPlatform Rollback. Вот только он есть только в Multibeast 6-й ветки. Благо, у меня остался старый 6.4.2, откуда я его и установил. В Multibeast 7 его уже нет. Там есть пакет "10.9.5 AppleACPIPlatform Rollback", но он мою проблему не решил. Пришлось ставить старый пакет.

В общем, спустя примерно 6 часов тыканий, я всё-таки всё настроил, и решил, что напишу этот пост. Надеюсь, этот пост кому-то сэкономит время, чтобы не тыкаться как я. Ну, как минимум, потом и мне может пригодиться, если придётся что-то делать снова. Кстати, много типовых проблем и их решений есть тут. По этой ссылке, собственно, я и нашёл краткую инструкцию по обновлению и решение некоторых проблем. Правда, там всё на английском.

Удачи, грёбаный хакинтош :)

keyboard_return back