이 글은 AMD 라이젠 해킨토시를 진행하는 상세한 튜토리얼이 아니다.
얼떨결에 성공한 나의 경우를 나중을 위해 기록하는 로그에 가까운 글이다.
하지만 진행하면서 내가 궁금했던 정보나 처리했던 과정과 방법, 중요 포인트들은 나름 참고할만 할 듯하다.
라이젠 7 3800X
ASUS TUF GAMING X570 PLUS
SAPPHIRE RX590
SAMSUNG EVO 970 PLUS NVMe M.2
SAMSUNG DDR4 32GB
AMD 베이스로 맞춰놓은 시스템이다.
윈도우도 사용하기 좋지만 3년전 보드를 지원받는 김에 이래저래 세팅한 PC다. 세팅할 때도 해킨토시를 염두에 두고 시작했다. Nvidia 그래픽 카드가 해킨에서 조금씩 밀리고 있기도 했고 AMD 해킨도 사례들이 조금씩 보였기 때문이다.
요즘은 라이젠토시(Ryzentosh)라고 불리며 AMD 해킨이 좀 더 활성화 되는 분위기다.
시스템 스펙을 적은 이유는 레퍼런스이고 같은 시스템이면 거의 유사하게 진행해도 된다는 의미다. 시스템 스펙에서 가장 중요한 것은 메인보드(마더보드) ASUS TUF GAMING X570 PLUS이다.
3년전에 시스템을 맞추면서 클로버 부트로더에 AMD Vanilla로 모하비(Mojave)에 성공했다. 사실 이 때도 이전에 사용하던 토니맥 스타일이 아니고 클로버를 익히고 맞추느라 고생을 좀 했다.
그 이후로 건강문제도 있었고 관심도 적어져서 모하비로 3년을 이용했다.
사실 중간중간 업데이트를 하고 싶었지만 OC(OpenCore 오픈코어)로 부트로더가 바뀌고 뭔가 복잡해 보였다. 쉽게 가보려고 유투브에서 편하게 시도도 해봤지만 잘 되지 않아서 포기하고 있었다.
그렇게 미루고 미루다 하루 밤새면서 몬터레이(macOS Monterey)에 성공했다.
한번에 바로 클린설치를 해도 좋았겠지만, 일단은 빅서(Big Sur)를 목표했다가 욕심에 조금 더 처리를 해버렸다. 해킨은 이런 오기모드와 욕심이 파멸을... 아... 아니다.
펌웨어(Firmware) 업데이트는 체크해둔다.
마더보드, 그래픽 카드, SSD, HDD 등 가능한 펌웨어는 체크하고 최신으로 업데이트 한다. 3년전 클로버로 작업할 때 의외의 복병이 있었는데, 삼성 EVO 970이 펌웨어 업데이트가 되지 않아서 인스톨이 진행되지 않았었다. 물론 펌웨어 업데이트로 한방에 해결하고 문제없이 진행했었다.
(사실 메인보드 펌웨어 업데이트나 하자는 심정으로 업데이트를 했다가 바이오스 세팅이 날아갔다. 바이오스 세팅만 다시해서 모하비를 써도 되는데 그걸 핑계삼아 삽을 들었다)
2014년 맥북프로. 나에게는 아직 현역이자 명기다.
이 놈의 슬롯과 포트만큼 편한게 없다. 그렇다면 딱히 블로깅 하는 용도에서 부족하지도 않다. 몬터레이부터 제외된게 이제 늙었구나... 싶은 생각을 들게 해준다.
아... 맥북에서 USB를 제작하고 진행했다. 윈도우도 좋지만 독립적인 별도의 기기는 작업용으로 남겨두고 해킨을 진행하는게 좋다. 빅서가 깔려 있어 빅서까지 작업하기는 수월했다.
레퍼런스! 나와 같은 시스템에 성공한 EFI를 찾아라!
오픈코어를 이용한 해킨토시의 바이블 페이지다.
차근차근 읽어가면서 해보면 더 미궁으로 빠지는 신기한... 퍽;;;
이 가이드대로 몇번을 진행하다가 EFI 세팅 파트에서 몇번을 좌절했다.
가볍게 스쳐가듯 검색을 하다가 자신의 시스템과 유사한 EFI 파일을 잘 찾아서 쉽게 성공했다는 글을 발견했다. 응? EFI 만드는게 힘든데 그걸 유사한 경우, 혹은 똑같은 시스템에 맞춰 작업해뒀다고?
이 때부터 유사한 내 AMD 시스템에 맞는 EFI를 찾기 시작했다.
시스템 스펙에서 가장 중요한 것이 마더보드이기 때문에 X570의 키워드를 중심으로 케이스를 찾아봤다.
처음으로 찾은 레퍼런스다. (바로가기)
X570이긴 하지만 기가바이트 보드다. 나의 에이수스~ 보드와는 조금 다르다. 사실 칩셋들이 대동소이 하지만 일단 좀 더 찾아보기로 한다. 하지만 이 페이지 링크를 걸어둔 것은 아래에 How to use 항목에서 큰 도움을 받았기 때문이다.
인스톨 USB 만들고 - EFI 폴더 카피하고 - GenSMBIOS 돌리고 - config.plist에서 시리얼 수정하고 - MAC어드레스도 수정해 - 그리고 인스톨 시작
별거 아닌거 같지만 EFI 레퍼런스를 이용하는 입장에서 상당히 깔끔하고 순서가 정리된 느낌이었다. 그리고 여기서 시키는대로해서 성공했다.
구글 등에서 검색해도 뭔가 결과가 마음에 들지 않는다.
GitHub 메인화면에서 X570 키워드로 검색해서 레퍼런스들을 찾아보기 시작했다.
그리고 찾아낸 레퍼런스 EFI다. (바로가기)
메인보드가 같고 나머지는 크게 다르지 다르지 않다.
처음 이렇게 준비할 동안에는 OC 버전은 신경도 못 썼다.
일단 빅서가 설치되는 레퍼런스를 찾고 있었으니 말이다.
알고나면 보인다고 페이지에 오픈코어 버전과 OS 버전도 잘 명시되어 있다.
몬터레이(Monterey)는 오픈코어와 AMD Vanilla 패치도 최신으로 해줘야 한다. 이걸 모르고 일단 빅서부터 설치했다. 빅서가 해결되면 오픈코어를 이해할 것이고 부트로더(오픈코어)를 업데이트 해서 몬터레이 OTA 업그레이도 가능할테니... 라고 겁이 없었다.
여튼 일단 레퍼런스 EFI 파일을 확보했다.
오픈코오 0.6.8, 빅서 11.5.1 버전이다.
(GitHub에서 파일 다운로드는 녹색 code 버튼을 누르면 가장 아래에 메뉴가 나온다)
아까 순서가 어떻게 된다고?
USB 만들기부터 시작하면 된다.
OS 버전에 맞춰 참고해서 진행하면 된다.
시키는대로 순서대로 지키면 된다.
예외 사항이나 참고 사항들도 많이 적어두고 참고로 적어둔 스샷이 가끔 오히려 헷갈리기도 하지만 시키는대로 하면 된다. USB를 GUID로 포맷해두고 시작하는게 좋다.
그리고 내용중에 놓치기 쉽지만 USB는 MyVolume으로 이름을 바꿔서 진행해라. 그리고 빅서 업데이트 파일을 응용파일 폴더로 옮겨두라고 권하는데 그대로 따라해준다.
인스톨러 세팅에서 터미널 명령어가 볼륨 이름을 바꿔야한다.
터미널 명령어에 볼륨을 정해놨기 때문에 USB를 포맷할 때 신경을 써줘야 한다.
각 과정에 필요한 명령어나 파일들을 링크로 잘 표시해준다.
MountEFI를 구해서 실행하면 USB의 EFI 영역을 보여준다. (파인더에서 USB 근처에 EFI 나타남)
텅 비어있다.
원래는 여기서 다음 순서대로 Setting up the EFI에 가서 오픈코어 기본 패키지를 설치하고 중요 파일을 확인하고 필요없는 것들을 제거하고 자신의 시스템에 맞는 파일들을 구해서 설치하고 어쩌고저쩌고... 파일을 넣었으면 이제 config.plist도 수정해서 반영하고... 응?
나도 이 부분에서 나가 떨어졌었다. 이번에 성공해보면서 오픈코어에 대해서 조금 이해가 됐기 때문에 이제 이 부분을 보고 따라하라면... 그냥 레퍼런스 EFI 구하겠다.
USB의 EFI 폴더를 열었으면 구해둔 레퍼런스 EFI 폴더를 카피한다.
끝이다.
응?
끝이다. 그래서 레퍼런스다.
Setting up the EFI에서 시스템에 맞춰 kext를 챙기고 efi 파일을 챙기고 config.plist도 다 맞춰놓고 성공한 사례를 묶어서 놓은게 내가 구한 레퍼런스 EFI다. 그러니 그냥 카피하면 끝이다.
다시한번 순서를 상기하자.
지금까지 진행한 것이 2번까지다.
이제 3번부터 진행하면 된다.
GenSMBIOS는 페이크용 SMBIOS를 생성해준다. 링크를 따라가서 실행해주면 되고 시키는대로 iMacPro1,1을 선택해서 진행한다.
그러면 몇몇 숫자들이 만들어지는데 텍스트에디터에 저장해둔다.
그리고 ProperTree를 실행해서 4번에서 시키는 위치의 값들을 바꿔준다.
쉽게 생각해서 크랙을 먹이는 과정이랄까? EFI를 공유했기 때문에 공유한 사람의 고유한 시리얼 값들이 남아있다. 이걸 새롭게 생성해서 입력해주는 과정이다.
각각의 툴을 이용하는게 조금 어렵게 느낄 수도 있지만 각각의 페이지에 설명이 잘 되어 있고 해당 키워드로 검색하면 진행이 어렵지는 않다. 시간과 노력이 들어갈 뿐이다.
이제 config.plist 수정까지 끝났다면 리부팅을 하고 USB로 부팅해서 인스톨을 진행하면 된다.
인스톨 USB를 다 만들었다면 이제 빅서 설치 작업을 시작한다.
이걸 위해서 바이오스 세팅도 살짝 손을 봐야한다.
이 글에서 바이오스 세팅값을 참고하면 좋다.
인스톨 가이드 페이지에서도 봤었는데... 이게 보기 편하다. 그리고 뒤에서 한번 더 응용할 AMD Vanilla patch 적용 방법이 나온다. 나머지는 참고해두면 좋지만 너무 들여다보면 심해가 너를 들여다 보... 아니 복잡해진다.
바이오스 설정을 마치고나면 USB 이외에는 부팅 목록에서 삭제해준다.
USB가 미스나도 다른 걸로 부팅되게 하지 않는게 좋다.
그리고 이 작업을 할 때는 가능한 다른 SSD, HDD는 연결과 전원을 빼두는게 좋다. 나도 NVME와 SSD에 각각 macOS, 윈도우를 사용하지만 윈도우와 외장 HDD 등은 모두 빼놓고 시작했다.
사실 이 부트로더 화면을 만나기까지가 해킨토시의 70퍼센트라고 해도 과언이 아닌데, 너무 쉽게 왔다.
아... 글을 쓸려고 시작한게 아니고 설마? 한번에 될까? 싶어서 생각없이 USB로 부팅했다가 이런 화면을 만났고 실제로 한방에 설치에 성공했다.
오픈코어 부트로더 화면이고 뭔가 복잡해보이는 이유는 빅서 설치 파일(USB) 이외에 아직 모하비 하드가 잡히기 때문이다.
빅서 아이콘으로 인스톨러를 실행한다.
디스크 유틸리티를 실행해서 빅서를 설치할 스토리지(SSD)를 선택하고 포맷해준다.
요건 일반적인 인스톨 방법이기 때문에 쉽게 검색해서 찾을 수 있다.
그리고 빅서 설치를 실행하면 된다.
여기서도 마음을 놓을 수 없다.
예전에는 이 화면에서 멈추거나 리부팅되서 날아가기를 반복하기도 했다. 그렇다 위에서 잠시 스쳐갔던 EVO 970 펌웨어 문제가 여기서 터졌었다.
사과 로고! 그리고 남은 시간이 뜬다.
경험상 이 화면이 뜨면 상당히 긍정적이다. 마지막까지 긴장을 해야하는게 맞지만 이정도면 거의 다 왔다. 진짜 한방에 될까? 점점 흥분되기 시작한다.
어? 된다.
아니 됐다.
한방에;;;
소리도 잘나고 그래픽도 잘 잡히고 당장 보이는 문제는 없어 보인다.
USB를 통해 부팅이 잘 되고 빅서가 잘 실행 되는걸 확인했다.
그러면 여기서 MountEFI를 실행해서 USB의 EFI를 마운트한다.
성공했던 EFI 폴더를 바탕화면으로 옮겨놓는다.
USB를 뽑고 다시 MountEFI를 실행해서 이번에는 빅서를 설치한 SSD(HDD)의 EFI 폴더를 연다.
처음 USB를 만들 때처럼 비어있을 것이다. 여기에 USB에서 추출한 EFI 폴더를 카피해준다. 이미 위의 화면처럼 인스톨러도 잘 실행했고 빅서도 잘 돌려주는 오픈코어(부트로더)이기 때문에 SSD(HDD)에 바로 옮겨준다.
리부팅한다.
바이오스에서 부팅 순서를 정해주고 부트로더가 제대로 동작하기를 기도한다.
물론 잘 된다.
여기까지가 레퍼런스 EFI를 통해 오픈코어로 빅서 설치하기다.
끝이다. 안정화 시키고 잘 쓰면 된다.
잘쓰면 되긴 개뿔.
일단 빅서에 성공했고 인스톨 USB가 남아있다.
소인에게는 성공한 백업이 있사옵니다. 그러느냐? 그렇다면 더 많은 삽질을 해보도록 해라. 조지면 다시 USB를 소환하겠노라. 라는 대화가 머리에서 맴돈다.
애써 외면하려 하는데 시스템 관리자에서 자꾸 몬터레이 업데이트를 알려준다.
어차피 백업은 있다. 하자.
(먼동이 터오는 아침에 길게 뻗은 가로수를 가르며... 이오공감... 팥들었슈... 아... 먼동이 터온다)
이번 작업 개요는 두 가지에서 고민이 됐다.
첫번째는 오픈코어 버전을 높이고 AMD Vanilla 패치를 적용해서 OTA로 바로 업데이트를 하는 방법이다.
두번째는 몬터레이를 성공한 레퍼런스 EFI를 구해서 다시 클린설치하는 방법이다.
이미 해봤던 방법이기 때문에 레퍼런스 방법이 좀 더 편하게 느껴지기는 한다. 하지만 구하기가 쉽지 않을 수 있고 뭔가 삽질의 의미가 적어진다. 편하고 싶으면서도 오기모드가 발동하는 이상한 심보다.
일단 빅서가 제대로 동작했기 때문에 OTA를 이용해보기로 결정했다.
그 때는 몰랐고 이제는 안다.
OC(오픈코어) 버전이 중요하다. 이 글을 작성하는 시점에서 최신은 0.7.6이다. 내가 빅서에 사용한 레퍼런스 EFI는 0.6.9였다. 그런데 OC 업데이트 방법을 검색해보니 한 단계 한 단계를 진행해야 하고 그 때마다 config.plist도 수정해야 한다. 복잡하다. 0.6.9에서 0.7.6?
이번 업데이트 작업을 위해서 USB를 하나 더 꺼냈다.
순수하게 부팅용 오픈코어만 설치하고 테스트해볼 목적이다.
빅서에서 EFI를 꺼내 몰모트 USB에... 넣고 바이오스에서 USB만 설정하고 부팅해본다.
부트로더가 잘 동작하고 빅서로 다시 돌아왔다.
이제 OC 0.6.9의 클론이 있으니 마음껏 시도해보자.
그래서 조금 찾아보니 다른 프로그램도 있긴했다. 그런데 지원목록에 내 AMD 리스트가 없어서 포기했다. 뭔가 느낌이 좋지 않다.
그렇게 검색을 계속하다보니 엑스팔육(X86.com) OC Updater를 이용해서 업데이트를 잘 했다는 내용을 발견했다. 어차피 궁금하니 시도를 해보자 생각하고 위의 깃허브(바로가기)에서 OC Updater를 다운받아 실행했다.
사실 CPU나 스펙하고 상관없이 그냥 버전만 맞춰서 진행하더라.
그게 무슨 상관이냐? 어차피 클론에서...
OC 0.6.5인가? 그 이전 버전에서는 지원하지 않는다는데, 그 이후 버전들에서는 최신 버전으로 손쉽게 업데이트가 진행됐다. 설명에 의하면 kext나 config.plist 수정도 다 해준다니 그렇게 믿기로 한다.
다음은 AMD Vanilla 패치(바로가기)다.
숫자를 바꾸면 된다는데 그 숫자가 보이지 않는다?
페이지에서 patch.plist를 다운받아 그 내용을 config.plist에 적용하고 본인의 CPU에 맞춰 코어 숫자를 수정해주면 된다. 이렇게 말하면 참 쉽다.
나도 여기서 진땀을 좀 뺐다.
패치 적용 방법은 사실 기존의 패치 내용을 지워버리고 새로운 패치를 적용하는게 맞다. 하지만 쫄보인 나는 빅서까지 잘 실행된 config.plist에 패치 내용을 머지(merge) 시켰다. 그리고 키값을 찾아 수정해줬다.
물론 이 작업 모드 클론 USB... 아니 작업용 USB의 EFI 폴더에서 진행했다.
OC 업데이트와 AMD Vanilla 패치를 적용한 USB를 이용해서 몬터레이 업데이트를 진행했다.
왠걸;;; 한방에 성공.
정제되지 않고 조금 덕지덕지한 느낌이라서 그런지 부팅할 때 조금 버벅이기는 하지만 작동하고 사용하는데는 문제가 없다.
바닐라 패치에서 겹쳐서 그런가? 싶은 마음이 있으니 클론 USB로 패치를 다시 정리해서 부팅을 시도해봐야겠다. (아... 이것저것 다 연결해놨는데;;;)
얼떨결에 시작해서 큰 준비없이 호로록 진행해버린 해킨토시.
빅서를 지나 몬터레이로 올라오는 구간이었지만 나름 해볼만한 경험은 잘 해본 것 같다.
그리고 이번 해킨을 통해 오픈코어에 대해 아주 조금 이해가 생겼고 이제 가이드 페이지의 내용들을 좀 더 쉽게 이해할 수 있을 것 같다. 선을 딱 넘어서야 보이는 것들은 분명히 있다.
밤새도록 한 호흡에 진행한 나의 오픈코어 AMD 해킨, 빅서를 지나 몬터레이까지는 여기까지다.
튜토리얼은 아니지만 유사한 스펙에서 유사한 과정을 진행한다면 참고가 되길 바래본다.
다음에 또 멍청한 삽질을 줄이기 위한 나의 로그는 여기까지다.