что такое clover для mac os
Установка Mac OS X на PC. Часть 17: Clover
Мы давно собирались написать в нашем хакинтошном цикле статей о замечательном загрузчике Clover. На самом деле, мы следим за этим проектом с самого момента его создания — с каждым месяцем Clover становится всё более функциональным, и уже в самом скором будущем его можно будет объявить лучшим из современных загрузчиков.
Но главное в Кловере — то, что его создаёт наш с вами соотечественник, slice. С ним можно пообщаться на форуме applelife.ru, рассказать ему о багах, предложить новые функции, и шанс быть услышанным гораздо больше, нежеле в случае с Chameleon или XPC.
Про Clover можно рассказывать достаточно долго, поэтому сегодня мы ограничимся кратким обзором возможностей, достоинств и недостатков загрузчика.
Предыстория Clover простая: модный ранее загрузчик XPC никак не хотел работать на ноутбуке slice, в связи с чем он решил заняться созданием собственного, менее придирчивого к оборудованию хакинтошного загрузчика, заодно развив накопленные наработки в области запуска EFI на BIOS-платах.
На сегодняшний день Clover — динамично развивающийся EFI-загрузчик, который догнал и перегнал по возможностям конкурентов. С совместимостью тоже всё в порядке: попробовать его в действии могут обладатели большинства современных материнок на базе Intel-процессоров.
Функции Clover можно разделить на две группы — то, что умеют и должны уметь все подобные загрузчики, и то, что умеет только данный загрузчик. К первой группе относятся:
Но куда интереснее отличительные особенности Clover:
Clover ставится примерно так же, как Chameleon — нужно будет заменять загрузочные сектора. Поддерживается установка на флешки, жёсткие диски и скрытый EFI-раздел GPT-дисков. Удобный PKG-установщик избавляет пользователя от необходимости вводить команды в Терминале, всё отлично автоматизировано.
Clover селится в папке EFI того раздела, загрузочные сектора которого заменены. Структура файлов и папок следующая:
Ваш пропатченный файл DSDT нужно положить в папку EFI/ACPI/patched. Дополнительные EFI-модули располагаются в папках drivers32 и drivers64. Драйверы для различных систем (в т.ч. и Mountain Lion) кладутся в папку kexts согласно её версиям систем. Наборы настроек для различных компьютеров лежат в подпапках внутри EFI/OEM.
Главных файлов настроек в Clover два:
Темы для Clover распаковываются в папку EFI/BOOT/themes. Кроме того, каждой теме обычно соответствует свой файл refit.conf. Кстати, тем для Кловера накопилось уже достачно, вот лишь несколько примеров:
Но красивости — дело вторичное, самое главное — чтобы Clover нормально работал на вашей конфигурации оборудования. А для этого придётся повозиться с файлом config.plist. Названия ключей в этом файле отличаются от форматов, принятых в Chameleon, iBoot или XPC, так что без правки обойтись не получится. Вот пример содержимого config.plist:
SystemParameters
boot-args
darkwake=0
prev-lang:kbd
ru:0
DefaultBootVolume
Lion
CustomUUID
8A2EBD6C-8F0D-58AC-8745-92С4A1FD177A
InjectSystemID
No
SMBIOS
BiosVendor
Apple Inc.
BiosVersion
MP51.007F.B00.0903051113
BiosReleaseDate
10/28/10
Manufacturer
Apple Inc.
ProductName
MacPro5,1
Version
1.5
Family
Mac
SerialNumber
G8031788GWR
BoardManufacturer
Apple Inc.
BoardSerialNumber
C020321R035DC771H
Board-ID
Mac-F221BEC8
CPU
ProcessorType
0x0601
CpuFrequencyMHz
2667
BusSpeedkHz
133330
QPI
2500
Graphics
GraphicsInjector
No
PCI
StringInjector
Yes
DeviceProperties
PCIRootUID
0
HDAInjection
Detect
LpcTune
Yes
ACPI
DropOemSSDT
No
GenerateCStates
No
GeneratePStates
No
smartUPS
No
PatchNMI
No
FixDsdtMask
0x0000
В верхней секции задаются флаги загрузки, язык компьютера по умолчанию, загрузочный том (по названию), UUID оборудования.
Секция SMBIOS предназначена для прописывания информации о модели Мака, под которую косит ваш хакинтош. Все параметры отсюда идентичны сведениям, которые вводятся в других загрузчиках.
В секции CPU вводится информация о вашем процессоре — его шестнадцатиричный идентификатор, частота, скорость шины (обратите внимание — в килогерцах) и QPI.
Секция Graphics позволяет прописать информацию о вашей видеокарте. Вы можете ввести объём памяти (ключ VRAM), количество видеовыходов (VideoPorts), фреймбуффер (только для AMD-карт, ключ FBName), NVCAP карты и значение display-cfg.
Секция PCI позволяет инжектировать стринги, изменить номер PCI Root, включить или отключить патчи HDA и LPC.
Наконец, секция ACPI содержит множество параметров, касающихся параметров работы процессора (С-States, P-States), режима сна, патча NMI. Патч DSDT на лету включается здесь же — вместо 0x0000 нужно ввести шестнадцатиричную маску, соответствующую сумме кодов нужных вам фиксов. Подробности см. здесь.
Подробный FAQ по установке и настройке Clover вы можете найти на форуме AppleLife.
У Clover предостаточно плюсов, думаем, из написанного выше это понятно. Но есть и несколько досадных недостатков:
В остальном Clover — прекрасный вариант для начинающего хакинтошника, который не хочет тратить время и силы на тщательную доводку системы. Clover автоматизирует множество рутинных задач, ранее стоявших перед желающими организовать хакинтош. Это загрузчик действительно делает хакинтоши ещё на шаг ближе к реальным Макам.
Использование новых NVMe SSD в качестве загрузочного диска на старых системах с Legacy BIOS (для любой ОС)
Короткий мануал — как реализовать поддержку загрузочного NVMe SSD на старых материнских платах с Legacy BIOS и с использованием Clover (для любых ОС). По следам вот этого поста, где на мой взгляд, решение не так изящно и не для всех BIOS & OS.
Суть проблемы
Старые BIOS не видят новые NVMe SSD, в отличии от EFI (UEFI). Современные ОС эти диски, как правило, видят, и после загрузки ОС работать с диском можно, а вот старый BIOS нет, следовательно, загрузиться с нового быстрого диска не получится. Ну, потому что нельзя дать команду на загрузку тому, чего не видно.
Прелюдия
NVMe SSD диск, как правило, имеет разъем М.2, и работает как бы на прямую с процессором, по шине PCI-E.
Поэтому если на вашей материнской плате нет разъема М.2, то для начала рекомендуется обзавестись переходником PCI-E >> М.2, или PCI-E RAID контроллером для SSD формата М.2.
Существует немного продвинутых NVMe SSD дисков, которые имеют на борту собственные эмулятор Legacy устройства. Например Samsung 950 Pro имеет дополнительный rom для загрузки как Legacy устройство на старых BIOS. А вот вся серия EVO такой возможности не имеет.
Решение
Немного истории
Много лет назад, когда компания Intel стала поставлять Apple свои процессоры и компоненты для применения в Маках, возникла потребность предварительного тестирования железа на совместимость с MacOS. Тогда инженеры Intel написали хитрый загрузчик DUET, который представляет собой эмулятор UEFI, загружаемый поверх Legacy BIOS и позволяющий запускать операционные системы, требующие UEFI (MacOS, например).
Однако использовать DUET «напрямую» задача весьма не тривиальная (пример, или вот еще, б-ррр. ), требующая массу ручных операций, зависящих от конкретного железа и ОС, и понимания того, что именно вы делаете.
В дальнейшем, DUET был взят за основу для нескольких проектов по созданию мульти-загрузчиков. Один из них Hackintosh — проект по установке последних MacOS на любые Intel, а в последствии и AMD машины. В результате развития Hackintosh появился многофункциональный загрузчик Clover (Клевер), который заточен, разумеется, под загрузку MacOS и Intel, но сейчас может с успехом применяться для загрузки чего угодно на, практически, чём угодно. Вот им, Клевером, мы и воспользуемся для решения нашей проблемы.
Clover Configurator
Клевер сам по себе настраивается тоже не абы как, и для того, чтобы как-то облегчить в дальнейшем процесс тюнинга, была выпущена настроечная утилита Clover Configurator, и множество мануалов по использованию.
Но беда в том, что Clover Configurator работает только в MacOS, и на Windows вы его, в лучшем случае, запустите только в VmWare.
Так же ходят слухи (в комментах), что сам автор Клевера (SergeySlice) не рекомендует использовать Clover Configurator а рекомендует редактировать конфигурационный файл руками.
Не пойдем этим путем… у нас лапки и Мастдай.
Boot Disk Utility (BDUtility.exe)
Специально для тех, у кого лапки, один русский энтузиаст написал утилиту BDUtility.exe, которая сама скачивает последний релиз Clover, делает необходимые минимальные настройки и записывает полученный образ на флешку.
Не пугайтесь вырвиглазного сайта, утилита работает отлично 🙂
Для загрузки утилиты нажмите на картинку с буквами «Bu» и синей стрелкой, посредине сайта 🙂
Примечание
Для решения нашей проблемы мы будем использовать дополнительную загрузочную флешку, с которой поверх BIOS будет загружаться Clover, идентифицировать ваш новый быстрый NVMe SSD и передавать ему команду на загрузку вашей новенькой 64-битной Windows 10 (или любой другой).
Отныне флешка навсегда будет установлена в свободном USB порту вашего компьютера, до тех пор, пока вы обновите старое железо!
Да, у кого ноутбук, тот должен озаботиться тем, что свободных портов USB мало, а длинная флешка, все время торчащая из ноута, может оказаться не достаточно эстетичной.
С другой стороны, теперь ваша флешка является крутейшим ключом защиты к вашему компьютеру, ибо без него комп просто не включится, а догадаться, что флешка должна БЫТЬ, да еще и с Клевером — это задача для истинных спецслужб.
Создание установочной флешки
Если вам удалось загрузить утилиту BDUtility — запустите ее. Она запускается под Windows и с правами администратора, будьте внимательны.
Счастливым обладателем других операционных систем стоит пропустить этот пункт и вернуться к Clover Configurator выше.
Запускаем BDUtility.exe
Далее следует выполнить ряд настроек, чтобы утилита загрузила последний дистрибутив Clover, настроила его и записала на вашу флешку. Флешка должна быть вставлена в USB-порт, и желательно начисто отформатирована.
Примечание
В настоящий момент утилита BDUtility забирает релизы Clover с сайта sourceforge.net, где размещены релизы вплоть до версии Clover_v2.5k_r5070.zip. После этого разработка Clover была перенесена на GitHub, где сейчас размещен релиз Clover_v2.5k_r5097.zip. Учтите это в работе. BDUtility может опционально пользоваться предварительно скаченными релизами Clover (но совместимыми с BDUtility), если вам необходимо использовать именно последний релиз.
Мы отправили запросы разработчикам Clover и BDUtility с просьбой прокоммуницировать между собой и переключить BDUtility на GitHub.
Настройка BDUtility:
Если загрузка произойдет, на экране должна появиться примерно такая картинка, с перечнем текущих вариантов загрузки. Можете попробовать найти вашу загрузочную запись и загрузить текущую ОС.
Драйвера NVMe
Если ваш NVMe SSD диск уже вставлен в компьютер, не пытайтесь его найти в настройках Clover — его там нет. Дело в том, что по-умолчанию Clover не загружает драйвера для NVMe устройств. Драйвера необходимо включить в загрузку вручную.
Для этого открываем флешку в проводнике.
Заходим в папку G:\EFI\CLOVER\drivers\off (где диск «G» — это ваша флешка, а папка «off» — это папка с не подключенными драйверами Клевера).
Находим файл NvmExpressDxe.efi
Нажимаем Ctrl + C, чтобы скопировать файл в буфер обмена, и копируем файл в папки G:\EFI\CLOVER\drivers\BIOS и G:\EFI\CLOVER\drivers\UEFI. Копируем на всякий случай в обе папки, чтобы не разбираться, какой у вас сейчас биос, старый BIOS или старый UEFI.
Перезагружаем компьютер, загружаемся с флешки-Clover и наблюдаем за количеством иконок на экране, обозначающих варианты загрузки — их должно стать больше, ибо теперь Clover видит ваш NVMe SSD.
Установка новой ОС на новый NVMe SSD диск
Именно этому загрузчику Clover передает управление, причем в режиме эмуляции EFI. Для справки, клеверный загрузчик моей Win64 лежит на клеверной флешке здесь G:\EFI\BOOT\BOOTX64.efi
Перенести такую ОС на NVMe диск и использовать для загрузки в режиме EFI просто так не получится, потребуется вручную сменить загрузчик ОС, а это трудоемко, не вполне оправданно и чревато, имхо.
Поэтому смело запасаемся лицензионным ключом от новой ОС (ну, или находим, где старый) и идем на страничку загрузки Media Creation Tool, чтобы сделать загрузочный диск вашей операционной системы Windows. Дело в том, что с некоторых пор Микрософт стал сам включать оба загрузчика BIOS и EFI в образ, создаваемый Media Creation Tool. И теперь эта загрузочная флешка может загружаться абсолютно на любых системах с Legacy BIOS, UEFI и EFI. А раньше приходилось обрабатывать полученный загрузочный образ и интегрировать в него Rufus, для загрузки в режиме EFI (пример, промотать до середины).
Примечание
Да, вам понадобится вторая загрузочная флешка, чтобы установить ОС на NVMe SSD.
Нет, на флешку с Clover дистрибутив Windows записать не получится.
Установка ОС
Установка операционной системы на новый NVMe SSD происходит вполне штатно и быстро.
Вам необходимо загрузиться с двумя вставленными флешками, причем загрузиться с клеверной флешки, а не с дистрибутива Windows, не перепутайте.
В интерфейсе Клевера найдите загрузку с флешки с дистрибутивом вашей ОС. Далее должна начаться установка ОС. В какой-то момент система перезагрузится (вы же ставите Windows), и вам придется выбрать для продолжения уже загрузку с вашего NVMe SSD, опять же не перепутайте! Не выбирайте повторно загрузку с дистрибутива ОС, иначе установка просто начнется заново, а нам нужно чтобы она продолжилась с SSD и, желательно, завершилась.
После установки новой системы на ваш новый NVMe SSD, в Clover появится запись, что из-под него была установлена новая ОС. Также иконка загрузки новой ОС должна появиться первой в списке загрузок, и, если я ничего не путаю, то называться она будет «Boot Microsoft EFI Boot from EFI».
И после окончательной установки ОС выньте флешку с ее дистрибутивом, чтобы она не отображалась больше в Клевере и в «Моем компьютере».
А в вашем BIOS порядок загрузки дисков должен всегда начинаться с клеверной флешки, пока не обновите железо до поддержки EFI.
Тогда, и только тогда, вы сможете гордо поставить первым ваш, к тому времени уже постаревший, NVMe SSD!.
Вот, собственно, и все
Теперь при каждой перезагрузке вы будете попадать в интерфейс Clover, и нажимать на клавишу Enter (если ваша ОС стоит в списке первой). Зато потом наслаждаться новой системой и быстрым SSD 🙂
Мне, к сожалению, в отсутствии Clover Configuator так и не удалось настроить Клевер, чтобы он автоматически загружал мою ОС, например спустя 5 сек. бездействия. Чтобы каждый раз не нажимать клавишу Enter. Но такая опция в Клевере разумеется есть.
Буду признателен, если кто-то знает как вручную, без конфигуратора, настроить такой режим загрузки. Файл настроек Клевера обычно лежит здесь G:\EFI\CLOVER\config.plist
Говорят, что за эту опцию отвечают теги:
В первом указывается время задержки перед автозагрузкой, а во втором — id диска с которого мы хотим грузиться по умолчанию, или значение LastBootedVolume, в котором запоминается id последнего диска, с которого производилась загрузка.
Но у меня почему-то не работает 🙁
Есть подозрение, что с этими значениями какой-то лаг в Клевере на AMD. То ли таймер не считает, то ли LastBootedVolume не запоминается, но не уверен.
THE END
P.S.
Но если бы вы изначально заплатили чуть побольше, и купили бы не переходник PCI-E >> М.2, а Raid контроллер для M.2 дисков, то вам бы не пришлось читать все вышенаписанное, и тем боле все это делать… Потому что Raid контроллер имеет сою собственную микросистему и эмулирует (или имитирует) себя как Legacy устройство, делая доступными все вставленные в него диски во всех биосах, старых и новых.
Установка и настройка загрузчика Clover на жесткий диск
Кстати, это очень хорошо повышает безопасность, не задумывались над этим. В данном случае флэшка является ключом к системе!
В 80% не поможет и копирование содержимого EFI раздела с флэш накопителя в EFI жесткого диска.
Почему так происходит?
Даже если вам повезет и перенос EFI с флэшки на HDD все же начнет запускать систему, то о показателях производительности и стабильности сделать прогнозы не реально. Не известно какие значения подставил Clover автоматом.
После правильной настройки в идеале EFI и Config.plist должен поддерживать любую версию. В моем случае, я могу запускать и устанавливать одним загрузчиком Mavericks, Yosemite, El Capitan и Sierra. Поэтому мой EFI раздел одинаков для установочной флэшки и для HDD.
Установка загрузчика Clover на жесткий диск
Я всем рекомендую скачивать именно последнюю версию Clover, так он уже будет доработан под более новые операционные системы OS X. Например, мой EFI, который я делал 3 года назад замечательно запустит Mavericks, но ни в какую не хочет запускать El Capitan, а вот последняя версия запускает и устанавливает любую из них. Но стоит сразу заметить, что последние версии Clover 2.40 уже не поддерживают некоторые старые версии Mac OS X, ознакомьтесь перед скачиванием.
Сегодня ради интереса ставил несколько версий и проверял на El Capitan. Время загрузки и работа Mac OS X абсолютно одинакова. Мне хотелось проверить слова популярного видео блогера по хакинтошу, который утверждает, что с каждым обновлением Clover загрузка становится дольше, что является полным бредом. Длительность загрузки зависит от многих факторов, которые я описал в этой статье.
1. Скачиваем Clover EFI Bootloader.
2. Запускаем инсталятор.
3. Настраиваем CLOVER
В моем случае Clover_v2.4k_r4012, но на данный момент уже доступно Clover_v2.4k_r4035. Как раз и я обновлюсь))).
Советую при желании прочитать, может найдете, что то очень полезным. Жмем продолжить.
Изменяем размещение установки на ваш системный диск.
Нажимаем продолжить и выбираем «Настроить»
Сейчас мы будем рассматривать настройки под UEFI загрузку, который поддерживают почти все версии БИОС на материнских платах последнего десятилетия, а как мне кажется то и предидущего тоже.
Оставляем верхние два отмеченных пункта. В этом случае для нас будет некое облегчение в выборе дополнительных драйверов, которые рассчитаны на более древние версии BIOS, дополнительные драйвера для NTFS, PS2 Mouse, FAT и так далее.
Сразу переходим к пункту Driver64UEFI
И нажимаем установить. Вводим пароль и закрываем окно Clover после установки.
Настройка EFI раздела
После установки на рабочем столе у вас появится значок при монтированного раздела EFI, который создается автоматически загрузчиком. Если вы ставили настройки, как я, то при открытии у вас будут такие же файлы на диске.
Для владельцев карт Radeon потребуется Verde.kext, при установке и загрузке Mavericks с видео картой ATI AMD Radeon7xxx Verde не нужен, она работает, как родная. Во все версиях выше 10.9 без него видео карта не заведется, будете наблюдать черный экран после загрузки системы.
Многие рекомендуют закинуть сюда кексты сети, я же этого не делаю, что бы была возможность установки и переустановки OS X при надобности, используя EFI раздел жесткого диска, у меня отпадает потребность ставить CLOVER на флэшку в этом случае. Я устанавливаю сетевой и звуковой кекст непосредственно в систему.
А вы знали, что когда вы форматируете через дисковую утилиту при установке системный раздел, EFI не форматируется, что и делает возможным постоянно его использовать. Если не уверены, ставьте CLOVER и на флэшку, хуже не будет, но поможет избежать неприятных ситуаций.
Обратите внимание на то, как он должен отображаться. Если вы просто закинете не компилированный и файл с ошибками, то он будет отображаться, как обычный текстовый файл. В этом случае скорее всего данные CLOVER будет генерировать автоматически, не обращая внимания на ваш файл.
Настройка config.plist в CLOVER
Для настройки config.plist я использую Clover configurator. Возможно в другой версии он будет немного отличаться интерфейсом, но после обновления будет, как на скриншотах.
Чаще всего CLOVER автоматом генерирует довольно неплохой config.plist, но все же в нем могут допускаться не точности, которые вы должны будете исправить, и обязательно нужно будет его дополнить.
Генерированный Clover автоматически:
Мой config.plist:
Но все же эти настройки в большем количестве случаев вполне способны запустить систему.
Если у вас есть готовый DSDT прописываете имя в поле DSDT name. Min и Max multiplier указывать можно, но не всегда. Этот пункт может притормаживать систему, потому что данные биоса, DSDT будут не совпадать, что повлечет конфликт и заметное притормаживание Mac OS.
В пункте BOOT, вы указываете аргументы для загрузки, таймер автоматического запуска системы CLOVER, основной диск для загрузки системы.
CPU это больше для косметики, какое вы установите значение здесь в первом поле:
Такое значение будет отображаться в окне об этом Mac.
Следующий важный пункт Graphics
В нем включается поддержка карт Nvidia и ATI, но не всегда эти пункты нужно включать, они очень различаются для каждой серии видео карт. Если вы включите не нужный пункт видео карта не запустится после загрузки системы, экран просто выключится и перейдет в режим ожидания.
Очень важный пункт SMBIOS, без него не загрузится система.
Очень часто, достаточно в автоматически сгенерированный config.plist просто добавить SMBIOS, но как я уже писал все зависит только от вашего железа.
Важно! Если при настройке файла конфигурации, вы по каким то причинам не убедившись в работоспособности, включили быструю загрузку «Fast» или таймер «0», а в панель Clover нужно попасть, то сразу после загрузки BIOS нажмите несколько раз клавишу «Пробел«. Это вызовет окно выбора загрузки и конфигурации загрузчика.
Если же с первого раза у вас не получилось, то монтировать EFI раздел можно с помощью EFI Mounter. В Sierra только с помощью команды в терминале:
Что бы не быть голословным, настроенный при написании config я поместил в EFI и замечательно перезагрузился. То есть для моего железа вполне достаточно в автоматический config.plist созданный CLOVER просто добавить SMBIOS.