*적용중인 도장
OpenCore는 Clover에서 분기하고 OZMOSIS 의 흐름을 가져온 새로운 오픈 소스 부트 로더입니다.
Z390 마더 보드에서 움직이다가 시작되었습니다.
OpenCore는 완벽하게 오픈 소스 인 것이 특징 새로운 부트 로더입니다. Clover에서 분기하고 OZMOSIS의 흐름을 불러올 수 있습니다. OZMOSIS을 개발했다 독일 Hackintosh-Forum.de 사람들이 개발을 진행하고있는 것 같습니다.OZMOSIS는 어떤 것이 었는지라고하면, 펌웨어 형식의 부트 로더에서 마더 보드 BIOS를 대체 작동합니다. OZMOSIS를 마더 보드 BIOS 업데이트 기능을 사용하여 설치하면 보통의 메인 보드가 macOS를 직접 시작할 수 마더 보드로 변신합니다. macOS도 macOS 프로그램도 실제처럼 그대로 부팅 할 수 있다는 이상을 쫓은 부트 로더이었습니다 만, 조정 또는 갱신 할 때마다 BIOS 업데이트 작업을하는 것은 힘들었다. Chameleon이나 Clover 같이 드라이브의 일부에 기록 방식이 다양한 편입니다. 것으로 OZMOSIS별로 유행하지 않았습니다. 개발 팀도 그것을 알고 이번에는 Clover 방식의 부트 로더를 만들게 한 것이라고 생각됩니다.
여러가지 방법이 있지만 가장 손쉬운 것은 최근 Kext Updater.app을 사용하는 것입이다. Kext Updater도 OpenCore를 만들고있는 사람들이 활약하고있는 Hackintosh-Forum.de로 만들어져 있기 때문에, 그 관계에서 OpenCore 다운로드 기능이 구현되어있는 것이라고 생각합니다. Load Bootloader 라디오 버튼을 선택하고 오른쪽의 팝업 메뉴에서 OpenCore를 선택합니다.
https://x86.co.kr/kext/3696376
다운로드하면 Kext-Updates 폴더에 OpenCore라는 폴더가 있고,이 중 디버그 버전과 릴리스 버전
회색 항목은 옵션 항목입니다. EFI 아래에 BOOT와 OC를 만들고, OC 중 Drivers에 efi 파일을 Kexts에 kext 파일을 넣으면 되는 것 같습니다.
또한 ACPI 폴더에 SSDT-UIAC.aml을 넣었습니다.
Docs 폴더 안에 설명서와 함께 config.plist의 샘플 파일도 들어 있습니다. 이름이 Sample.plist되어 있습니다.
우선 기종 설정에서입니다. 아무래도 <key> PlatformInfo </ key>에서 <key> Generic </ key> 안이 기종 설정 관련 같다. 이 부분의 MLB가 Clover에서 BoardSerialNumber에 대응하고 SystemProductName이 ProductName에 SystemUUID이 SmUUID에 해당하는 것 같습니다. 각각의 값을 써 둡니다.
<key> MLB </ key> <string> C02921130GULNV9JA </ string> <key> SystemProductName </ key> <string> iMac19,1 </ string> <key> SystemSerialNumber </ key> <string> C02YR2YHJV3Q </ string> <key> SystemUUID </ key> <string> E45005B4-95C7-4B0C-9739-30947DDEB37C </ string>
이 상태에서 시작 시키려고했는데, FileVault의 준비가되어 있지 않다는 같은 내용의 메시지가 나오고 실행이 중단되었습니다. config.plist를 보면 <key> Misc </ key> <key> Security </ key>에서 FileVault 같은 설정이 활성화되어있는 것 같습니다. 여기에서 true 부분 2 개소를 false로 쓰여졌습니다. 이제 메시지가 나오지 않게되었습니다.
<key> Security </ key> <dict> <key> ExposeSensitiveData </ key> <integer> 2 </ integer> <key> HaltLevel </ key> <integer> 2147483648 </ integer> <key> RequireSignature </ key> <false /> <key> RequireVault </ key> <false /> <key> ScanPolicy </ key> <integer> 983299 </ integer> </ dict>
폴더에 넣는 것만 아니라 config.plist에 써놓아야 합니다. FileVault에 관련된 efi 파일도 들어 있습니다. 이 목록을 실제로 사용하고있는 efi 파일에 쓰여졌습니다.
<key> UEFI </ key> <dict> <key> Drivers </ key> <array> <string> VBoxHfs.efi </ string> <string> ApfsDriverLoader.efi </ string> <string> EmuVariableUefi.efi </ string> <string> FSInject.efi </ string> <string> AptioMemoryFix.efi </ string> <string> VirtualSmc.efi </ string> </ array>
이 기술 순으로 로드되는 것 같아서 차례도 중요한 것 같습니다.
<dict> <key> BundlePath </ key> <string> IntelMausiEthernet.kext </ string> <key> Comment </ key> <string> </ string> <key> Enabled </ key> <true /> <key> ExecutablePath </ key> <string> Contents / MacOS / IntelMausiEthernet </ string> <key> MatchKernel </ key> <string> </ string> <key> PlistPath </ key> <string> Contents / Info.plist </ string> </ dict>
또한 USBInjectAll.kext의 설명도 추가했습니다. 순서가 중요한 것 같습니다. array 앞부분에 넣으면 동작하지 않습니다. array의 마지막에 추가했습니다.
<dict> <key> BundlePath </ key> <string> USBInjectAll.kext </ string> <key> Comment </ key> <string> </ string> <key> Enabled </ key> <true /> <key> ExecutablePath </ key> <string> Contents / MacOS / USBInjectAll </ string> <key> MatchKernel </ key> <string> </ string> <key> PlistPath </ key> <string> Contents / Info.plist </ string> </ dict>
사용하는 SSDT도 config.plist에서 지정해야하는 것 같습니다. 이번에는 SSDT-UIAC.aml을 사용합니다.
<dict> <key> Comment </ key> <string> USB list for USBInjectAll </ string> <key> Enabled </ key> <true /> <key> Path </ key> <string> SSDT-UIAC.aml </ string> </ dict>
을 추가했습니다.
BIOS에서 OpenCore를 설치 한 드라이브를 선택하면 Clover와 마찬가지로 시동 볼륨의 선택 화면이 나타납니다. 텍스트 만의 심플한 화면입니다. 여기서 10.14.5 들어간 Macintosh HD를 선택했습니다 (이 예에서는 키보드의 5를 누름).이 후, 설정에 잘못이있는 경우 위와 같은 오류 메시지가 나올 수도 있고, 시작 중지 할 수도 있습니다.
.OpenCore의 사람들은 다음과 같은 이점을 호소하고 있습니다.
확실히 Clover은 개발 과정이 너무 오픈되어 있지 않기 때문에 이해하기 어려운 부분이있을 거라고 생각합니다.
러시아에서 개발 된 Clover과 독일에서 개발 된 OpenCore는 편견 일지 모르지만 왠지 OpenCore에 안정감을 느낍니다. (조크 네요 ㅋㅋ)
개발이 오픈이므로 Hackintosh의 주류가 OpenCore로 전환 될 가능성이 높습니다.
하지만 지금 현재는 Clover에 대한 노하우가 대량으로 인터넷에 있으며, 당분간은 Clover이 사용된다고 생각합니다.
주류 부트 로더는 몇 년 전에 Chameleon에서 Clover으로 교체했습니다. 단,이 교체는 기존의 MBR (마스터 부트 레코드)에서 ESP에 대응하기 시작할 때 동적으로 패치 해주는 기능 macOS와 궁합이 잘되는 등 여러 이점을 제공했습니다.
Clover에서 OpenCore에 바꿔도 보이는 장점이 아니기 때문에 마이그레이션은 완만지도 모릅니다.
하지만 앞으로 어떻게 될지 모르겠지만 선택 사항으로서 다수의 부트로더가 있는 것은 좋다고 생각합니다
번역 및 수정한 내용이고 출처는 아래와 같습니다.
https://bootmacos.com/entry/2019/07/20/163007
아래 내용과 같이 보면 좋겠습니다.
https://x86.co.kr/opencore/3626410
https://x86.co.kr/opencore/3705225
추가 중요 보충 내용
뽀로로 뽀로로 2761336
예전에 다른 글에도 좌절금지님이 EmuVariableUEFI에 대해 언급해주신 것 같은데 추가해서 보태자면 OpenCore에서 efi 드라이버는 UEFI가 아닌 BIOS 드리이버로만 작동합니다. 그래서 EmuVariableRuntimeDxe로만 NVRAM emulation을 활성화할 수 있었습니다. 제 기억으로는 윈도우에서 NVRAM이랑 다른 부분까지 커버하기 위해서 그런 것 같은데, EVRD가 내장되어 있는 VariableRuntimeDxe를 사용하라고 합니다. 그리고 0.0.4 중반부터 AptioMemoryFix를 변형시켜 기능을 일부분 FsRuntimeServices와 일부분 OpenCore에 내장시켜 사용하므로 최근 OpenCore 빌드에는 AptioMemoryFix를 사용하면 안된다고 합니다. 클로버도 FsRuntimeServices 사용 불가입니다. 켁스트 인젝션 기능도 FSInject 없이 작동합니다.
위에서 언급한 VariableRuntimeDxe와 FsRuntimeServices는 OpenCore 개발팀의 Pavo가 만든 앱으로 OpenCore와 각종 드라이버를 직접 빌드해서 사용하실 수 있습니다.
제가 잘못알고있는건가요? acidanthera에서 관리하는 프로젝트들의 가장 메인이자 핵심 개발자 vit9696은 러시아사람으로 알고있는데요...
실제로 러시아 포럼에서 러시아어로 활동하고요
"님의 댓글"
이 댓글을 신고 하시겠습니까?
제목 | 조회 수 | 날짜 | 글쓴이 |
---|---|---|---|
macOS Sequoia 15.0.1 24A348 정식버젼 고스트 이미지 OC 1.0.2 ft: 전체공개 +29 | 941 | 24.10.1121:10 | 좌절금지 |
오픈코어 1.0.2 +23 | 578 | 24.10.0900:22 | 줌바이퍼 |
[중급편] 노트북 해킨 +16 | 1406 | 24.07.1219:19 | Stultus |
macOS Ventura 13.7 22H123 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체 공개 +17 | 575 | 24.09.1917:09 | 좌절금지 |
macOS Sonoma 14.7 23H124 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체공개 +31 | 910 | 24.09.1723:58 | 좌절금지 |
[초급편] 문제 스스로 해결하기 +20 | 4003 | 24.03.2920:07 | Stultus |
[입문편] 첫 해킨 길라잡이 +40 | 5087 | 24.01.1218:54 | Stultus |
[필독 - 안정화] macOS 해킨토시 설치 후 안정화 작업 목록 및 글타래 모음 총정리 📋 +67 | 5.1만 | 23.01.0913:39 | shl628 |
Hot AMD Sequoia용 AppleALC 1.9.2 +3 | 109 | 24.10.2319:04 | 사노라맨 |
Hot [Sequoia 15.0.1, OC r1.0.2] ASUS TUF B550-PLUS / RYZEN 5 5600X / RX470 +2 | 106 | 24.10.2322:26 | 뿌엥 |
Hot OCLP로 지원되지 않는 기기/dGPU를 사용하는 해킨토시의 사이드카 품질 문제 해결방법 +1 | 121 | 24.10.2321:29 | 해킨도전자 |
106 | 24.10.2322:26 | 뿌엥 | |
121 | 24.10.2321:29 | 해킨도전자 | |
109 | 24.10.2319:04 | 사노라맨 | |
787 | 24.10.1412:27 | shl628 | |
673 | 24.10.1316:00 | 수박 | |
346 | 24.10.1222:56 | Stultus | |
941 | 24.10.1121:10 | 좌절금지 | |
734 | 24.10.1115:53 | 수박 | |
578 | 24.10.0900:22 | 줌바이퍼 | |
1406 | 24.07.1219:19 | Stultus | |
1214 | 24.10.0500:31 | 줌바이퍼 | |
569 | 24.10.0410:49 | Tamy | |
749 | 24.09.2923:48 | 머트 | |
629 | 24.09.2822:28 | 머트 | |
463 | 24.09.2808:22 | Tamy | |
894 | 24.09.2321:32 | Stultus | |
995 | 24.09.2210:59 | 좌절금지 | |
644 | 24.09.2203:23 | 누림어멈 | |
1191 | 24.09.1919:17 | 좌절금지 | |
575 | 24.09.1917:09 | 좌절금지 | |
498 | 24.09.1813:37 | Stultus | |
910 | 24.09.1723:58 | 좌절금지 | |
601 | 24.09.1722:40 | 좌절금지 | |
453 | 24.09.1717:13 | 맥가즈아 | |
562 | 24.09.1708:13 | 김경석 | |
234 | 24.09.1617:47 | Panictosh | |
768 | 24.09.1504:35 | Tamy | |
584 | 24.09.1319:18 | Stultus | |
706 | 24.09.1019:44 | 치토 | |
484 | 24.09.0118:13 | 머핀X | |
462 | 24.09.0112:54 | 해킨도전자 | |
546 | 24.08.3115:34 | 머핀X | |
306 | 24.08.2601:42 | 화정큐삼 | |
305 | 24.08.2422:59 | 하나브 | |
318 | 24.08.2316:25 | 화정큐삼 | |
415 | 24.08.1810:56 | CanBe | |
363 | 24.08.1800:04 | 화정큐삼 | |
300 | 24.08.1722:03 | 화정큐삼 | |
201 | 24.08.1710:14 | jbhlyk | |
312 | 24.08.1622:06 | Stultus | |
218 | 24.08.1511:16 | hackillious | |
169 | 24.08.1421:30 | 세유니 | |
419 | 24.08.1419:58 | Stultus | |
377 | 24.08.1311:26 | 오디세이 | |
270 | 24.08.1115:46 | 좌절금지 | |
186 | 24.08.1111:21 | 티타보르 | |
233 | 24.08.1022:46 | Stultus | |
539 | 24.08.1022:10 | 오디세이 | |
168 | 24.08.1019:05 | jbhlyk | |
200 | 24.08.0923:20 | RogerT |
가이드 글은 언제나 감사합니다. 하지만 원본 가이드에서 미스한 부분이 좀 있네요.
예전에 다른 글에도 좌절금지님이 EmuVariableUEFI에 대해 언급해주신 것 같은데 추가해서 보태자면 OpenCore에서 efi 드라이버는 UEFI가 아닌 BIOS 드리이버로만 작동합니다. 그래서 EmuVariableRuntimeDxe로만 NVRAM emulation을 활성화할 수 있었습니다. 제 기억으로는 윈도우에서 NVRAM이랑 다른 부분까지 커버하기 위해서 그런 것 같은데, EVRD가 내장되어 있는 VariableRuntimeDxe를 사용하라고 합니다. 그리고 0.0.4 중반부터 AptioMemoryFix를 변형시켜 기능을 일부분 FsRuntimeServices와 일부분 OpenCore에 내장시켜 사용하므로 최근 OpenCore 빌드에는 AptioMemoryFix를 사용하면 안된다고 합니다. 클로버도 FsRuntimeServices 사용 불가입니다. 켁스트 인젝션 기능도 FSInject 없이 작동합니다.
위에서 언급한 VariableRuntimeDxe와 FsRuntimeServices는 OpenCore 개발팀의 Pavo가 만든 앱으로 OpenCore와 각종 드라이버를 직접 빌드해서 사용하실 수 있습니다.
https://github.com/insanelymacdiscord/OCBuilder