- # Making the installer in macOS
- # Downloading macOS: Modern OS
- # Downloading macOS: Legacy OS
- # Setting up the installer
- # Legacy Setup
- # Setting up OpenCore’s EFI environment
- # Создание установщика в macOS
- # Скачивание macOS: современные версии
- # Скачивание macOS: устаревшие версии
- # Настройка установщика
- # Настройка Legacy
- # Настройка EFI окружения OpenCore
- # OpenCore и macOS 11: Big Sur
- # Содержание
- # Предварительные условия
- # Поддерживаемые SMBIOS
- # Поддерживаемое оборудование
- # Обновление кекстов, загрузчика и config.plist до актуального
- # Примечание для AMD
- # Примечание для Intel HEDT
- # Известные проблемы
- # Установка
- # Устранение неполадок
- # Зависает на Forcing CS_RUNTIME for entitlement
- # Зависает на PCI Configuration Begins на платах Intel X99 и X299
- # Зависает на ramrod (^^^^^^^^^^^^^)
- # X79 и X99 паникуют на IOPCIFamily
- # DeviceProperties не инжектируется
- # Клавиатура и мышь сломаны
- # Ранняя паника ядра на max_cpus_from_firmware not yet initialized
- # Не удается обновить Big Sur до более новых версий
- # Сломанная утилита обновлений
- # Сломанный Seal
- # Паника ядра на Rooting from the live fs
- # Asus Z97 и HEDT(т.е. X99 и X299) не могут пройти второй этап установки
- # На ноутбуке ядро паникует на cannot perform kext scan
# Making the installer in macOS
While you don’t need a fresh install of macOS to use OpenCore, some users prefer having a fresh slate with their boot manager upgrades.
To start we’ll want to grab ourselves a copy of macOS. You can skip this and head to formatting the USB if you’re just making a bootable OpenCore stick and not an installer. For everyone else, you can either download macOS from the App Store or with Munki’s script.
# Downloading macOS: Modern OS
- This method allows you to download macOS 10.13 and newer, for 10.12 and older see Downloading macOS: Legacy OS
From a macOS machine that meets the requirements of the OS version you want to install, go directly to the App Store and download the desired OS release and continue to Setting up the installer.
For machines that need a specific OS release or can’t download from the App Store, you can use the Munki’s InstallInstallMacOS utility.
In order to run it, just copy and paste the below command in a terminal window:
As you can see, we get a nice list of macOS installers. If you need a particular versions of macOS, you can select it by typing the number next to it. For this example we’ll choose 10:
- macOS 11, Big Sur Note: As this OS is quite new, there’s still some issues with certain systems to resolve. For more information, see here: OpenCore and macOS 11: Big Sur
- For first time users, we recommend macOS 10.15, Catalina
- CAUTION: With macOS 11.3 and newer, XhciPortLimit is broken resulting in boot loops
(opens new window) . We advise users either install an older OS(ie. macOS 10.15, Catalina) or find a 11.2.3 or older Big Sur installer
- For education purposes, we have a copy provided here: macOS 11.2.3 InstallAssistant(macOS)
(opens new window) and disabled XhciPortLimit , you can boot macOS 11.3+ without issue
This is going to take a while as we’re downloading the entire 8GB+ macOS installer, so it’s highly recommended to read the rest of the guide while you wait.
Once finished, you’ll find in your
/macOS-Installer/ folder a DMG containing the macOS Installer, called Install_macOS_11.1-20C69.dmg for example. Mount it and you’ll find the installer application.
- Note: We recommend to move the Install macOS.app into the /Applications folder, as we’ll be executing commands from there.
- Note 2: Running Cmd+Shift+G in Finder will allow you to easily jump to
From here, jump to Setting up the installer to finish your work. If you want to check the integrity of your download, you can check this repository of checksums
(opens new window) , although do note that these are crowdsourced checksums and may not be a reliable way to check for authenticity.
# Downloading macOS: Legacy OS
This method allows you to download much older versions of OS X, currently supporting all Intel versions of OS X(10.4 to current)
# Setting up the installer
Now we’ll be formatting the USB to prep for both the macOS installer and OpenCore. We’ll want to use macOS Extended (HFS+) with a GUID partition map. This will create two partitions: the main MyVolume and a second called EFI which is used as a boot partition where your firmware will check for boot files.
- Note: By default, Disk Utility only shows partitions – press Cmd/Win+2 to show all devices (alternatively you can press the View button)
- Note 2: Users following «Legacy macOS: Online method» section can skip to Setting up OpenCore’s EFI environment
Next run the createinstallmedia command provided by Apple
(opens new window) . Note that the command is made for USB’s formatted with the name MyVolume :
This will take some time so you may want to grab a coffee or continue reading the guide (to be fair you really shouldn’t be following this guide step by step without reading the whole thing first).
You can also replace the createinstallmedia path with that of where your installer’s located (same idea with the drive name).
Legacy createinstallmedia Commands
# Legacy Setup
For systems not supporting UEFI boot, see below:
Setting up Legacy Boot
To start, you need the following:
- BootInstall_IA32.tool or BootInstall_X64.tool
- This can be found in OpenCorePkg under /Utilties/LegacyBoot/
- Install USB(Created above)
Within your OpenCore build folder, navigate to Utilities/LegacyBoot . Here you’ll find a file called BootInstall_ARCH.tool . What this does is install DuetPkg to your desired drive.
Now run this tool in terminal with sudo(This tool will likely fail otherwise):
This will give you a list of available disks, choose yours and you will be prompted to write a new MBR. Choose yes [y] and you’ll be finished.
This will provide you with an EFI partition with either a bootia32 or bootx64 file
# Setting up OpenCore’s EFI environment
Setting up OpenCore’s EFI environment is simple – all you need to do is mount our EFI system partition. This is automatically made when we format with GUID but is unmounted by default, this is where our friend MountEFI
You’ll notice that once we open the EFI partition, it’s empty. This is where the fun begins.
Источник
# Создание установщика в macOS
В то время как вам не нужна чистая установка macOS чтобы использовать OpenCore, некоторые пользователи предпочитают иметь свежую версию ОС с обновлением их Boot Manager.
Для начала, мы захотим получить себе копию macOS. Вы можете пропустить этот шаг и перейти к форматированию USB, если вы просто делаете загрузочную флешку с OpenCore, а не установщик. Для всех остальных, вы можете загрузить macOS из App Store или с помощью скрипта от Munki.
# Скачивание macOS: современные версии
- Этот метод позволяет вам загрузить macOS 10.13 и новее, для 10.12 и старее, смотрите Скачивание macOS: устаревшие версии
С компьютера macOS, отвечающего требованиям версии ОС, которую вы хотите установить, перейдите в App Store и загрузите желаемый релиз ОС и продолжайте настройку установщика.
Для компьютеров, которым нужен конкретный релиз ОС или не удается загрузить из App Store, вы можете использовать утилиту InstallInstallMacOS от Munki.
Чтобы запустить его, просто скопируйте и вставьте следующую команду в терминал:
Как вы видите, мы получаем большой список установщиков macOS. Если вам нужна определенная версия macOS, вы можете выбрать её, набрав её номер. Для этого примера, мы выберим 10:
- Примечание к macOS 11, Big Sur: Так как эта ОС совершенна новая, есть некоторые проблемы с определенными системами, которые нужно решить. Для получения дополнительной информации, смотрите здесь: OpenCore и macOS 11: Big Sur
- Для начинающих пользователей, мы рекомендуем macOS 10.15, Catalina
- Примечание к GPU Nvidia: напоминание о том, чтобы проверить, поддерживает ли ваше оборудование новые ОС, смотрите Аппаратные ограничения
Это займёт некоторое время, поскольку мы загружаем установщик macOS весом 8Гб+, поэтому мы настоятельно рекомендуем прочитать остальную часть руководства, пока вы ждёте.
По завершению, вы найдёте в папке
/macOS-Installer/ файл DMG содержащий установщик macOS, и названный, например Install_macOS_11.1-20C69.dmg . Смонтируйте его и вы найдёте приложение-установщик.
- Примечание: Мы рекомендуем переместить приложение Установка macOS.app в папку /Applications , поскольку мы будем выполнять команды в этой директории.
- Примечание 2: Нажатие сочетания клавиш Cmd+Shift+G в Finder позволит вам легче перейти к папке
Начиная отсюда, перейдите к Настройке установщика чтобы закончить свою работу.
# Скачивание macOS: устаревшие версии
- Устаревшие версии macOS: автономный метод
- Поддерживаются 10.10-10.12
- Устаревшие версии macOS: онлайн метод
- Поддерживаются 10.7-11
- Устаревшие версии macOS: образы дисков
- Поддерживаются 10.4-10.6
# Настройка установщика
Теперь мы форматируем USB, чтобы подготовить его как к установщику macOS, так и к OpenCore. Мы хотим использовать macOS Extended (HFS+) с таблицей разделов GUID. Это создаст два раздела: основной MyVolume и второй под названием EFI , который используется как загрузочныйц раздел, где ваш firmware будет проверять загрузочные файлы.
- Примечание: По умолчанию, Дисковая Утилита показывает только разделы — нажмите Cmd/Win+2 , чтобы показать все накопители (или же можете нажать на кнопку Вид (View))
- Примечание 2: Пользователи следовавшие разделу «Устаревшая macOS: онлайн метод» могут перейти к Настройке EFI окружения OpenCore
Затем запустите команду createinstallmedia предоставленную Apple
(opens new window) . Обратите внимание на то, что эта команда используется для отформатированного USB с названием MyVolume :
Это займёт некоторое время, так что вы можете взять чашечку кофе или продолжить читать руководство (честно говоря, вам не стоит следовать этому руководству шаг за шагом, не прочитав это всё сначала).
Также вы можете поменять путь createinstallmedia на тот, где находится ваш установщик (то же самое с названием накопителя)
Устаревшие createinstallmedia команды
# Настройка Legacy
Для систем, не поддерживающих UEFI загрузку, смотрите ниже:
Настройка Legacy загрузки
Для начала, вам понадобится следующее:
- BootInstall_IA32.tool или BootInstall_X64.tool
- Может быть найдено в OpenCorePkg по пути /Utilties/LegacyBoot/
- Установочная USB флешка(создана выше)
В папке OpenCore, перейдите к Utilities/LegacyBoot . Здесь вы найдете файл названный BootInstall_ARCH.tool . Он устанавливает DuetPkg на нужный накопитель.
Теперь запустите эту утилиту в терминале в sudo(В противном случае, эта утилита, скорее всего, потерпит неудачу):
Это покажет вам список доступных дисков, выберите нужный, и вам будет предложено записать новый MBR. Выберите yes [y] , и на этом вы закончите.
Это даст вам EFI раздел с bootia32 или bootx64 файлом
# Настройка EFI окружения OpenCore
Настроить EFI окружение OpenCore просто — всё что вам нужно сделать, это смонтировать наш системный EFI раздел. Это автоматически делается, когда мы форматируем в GUID, но по умолчанию размонтируется, так что появляется наш друг MountEFI
Вы заметите, что как только мы откроем EFI раздел — он будет пуст. Вот здесь и начинается самое интересное.
Источник
# OpenCore и macOS 11: Big Sur
Снова наступило то время года, а вместе с ним и новая бета-версия macOS. Вот вся информация, которая вам нужна, чтобы начать работу.
На этой странице будет небольшое обсуждение того, что именно вам нужно подготовить к обновлению на Big Sur, более подробнее о том, что изменилось в Big Sur, можно найти здесь:
# Содержание
# Предварительные условия
Прежде чем мы сможем сразу приступить к установке Big Sur, нам нужно рассмотреть несколько вещей:
# Поддерживаемые SMBIOS
В Big Sur перестались поддерживаться некоторые SMBIOS на Ivy Bridge и Haswell, так что смотрите ниже, чтобы ваш не перестал поддерживаться:
- iMac14,3 и старее
- Примечание: iMac14,4 все еще поддерживается
- MacPro5,1 и старее
- MacMini6,x и старее
- MacBook7,1 и старее
- MacBookAir5,x и старее
- MacBookPro10,x и старее
Если ваш SMBIOS поддерживается в Catalina и не указан выше, вы можете идти дальше!
SMBIOS поддерживаемые в macOS Big Sur:
- iMac14,4 и новее
- MacPro6,1 и новее
- iMacPro1,1 и новее
- MacMini7,1 и новее
- MacBook8,1 и новее
- MacBookAir6,x и новее
- MacBookPro11,x и новее
Полный список поддерживаемых SMBIOS, включая поддержку ОС, см. здесь: Выбор правильного SMBIOS
Для тех, кому нужен простой переход на своих машинах:
- iMac13,1 должен теперь использовать iMac14,4
- iMac13,2 должен теперь использовать iMac15,1
- iMac14,2 и iMac14,3 должны теперь использовать iMac15,1
- Примечание: пользователи процессоров AMD с графическими процессорами Nvidia могут найти MacPro7,1 более подходящим
- iMac14,1 должен теперь использовать iMac14,4
# Поддерживаемое оборудование
Не так много оборудования перестало поддерживаться, но вот некоторое из них:
- Официально процессоры Ivy Bridge U, H и S.
- Эти процессоры по-прежнему будут загружаться без особых проблем, но обратите внимание, что Mac с потребительскими Ivy Bridge не поддерживаются в Big Sur.
- Процессоры Ivy Bridge-E по-прежнему поддерживаются благодаря MacPro6,1
- Поддержку iGPU Ivy Bridge планируется прекратить
- Однако драйверы для HD 4000 и HD 2500 всё ещё присутствуют в 11.0.1
- Wi-Fi-карты на базе BCM4331 и BCM43224.
- См. Wireless Buyers guide
(opens new window) о потенциальных картах, на которые можно перейти.
Возможный обходной путь состоит в инжекции патченного IO80211Family, подробнее см. здесь: Патчи IO80211(opens new window)
- См. Wireless Buyers guide
- Некоторые SATA-контроллеры
- По каким-то причинам, Apple удалила класс AppleIntelPchSeriesAHCI из AppleAHCIPort.kext. Из-за полного удаления класса, попытка подмены на другой ID (обычно выполняется SATA-unsupported.kext) может закончиться неудачей для многих и создать нестабильность для других.
- Частичное решение: инжектировать версию от Catalina с пропатченными конфликтующими символами. Вы можете найти кекст здесь: Патченный AppleAHCIPort.kext от Catalina
(opens new window)
- Мы рекомендуем установить для MinKernel значение 20.0.0 для кекста CtlnaAHCIPort.kext во избежание любых потенциальных проблем. Этот способ будет работать как в Catalina, так и в Big Sur, поэтому если хотите, вы можете удалить SATA-unsupported.
Другие заметные изменения:
- Пользователям MSI Navi больше не требуется патч ATY,rom / -wegnoegpu чтобы загрузиться в установщик
- 2 этап установки, требующий рабочего NVRAM
- Asus 9 серия: дополнительную информацию см. здесь: Haswell ASUS Z97 Big Sur Update Thread
(opens new window)
- Пользователям X99 и X299 со сломанным NVRAM потребуется установить на другом компьютере и переместить SSD, когда все будет сделано
# Обновление кекстов, загрузчика и config.plist до актуального
Убедитесь, что у вас последняя версия OpenCore, кекстов и config.plist, чтобы не возникало каких-либо проблем с совместимостью. Вы можете просто загрузить и обновить OpenCore и кексты, как написано здесь здесь:
Если вы не уверены в том, какую версию OpenCore используете, вы можете запустить в терминале следующее:
- Примечание: команда about требует включенного бита 0x2 в Misc -> Security -> ExposeSensitiveData , рекомендуемое значение для ExposeSensitiveData — 0x6 , которое включает в себя 0x2 и 0x4 биты.
# Примечание для AMD
Напоминание пользователям AMD: Не забудьте обновить свои патчи ядра, предоставленными AMD OS X, иначе вы не сможете загрузить Big Sur:
# Примечание для Intel HEDT
Пользователям X79, X99 и X299 следует обратить особое внимание на следующее. В Big Sur добавлены новые требования к ACPI, так что вам нужно получить несколько новых SSDT:
Для тех, кто хотел бы скомпилированные файлы, смотрите здесь:
# Известные проблемы
С Big Sur кое-что сломалось. В основном следующее:
- Lilu
- В основном, сильно сломался патчинг пользовательского пространства, а это означает, что некоторая функциональность может быть сломана
- Это затрагивает:
- DiskArbitrationFixup
- MacProMemoryNotificationDisabler
- SidecarEnabler
- SystemProfilerMemoryFixup
- NoTouchID
- Патчи WhateverGreen DRM и -cdfon
- AirportBrcmFixup
- Форсированная загрузка определенного драйвера с помощью brcmfx-driver= может помочь
- Например, пользователям BCM94352Z может понадобиться brcmfx-driver=2 в boot-args для устранения этой проблемы, другим чипсетам понадобятся другие переменные.
- Установка MaxKernel в значении 19.9.9 для AirPortBrcm4360_Injector.kext может помочь. Больше информации в этом репозитории
(opens new window)
- Форсированная загрузка определенного драйвера с помощью brcmfx-driver= может помочь
- Подержка SATA
- Нарушение поддержки SATA произошло из-за того, что Apple удалила класс AppleIntelPchSeriesAHCI из AppleAHCIPort.kext
- Чтобы решить эту проблему, добавьте Патченный AppleAHCIPort.kext от Catalina
(opens new window) с выставленным MinKernel в значении 20.0.0
И хотя это не проблема, SIP теперь получил новый бит, поэтому для правильного отключения SIP вам нужно задать csr-active-config значение FF0F0000 . Дополнительную информацию см. здесь: Отключение SIP
# Установка
Руководства были обновлены для соответствия с Big Sur, см. подходящую среду ОС для вас:
# Устранение неполадок
# Зависает на Forcing CS_RUNTIME for entitlement
На самом деле это та часть, где macOS запечатывает системный том и где может показаться, что macOS застряла. НЕ ПЕРЕЗАГРУЖАЙТЕСЬ, думая, что вы застряли, это займет некоторое время, иначе вы сломаете установку.
# Зависает на PCI Configuration Begins на платах Intel X99 и X299
Как было ранее упомянуто, материнские платы Intel HEDT могут иметь некоторые проблемы с RTC устройствами в ACPI. Чтобы устранить эту неполадку, вам нужно взглянуть на свое RTC устройство, и посмотреть, какие регионы отсутствуют. Для получения дополнительной информации см. здесь: SSDT-RTC0-RANGE.dsl
# Зависает на ramrod (^^^^^^^^^^^^^)
Если вы застряли на разделе ramrod (в частности, он загружается, выдаёт эту ошибку, и перезагружается снова в эту ошибку, вызывая цикл), это намекает, что ваш SMC эмулятор сломан. Чтобы исправить это, у вас есть 2 варианта:
- Убедитесь, что вы используете последнии сборки VirtualSMC и Lilu, с помощью boot-arg vsmcgen=1
- Переключитесь на FakeSMC от Rehabman
(opens new window) (вы можете использовать упомянутый выше трюк c MinKernel / MaxKernel , чтобы ограничить использование FakeSMC Big Sur’ом и выше)
И при переключении кекстов, убедитесь, что FakeSMC и VirtualSMC не включены одновременно в вашем config.plist, поскольку это вызывает конфликты.
# X79 и X99 паникуют на IOPCIFamily
Это происходит из-за того, что в ACPI включены неиспользуемые Uncore PCI Bridges, и поэтому IOPCIFamily будет вызывать панику ядра, при зондировании неизвестных устройств. Чтобы исправить это, вам необходимо добавить SSDT-UNC
# DeviceProperties не инжектируется
В Big Sur, macOS стала более требовательной к устройствам, представленным в ACPI. В особенности, если вы инжектируете важные свойства для WhateverGreen или AppleALC, вы можете заметить, что они больше не применяются. Чтобы проверить, определяет ли ваш ACPI ваше оборудование, проверьте acpi-path в IORegistryExplorer
Если это свойство не найдено, вам необходимо создать SSDT, который обеспечивает полный путь, поскольку, скорее всего, у вас есть PCI Bridge, который не задокументирован в ваших ACPI таблицах. Пример такого SSDT можно найти здесь: SSDT-BRG0
- Примечание: Эта проблема может также всплывать и в старых версиях macOS, но Big Sur больше всего подвержен проблемам.
# Клавиатура и мышь сломаны
Для некоторых Legacy систем, вы можете заметить, что во время работы USB портов, ваши HID устройства, такие как клавиатура и мышь, могут быть сломаны. Чтобы решить эту проблему, добавьте следующий патч:
config.plist -> Kernel -> Patch:
Key | Type | Value |
---|---|---|
Base | String | _isSingleUser |
Count | Integer | 1 |
Enabled | Boolean | True |
Find | Data | |
Identifier | String | com.apple.iokit.IOHIDFamily |
Limit | Integer | 0 |
Mask | Data | |
MaxKernel | String | |
MinKernel | String | 20.0.0 |
Replace | Data | B801000000C3 |
ReplaceMask | Data | |
Skip | Integer | 0 |
# Ранняя паника ядра на max_cpus_from_firmware not yet initialized
Если вы получаете раннюю панику ядра на max_cpus_from_firmware not yet initialized , это связано с новым методом acpi_count_enabled_logical_processors добавленным в ядро macOS Big Sur. Чтобы решить эту проблему, убедитесь, что вы используете OpenCore версии 0.6.0 или новее с включенным квирком AvoidRuntimeDefrag .
- Примечание: Из-за того, насколько рано происходит эта паника ядра, вы сможете записать ее в лог только через последовательный порт или перезагрузку в известной рабочей установке macOS и проверить свою панику, залогированную в NVRAM.
- Большинство пользователей увидят эту панику просто как [EB|#LOG:EXITBS:START]
Пример паники ядра
Через логирование последовательных портов или NVRAM:
Крайний случай с Legacy
На определенном оборудовании, в основном на HP DC7900, ядро не может определить сколько потоков поддерживает ваше оборудование. Это приводит к вышеупомянутой панике ядра, и поэтому нам нужно жёстко указать значение ядер процессора.
Чтобы это сделать, добавьте следующий патч(заменив 04 из B8 04 00 00 00 C3 на количество потоков, которое ваше оборудование поддерживает):
Key | Type | Value |
---|---|---|
Base | String | _acpi_count_enabled_logical_processors |
Count | Integer | 1 |
Enabled | Boolean | True |
Find | Data | |
Identifier | String | Kernel |
Limit | Integer | 0 |
Mask | Data | |
MaxKernel | String | |
MinKernel | String | 20.0.0 |
Replace | Data | B804000000C3 |
ReplaceMask | Data | |
Skip | Integer | 0 |
# Не удается обновить Big Sur до более новых версий
Как правило, есть 2 основных виновника:
# Сломанная утилита обновлений
Обычно это наблюдается с каждым бета-циклом, поэтому просто отмените регистрацию и зарегистрируйтесь снова:
Затем снова проверьте настройки, и обновления должны появиться. Если нет, запустите следующее:
Это должно помочь возобновить работу утилиты обновлений. Если у вас все еще есть проблемы, проверьте раздел Сломанный Seal.
# Сломанный Seal
C новыми снапшотами системного диска, теперь они сильно зависят от этого для правильного применения обновлений ОС. Поэтому, когда пломба (seal) диска сорвана, macOS откажется обновлять диск.
Чтобы проверить себя, убедитесь, что Snapshot Sealed возвращает YES:
Если возвращается Snapshot Sealed: Broken , вам нужно выполнить следующее:
- Обновите OpenCore до 0.6.4 или новее
- В частности, требуется коммит ba10b5d
(opens new window) или новее
- В основном для тех, кто вмешивался в системный том
- См. здесь о том, как вернуться: Откат APFS снапшотов
# Паника ядра на Rooting from the live fs
Это связано с проблемами включенного Secure Boot в Beta 10 со старыми версиями OpenCore. Просто обновитесь до 0.6.4, чтобы решить эту проблему
- В частности, требуется коммит ba10b5d
# Asus Z97 и HEDT(т.е. X99 и X299) не могут пройти второй этап установки
В Big Sur есть высокая зависимость от нативного NVRAM при установке, иначе установщик застрянет на цикличной перезагрузке. Чтобы решить эту проблему, вам необходимо:
- Установите Big Sur на другом компьютере, а затем перенесите диск
- Исправьте NVRAM материнской платы
- в основном применимо к Asus серии Z97
# На ноутбуке ядро паникует на cannot perform kext scan
Это связано с тем, что в кэше ядра находится несколько копий одного и того же кекста, а точнее, несколько копий VoodooInput. Просмотрите Kernel -> Add и убедитесь, что у вас включена только 1 копия VoodooInput.
- Примечание: Как VoodooI2C, так и VoodooPS2 имеют комплектную копию VoodooInput, которую вы отключаете в зависимости от личных предпочтений
Источник