서버를 갈아엎었다.
덕분에 홈페이지는 날아갔지만, 메일서버를 신설해서
이메일 주소를 내 고유 도메인으로 갖게 되었으니 이제 앱개발만 하면 된다.
dcmichael(at)dcmichael(dot)net
으로 만들었는데, 너무 긴 느낌이,,,
게다가 맥북이 죽어서 앱개발은 당분간 보류,,,ㅠㅠ

 

'생활 > 서버놀이' 카테고리의 다른 글

웹프로그래밍 공부하기 좋은 홈페이지,,  (0) 2012.03.10
해킨 삽질을 위한 가이드  (0) 2012.01.08
http 파일서버 프로그램  (0) 2009.11.20

'생활 > 서버놀이' 카테고리의 다른 글

서버 재설정!!  (0) 2012.05.31
해킨 삽질을 위한 가이드  (0) 2012.01.08
http 파일서버 프로그램  (0) 2009.11.20

[출처]http://lifepatch.tistory.com/154

컴도 조립했겠다, 생각해보니 i7이면 인텔CPU라 해킨도 수월하고, 성능도 좋아서 해킨이 잘됫듯해서 찾다보니 이런 가이드도 있었네요.

혹시 제 스펙(이전글에 있어요) 보고 어떻게 하면 잘 될지 조언 주시면 감사해요.

원문에서 긁어오고 싶었는데, 원글이 지워진 관계로 2차 펌을 했습니다.

[출처]Age of B.L.U.E 

펜티엄4에 MacOSX 10.4를 설치해 보고 부팅될때 사과 마크가 나오는걸 보고 너무나도 감격에 젖어버렸던 기억이 아직도 아른거립니다.
자세한 사전 지식이 없었던 탓에 그때는 아마도 열댓번 정도 지웠다 깔았다 했던것 같습니다.
검색해 보니 Age of B.L.U.E님이 아주 잘 설명해 주신 글이 있길래 보존(?) 차원에서 긁어 왔습니다.
용서하시길....


본 가이드는 네개의 Part로 구성되어 있습니다.

PART 1. 개념
“해킨토시”의 전반적인 개념, 해킨토시를 만드는 여러 방식의 차이점, Modified BOOT-132 Bootloader를 활용해 해킨토시를 만들기 위해 미리 알아 두어야 할 기본 개념을 설명합니다.

PART 2. 실전
Modified BOOT-132 Bootloader를 활용해 실제로 해킨토시를 만드는 방법을 안내합니다.

PART 3. 추가 정보
추가적으로 알아두면 좋은 정보를 설명합니다.

PART 4. 소스들
참고할 만한 해외 포럼의 글타래들과 각종 파일을 얻을 수 있는 곳의 링크를 모아 두었습니다.


PART 1. 개념



해킨토시란?

Mac OS X이라는 운영체제를 PC용 하드웨어에 설치해서 사용하기 위해 고안된 모든 방법, 또는 그러한 방법으로 Mac OS X이 설치된 PC를 가리켜 일명 “해킨토시” 라 부릅니다.

Mac OS X은 매킨토시용 하드웨어에만 설치되고 작동되도록 제작되어 있습니다. PC용 하드웨어와 매킨토시용 하드웨어는 그 작동 방식이 다르기 때문에,  Mac OS X은 PC용 하드웨어를 (몇몇 운좋은 하드웨어를 제외하고는) 인식하지 못합니다.

그렇기 때문에 PC용 하드웨어에 Mac OS X을 설치하고 사용하기 위해서는 PC용 하드웨어를 매킨토시용 하드웨어인 것 처럼 속여주어야 합니다.

이런 속임수의 방법에는 두가지가 있습니다.
- EFI-X (http://www.efi-x.com) 같은 장비를 장착해서 속여주는 하드웨어적인 방법
- Mac OS X 내부의 파일들을 수정해서 속여주는 소프트웨어적인 방법

소프트웨어적인 방법은 다시 크게 두가지로 나뉘어 집니다.
- Mac OS X 설치 디스크 자체를 PC용 하드웨어에 맞게 수정해서 설치하는 방법
- Mac OS X 설치 디스크를 원본 그대로 사용하면서 “Modified BOOT-132 Bootloader”를 활용하는 방법

하드웨어적인 해킨토시 방법은 적절히 선택된 PC용 하드웨어에 EFI-X를 사서 꽂으면 끝나는 것이기 때문에 특별히 설명할 것이 없습니다.

2 소프트웨어 방식의 해킨토시는 어떤 방식이든 간에 다음의 큰 걸림돌들을 해결해야 합니다.

① EFI 정보 생성
EFI란 매킨토시용 하드웨어가 채택한 BIOS의 업그레이드 버전이라고 생각하면 됩니다.
현재의 Mac OS X은 별도의 부트로더를 사용하지 않고 EFI 기능을 이용해 부팅하기 때문에 EFI 정보가 없으면 부팅이 되지 않습니다. 
이 문제는 EFI 정보를 생성해주는 “카멜레온"이라는 것에 PC 하드웨어용 부트로더 기능을 더한 "카멜레온 부트로더”를 설치하면 쉽게 해결됩니다.
(EFI에 관한 자세한 내용은 NiKY님의 좋은 글 참조 http://x86osx.com/bbs/view.php?id=osxtips&no=505)

② 커널 문제
커널(kernel)이란 CPU, RAM, 디바이스 등의 시스템 자원을 제어하고 관리하는 운영체체(OS)의 심장 부분입니다.
실제 매킨토시 하드웨어가 사용하고 있는 코어아키텍쳐 기반의 인텔 CPU 및 이를 지원하는 인텔 노스브릿지(P/G4x 계열 제외, 아래 8번 설명 참고)는 Mac OS X Leopard의 원본 커널(Vanilla 커널이라고 부릅니다)을 그대로 사용할 수 있습니다.
하지만 그 외의 CPU 및 노스브릿지는 원본 Vanilla 커널 사용시에 오작동을 일으키기 때문에 해당 CPU에서 정상 작동 되도록 수정한 커널(일명 해킨 커널)로의 교체가 필요합니다.

③ PC용 하드웨어를 Mac OS X  Leopard에 인식 시키기
Mac OS X  Leopard를 설치하면 하드디스크의 /System/Library/Extensions 경로에 .kext, .plugin, .bundle 등의 확장자를 가지는 각종 하드웨어 관련 파일들이 설치됩니다. 이 매킨토시 하드웨어용 원본 파일을 자신의 PC용 하드웨어에 맞게 수정한 “해킨토시용 파일”로 교체해주면 해결됩니다. 특정 PC 하드웨어는 메인보드의 BIOS설정도 함께 조정 해주어야 합니다.

④ Dont Steel Mac OS X.kext 와 IntelCPUPowerManagement.kext 라는 파일 무력화 시키기
이 두 파일은 Mac OS X  Leopard안에 상주하면서 (정확하게는 하드디스크의 /System/Library/Extensions) 매킨토시용 하드웨어가 아닌 시스템에서의 Mac OS X  Leopard 사 용을 제한합니다. Dont Steel Mac OS X.kext를 직접 무력화 시키기 위해 dsmos.kext 라는 파일이 개발되었고, IntelCPUPowerManagement.kext를 직접 무력화 시키기 위해 IntelCPUPMDisabler.kext 라는 파일이 개발되었습니다. 


3 소프트웨어적인 두 방법의 차이

Mac OS X 설치 디스크 자체를 PC용 하드웨어에 맞게 수정해서 설치하는 방법”에 따라 Kalyway, Leo4All, Jas, iDeneb, iATKOS 등의 이름을 달고 나오는 “수정된 Mac OS X  Leopard 설치본”들은 위에 열거한 걸림돌들을 최초 설치시부터 자동으로 해결합니다. 

EFI 정보 생성 및 부팅을 위해 필요한 파일들을 자동으로 설치하고 (①번 걸림돌 해결),
여러가지 “해킨 커널”과 “해킨토시용 하드웨어 관련 파일”들을 설치 옵션에 미리 포함시켜 사용자가 자신의 하드웨어에 맞는 파일을 선택하면 선택된 파일이 Mac OS X Leopard의 원본 파일과 교체되어 설치되도록 하고 (②③번 걸림돌 해결),
dsmos.kext 파일을 기본적으로 포함시켜 Dont Steel Mac OS X.kext를 직접 무력화 시킵니다. 하지만, IntelCPUPMDisabler.kext 파일은 포함되어 있지 않기 때문에 IntelCPUPowerManagement.kext를 직접 무력화시키지는 못하고 대신에 최초 설치시에 IntelCPUPowerManagement.kext 파일을 삭제하는 것으로 이를 해결합니다 (④번 걸림돌 해결).

그러나 Mac OS X  Leopard 설 치 후 시스템 업데이트를 진행하게 되면 IntelCPUPowerManagement.kext 파일이 다시 생성되어 작동되기 때문에 시스템이 뻗어버리는 현상(패닉)이 발생합니다. 이 패닉 현상을 해결하려면 시스템 업데이트 과정 중에 생성되는 IntelCPUPowerManagement.kext 파일을 수동으로 다시 지워주거나 아예 IntelCPUPowerManagement.kext 파일이 생성되지 않도록 시스템 업데이트 설치 패키지 자체를 수정해주는 작업이 필요합니다.

또한 “수정된 Mac OS X  Leopard 설치본”을 만드는 과정에서 수정하는 사람이 임의로 한글설치패키지 등을 제거해버릴 수도 있는데 이럴 경우 해당 설치 패키지를 추가로 직접 찾아서 설치해주어야 합니다. 또한 이렇게 임의로 수정된 Mac OS X  Leopard 설치본에는 간혹 몇몇 부분에 오류가 포함되어 있기도 한데 이 경우 역시 직접 해당 오류를 추가로 바로 잡아 주어야 합니다.

Mac OS X 설치 디스크를 원본 그대로 사용하면서 Modified BOOT-132 Bootloader를 활용하는 방법”은 모든 작업을 수동으로 해주어야 합니다.

이 방법은 Mac OS X  Leopard 원본 설치 디스크를 그대로 사용하기 때문에 
EFI 정보 생성 및 부팅을 위한 “카멜레온 부트로더”를 수동으로 설치해야 하고 (①),
원본 Vanilla 커널을 사용할 수 있는 CPU 및 이를 지원하는 인텔 노스브릿지(P/G4x 계열 제외, 아래 8번 설명 참고)에서만 사용이 가능하고 (단, 일부 예외가 있습니다. 아래 6번 설명 참고) (②),
자신의 PC용 하드웨어에 맞게 수정된 “해킨토시용 하드웨어 관련 파일”을 직접 찾아 설치하고 관리해야 합니다 (③).

하지만 이 방법은 dsmos.kext 파일 뿐 아니라 IntelCPUPMDisabler.kext 파일도 사용하기 때문에 IntelCPUPowerManagement.kext 파일을 삭제하지 않더라도 바로 무력화 시킬 수 있어 Mac OS X  Leopard 설치 후 시스템 업데이트시의 패닉현상에서 완전히 해방될 수 있습니다 (④).

그리고 이 방법은 Mac OS X Leopard 설치 디스크를 원본 그대로 사용하기 때문에 “수정된 Mac OS XLeopard 설치본”에는 임의로 제거되어 있거나 있어도 오류가 발생하는 부분 (특히 한글화, X11 실행오류, 권한복구시의 오류메세지 등) 을 모두 이상 없이 사용할 수 있습니다.

사용자의 입장에서는 이러한 설치 방식들의 장단점을 잘 파악해서 자신의 시스템에 보다 잘 맞고 더 선호하는 방식을 선택해 활용하면 되겠습니다.

“수정된 Mac OS X Leopard 설치본”을 사용할 경우에는 자신의 하드웨어에 맞는 선택 옵션만 잘 선택해서 설치하면 무난히 완료되므로 여기서 다루지는 않겠습니다.

아래는 모든 것을 수동으로 진행해야 하는 “Mac OS X 설치 디스크를 원본 그대로 사용하면서 Modified BOOT-132 Bootloader를 활용하는 방법” 에 대한 설명입니다. 


4 Modified BOOT-132 Bootloader 란?

BOOT-132라는 것은 애플이 예전에 잠시 제공했었던 "PC용 하드웨어에서 Max OS X을 부팅시킬 수 있는 부트로더"의 마지막 버전 이름입니다.
BOOT-132 Bootloader란 말 그대로 BOOT-132버전의 Bootloader라는 것이고, 이것은 현재 해킨토시에서 활용되고 있는 다윈부트로더와 동일한 것입니다.

이 "BOOT-132버전의 Bootloader"에 "카멜레온"을 첨가해서 부팅시에 EFI 정보를 생성하도록 수정하고 “부팅시에 임의의 파일을 미리 로딩시키고 그 파일을 다른 어떤 파일들 보다 우선해서 작동 시킬 수 있는 기능”을 추가한 것이 “Modified BOOT-132 Bootloader” 입니다. 

(“Modified BOOT-132 Bootloader”를 처음 개발한 사람이 붙인 이름을 따라 BOOT-132-DFE-r146 등으로 불려지기도 합니다.)
(자세한 내용은 http://tgwbd.org/darwin/boot.html 와 http://forum.insanelymac.com/index.php?showtopic=113288 참고)

이 “Modified BOOT-132 Bootloader”를 이용해 PC를 시동하면 
카멜레온이 EFI 정보를 생성해 PC를 매킨토시인 것 처럼 속여주기 때문에 Mac OS X(및 설치 디스크)를 부팅시킬 수 있고 "임의의 파일 우선 로딩/작동 기능"을 이용해 필요한 해킨토시용 파일들을 우선 로딩/작동 시켜주게 되면 Mac OS X  Leopard 원본 설치 디스크를 PC용 하드웨어에 설치하는 것이 가능해집니다.


5 Modified BOOT-132 Bootloader를 이용한 Mac OS X  Leopard 원본 디스크 설치의 개괄적인 단계

미리 머리 속에 운곽을 잡아두세요. 자세한 설명은 아래에 계속 이어집니다.

1 원본 Modified BOOT-132 Bootloader에 자신의 PC하드웨어에 필요한 파일을 추가하여 부팅가능한 CD로 제작합니다. 
   이 CD를 편의상 "BOOT-132 CD"라고 부르겠습니다.
2 제작한 BOOT-132 CD로 부팅합니다.
3 부팅이 완료되면 BOOT-132 CD를 Mac OS X  Leopard 원본 설치 디스크로 교체합니다.
4 Mac OS X  Leopard를 설치합니다.
5 설치가 끝나면 다시 BOOT-132 CD로 부팅하여 CD 없이 하드디스크로 바로 부팅할 수 있도록 설정합니다.


6 먼저 짚고 넘어가야 할 커널 문제

Modified BOOT-132 Bootloader를 이용한 해킨토시는 Mac OS X  Leopard “원본” 설치 디스크를 PC용 하드웨어에 설치하려는 것이 목적입니다. 

Mac OS X  Leopard “원본” 설치 디스크에는 당연히 원본 Vanilla 커널 밖에 없기 때문에 이 커널을 사용할 수 있는 “코어아키텍쳐 기반의 인텔 CPU 및 이를 지원하는 인텔 노스브릿지 (P/G4x 계열 제외, 아래 8번 설명 참고)” 에만 이 방법을 사용 할 수 있습니다.

단, 예외적으로 코어아키텍쳐 기반의 인텔 CPU 및 이를 지원하는 "비"인텔 노스브릿지 또는 SSE2를 지원하는 코어아키텍쳐 이전 세대의 인텔 CPU 및 이를 지원하는 노스브릿지의 경우 몇가지 추가 작업을 통해 Vanilla 커널이 아닌 다른 해킨 커널을 로딩시키면 이 방식을 사용할 수 있습니다. 
이 경우는 초심아빠 님의 좋은 가이드를 참고하세요 http://x86osx.com/bbs/view.php?id=osxtips&no=1064


7 Modified BOOT-132 Bootloader의 구조와 작동방식

Modified BOOT-132 Bootloader를 CD로 제작해 이 CD로 PC를 시동하면, “카멜레온”이 EFI 정보를 생성하고, 생성된 EFI 정보가 PC를 매킨토시인 것처럼 속여주면서 부팅이 진행됩니다.

부팅이 진행되는 동안 이 CD 안의 isolinux.cfg 파일을 통해서 initrd.img 파일이 호출됩니다.
initrd.img 파일이 호출되면 이 파일 안의 내용물인 /Extra/Extensions 경로와 이 경로 안에 위치한 파일들이 메모리에 올려지게 됩니다.
그 뒤 Boot 라는 파일이 /Extra/Extensions 경로를 찾아 들어가 이 안에 들어 있는 파일들을 메모리의 루트에 상주시킵니다. 이렇게 메모리에 상주 된 파일들은 이제 다른 어떤 파일들 보다 우선해서 작동하게 됩니다.

여 기서 잠깐 더 생각해보면, Boot라는 파일이 /Extra/Extensions 라는 경로를 찾아들어가 그 안의 파일들을 메모리에 상주시킨다면 CD안에 직접 /Extra/Extensions 경로를 만들어 두면 되지, 왜 굳이 initrd.img 파일을 만들어 그 안에 /Extra/Extensions 경로를 만들고 다시 initrd.img 파일을 불러오는 복잡한 방식을 택하는가, 하는 의문이 생길 수 있습니다.

그 이유는 /Extra/Extensions 안에 들어갈 파일의 성격 때문입니다.
Mac OS X에서 사용하는 하드웨어 관련 파일은 .kext 등의 확장자를 가진다고 위 2번에서 설명했습니다. /Extra/Extensions 안에 넣어줄 파일이 이 파일들인데, 이 .kext 등의 확장자를 가지는 파일은 실제로는 파일이라기 보다 폴더에 가까운 형태입니다. 지금 임의의 폴더를 하나 만들어서 그 안에 아무 파일이나 집어넣고 폴더 이름 뒤에 .kext라는 확장자를 붙여보세요. 폴더가 kext파일로 변합니다. 이 kext 파일을 오른쪽 클릭해서 “패키지 내용 보기”를 선택해보세요. 폴더일때 집어넣은 파일이 고스란이 들어있습니다. 반대로 아무 kext파일이나 가져와서 .kext 확장자를 지워보세요 (오른쪽 클릭-정보입수-이름 및 확장자 부분에서 .kext를 지우고 엔터). 폴더로 변합니다. 이렇듯 .kext 파일은 원래 폴더이지만 Mac OS X 상에서는 파일로 인식되는 그런 녀석입니다.

그렇기 때문에 Mac OS X이 아닌 곳에서는 .kext가 파일이 아닌 폴더로 인식됩니다. 윈도우XP 바탕화면에 .kext파일을 복사 해보세요. 폴더로 인식됩니다. Modified BOOT-132 Bootloader 안에서도 역시 폴더로 인식되기 때문에 파일형태로의 사용이 불가능합니다. 그래서 .kext이라는 파일형태로 담아둘 수 있는 initrd.img 라는 이미지 파일을 생성하고 이 안에 /Extra/Extensions 경로를 만들어 .kext 파일을 담고 다시 이 initrd.img을 로딩하는 것입니다.

initrd.img 파일은 쉽게 편집이 가능하기 때문에 원하는 파일을 마음껏 추가/삭제 할 수 있습니다. 따라서 initrd.img/Extra/Extensions 안에 dsmos.kext 와 IntelCPUPMDisabler.kext 파일을 추가해준다면 부팅될 때부터 로딩되어 작동되므로 언제나 Dont Steel Mac OS X.kext 와 IntelCPUPowerManagement.kext 파일을 무력화 시킬 수 있습니다. (원본 Modified BOOT-132 Bootloader에는 dsmos.kext가 빠져있습니다.)

정리하면, 
② 번 걸림돌 커널 문제는 앞의 6번 설명에서 “원본 Vanilla 커널”을 사용할 수 있는 CPU 및 이를 지원하는 인텔 노스브릿지(P/G4x 계열 제외, 8번 설명 참고)에서만 이 방식을 사용할 수 있고 일부 예외적인 방법이 있다고 설명했습니다.
①번 걸림돌 EFI 문제는 Modified BOOT-132 Bootloader 안에 카멜레온이 포함되어 있기 때문에 해결 됨을 설명했습니다.
④ 번 걸림돌 Dont Steel Mac OS X.kext 와 IntelCPUPowerManagement.kext 문제는 Modified BOOT-132 Bootloader의 임의의 파일 우선 로딩/작동 기능을 활용해 dsmos.kext 와 IntelCPUPMDisabler.kext 를 로딩시켜 해결할 수 있다고 설명했습니다.

이제 남은 건 ③번 걸림돌 “PC용 하드웨어 인식 문제” 입니다.


8 ③번 걸림돌 “PC용 하드웨어 인식 문제”

하드웨어라 함은 CPU, 메인보드 칩셋, 그래픽, 사운드, 랜, HDD, ODD, 키보드, 마우스 정도일텐데요,
이 중에 Mac OS X Leopard가 반드시 인식해야하는 필수적인 하드웨어는 CPU, 메인보드 칩셋, HDD, ODD, 키보드, 마우스 입니다. 
나머지 그래픽, 사운드, 랜의 경우 Mac OS X Leopard가 인식하지 못한다 하더라도 해당 부품을 사용하지 못하는 것일 뿐 Mac OS X Leopard 원본 디스크 설치나 Mac OS X Leopard의 기본적인 OS기능 사용에는 아무런 문제가 없습니다.

CPU
Mac OS X Leopard는 코어아키텍쳐 기반의 인텔 CPU 만을 기본적으로 인식합니다.

메인보드 칩셋
노스브릿지
Mac OS X Leopard는 코어아키텍쳐 기반의 인텔 CPU를 지원하는 인텔 노스브릿지 (P/G4x 계열 제외) 만을 기본적으로 인식합니다. 
인텔 P/G4x 계열 노스브릿지의 경우 메인보드에 따라 인식이 되기도 하고 안되기도 합니다. 인식이 안 될 경우 메인보드 BIOS 교체가 필요합니다.
사우스브릿지
Mac OS X Leopard는 인텔 ICH7, ICH7-M, ICH8 사우스브릿지 만을 기본적으로 인식합니다.

HDD와 ODD
Mac OS X Leopard는 SATA 방식과 인텔 ICH7, ICH8의 IDE 방식만을 기본적으로 인식합니다.

키보드와 마우스
Mac OS X Leopard는 USB 방식의 키보드와 마우스 만을 기본적으로 인식합니다.

따라서 Mac OS X Leopard가 기본적으로 인식하는 CPU, 노스브릿지, 사우스브릿지, HDD, ODD, 키보드, 마우스를 사용하는 PC의 경우
원본 Modified BOOT-132 Bootloader의 initrd.img/Extra/Extensions 안에 dsmos.kext만 추가하여 CD로 제작해 부팅하면 Mac OS X Leopard 원본 설치 디스크를 설치할 수 있습니다.

Mac OS X Leopard가 기본적으로 인식하지 못하는 사우스브릿지 (JMicron 포함) 와 그 곳에 연결 된 HDD와 ODD, PS2 방식의 키보드와 마우스를 사용하는 PC의 경우 해당 하드웨어에 맞게 수정된 관련 파일을 initrd.img/Extra/Extensions 안에 더 추가해야 합니다. 

Mac OS X Leopard가 기본적으로 인식하지 못하는 CPU 및 노스브릿지를 사용하는 경우 위 6번 설명을 추가로 더 적용해야 합니다.


9 이제 걸림돌은 모두 해결했다. 다음은? 

위에 설명한 내용들을 적용하여 BOOT-132 CD를 제작하고,
제작한 BOOT-132 CD로 부팅한 뒤,
Mac OS X Leopard 원본 설치 디스크를 BOOT-132 CD와 교체하여 삽입해서,
Mac OS X Leopard 를 내 PC에 설치 완료하고 나면, 
아직 다음의 해결 거리가 남습니다.

① 카멜레온이 적용된 부트로더가 BOOT-132 CD에만 존재하기 때문에 CD 없이는 부팅이 안됩니다.
② initrd.img/Extra/Extensions 안에 담긴 파일이 BOOT-132 CD에만 존재하기 때문에 CD 없이는 Mac OS X Leopard가 작동하지 않습니다.
③ 그래픽, 사운드, 랜이 작동하지 않습니다. (Mac OS X Leopard가 기본적으로 인식 할 수 있는 일부 USB 사운드카드와 3Com 3C905B-TX, Realtek 8139D 등의 랜카드는 작동 하기도 합니다.)

① : "카멜레온 부트로더"를 하드디스크에 설치해주면 됩니다.
② : initrd.img/Extra/Extensions 안의 파일들을 하드디스크의 /System/Library/Extension 경로에 복사(교체) 해주면 됩니다.
③ : 해당 PC용 하드웨어에 맞게 수정된 해킨토시용 파일을 찾아 하드디스크의 /System/Library/Extension 경로에 복사(교체) 해주면 됩니다.

하드디스크의 /System/Library/Extension 경로란 위 2번 설명에서도 언급한 것 처럼 각종 하드웨어 관련 파일들이 들어있는 곳입니다. Mac OS X Leopard 원본 설치 디스크를 설치했기 때문에 /System/Library/Extension에 현재 매킨토시 하드웨어용 원본 파일이 설치되어 있는 것을 자신의 PC용 하드웨어에 맞게 수정한 해킨토시용 파일로 교체 해주는 것입니다.

이러면 이제 모든 작업이 끝납니다.


10 Modified BOOT-132 Bootloader를 좀 더 활용해보자 

Modified BOOT-132 Bootloader에는 임의의 파일 우선 로딩/작동 기능이 있어 initrd.img/Extra/Extensions 안에 원하는 파일을 넣어주면 된다고 했습니다.

그렇다면 이 기능을 좀 더 활용해서, 위 9번 설명에서 /System/Library/Extension 경로에 교체해줄 해킨토시용 파일들을 모두 미리 initrd.img/Extra/Extensions 안에 넣어주면 /System/Library/Extension를 건드리지 않고 그대로 두더라도 괜찮지 않을까요?

아, 문제가 생기는군요. 만약에 이게 가능하다 하더라도 initrd.img/Extra/Extensions 가 CD에 있으니 매번 CD로 부팅을 해야 하네요. 

그 런데, BOOT-132 CD의 부팅은 카멜레온이 적용된 부트로더가 담당하고, 또 Boot라는 파일이 /Extra/Extensions 라는 경로를 찾아가 그 안의 파일들을 로딩시킨다고 했으니까, 먼저 하드디스크에 카멜레온 부트로더를 설치한 다음, Boot 라는 파일을 하드디스크 루트에 복사하고, 하드디스크에 /Extra/Extensions 경로를 만들어 이 안에 우선 로딩/작동 시키고 싶은 파일들을 넣어주면 CD없이 하드디스크로 부팅하면서 원하는 파일도 우선 로딩/작동 시켜 사용할 수 있지 않을까요? 이건 Mac OS X이니까 kext 파일을 폴더로 인식할 염려도 없구요!

첫번째 질문은 반만 맞고, 두번째 질문은 정답입니다.

첫번째 질문은 상당히 중요합니다. 
Mac OS X Leopard 설치 이후에 새로운 시스템 업데이트가 출시되어 업데이트를 진행하게 되면 /System/Library/Extension (줄여서 /S/L/E 로 부르겠습니다) 안의 파일들이 많이 바뀌게 됩니다. 
만일 내가 /S/L/E에 해킨토시용으로 교체해주었던 파일이 시스템 업데이트로 인해 매킨토시용 원본 파일로 바뀌게 된다면 다시 해킨토시용 파일로 교체해 주어야겠죠.
하지만 두번째 질문의 방법을 적용한 뒤 하드디스크의 /Extra/Extensions (줄여서 /E/E 로 부르겠습니다) 에서 해킨토시용 파일을 우선 로딩/작동 시킨다면, /S/L/E의 파일이 바뀌던 말던 아무 신경 쓰지 않을 수 있겠죠.

그런데 하드웨어 및 kext파일의 조합에 따라 /E/E의 모든 파일이 정상 작동되는 시스템이 있는가 하면 특정 파일이 /E/E에서는 작동되지 않는 시스템도 있습니다.
(특 정 파일이 /E/E에서 작동하지 않는 이유에 대해서는 아직 알려진게 없습니다. 혹자는 /E/E에 들어 있는 파일의 버전이 /S/L/E에 들어 있는 파일의 버전보다 낮거나 같으면 작동이 안된다고 하는데 이는 사실이 아닙니다. /E/E에서 작동하는 파일이라면 버전에 관계없이 작동합니다.)

그렇기 때문에, 하드디스크에 /Extra/Extensions를 생성하는 작업은 시스템에 따라 전혀 필요 없을 수도 있고, 절대적으로 필요 할 수도 있습니다. 자신에게 맞는 방식을 선택해 적절히 활용하면 되겠습니다.


11 해킨토시용 하드웨어 관련 파일들 

initrd.img/Extra/Extensions 또는 /System/Library/Extension 에 넣어 줄 해킨토시용 하드웨어 관련 파일은 각각의 하드웨어 마다 필요한 파일의 종류가 모두 다르고, 여러 파일이 특정한 조합으로 상호 작용 하기도 하고, 시스템에 따라 특정 파일이 작동 안되는 경우도 있고, 독특한 기능을 가진 파일들도 있기 때문에 이 모두를 일률적으로 설명하기란 매우 힘이 듭니다.

따라서 아래의 대표적으로 많이 쓰이는 파일 소개를 참고 용도로 활용해서, 자신의 하드웨어에 맞는 파일 조합을 직접 찾아 보셔야 합니다.


해킨토시용 하드웨어 관련 파일에는 크게 두가지 종류가 있습니다.

① 교체용 파일 : /System/Library/Extension에 설치되는 매킨토시용 원본 파일과 동일한 이름을 가지며 원본 파일과 교체되어 작동하는 종류
② 추가용 파일 : /System/Library/Extension에 설치되는 매킨토시용 원본 파일과 다른 이름을 가지며 원본 파일을 그대로 둔 체 추가로 설치되어 작동하는 종류 (보통 매킨토시용 원본 파일을 이용하여 작동되므로 원본파일이 함께 존재해야 함)


① 교체용 파일

AppleSMBIOS.kext
매킨토시 모델 정보에 관련 된 파일
매킨토시 모델 정보가 “Mac Pro” 등으로 제대로 잡히지 않으면 포토샵 등의 일부 어플리케이션 실행이 불가능할 수 있습니다.
Leopard 10.5.4 용 AppleSMBIOS.kext 파일의 버전은 1.0.14 입니다.
AppleSMBIOS.kext 파일을 매킨토시용 원본 파일 그대로 사용하면서 매킨토시 모델 정보를 잡아주기 위해 개발된 SMBIOSEnabler.kext, AppleSMBIOSEFI.kext, SMBIOSResolver.kext 등의 추가용 파일이 있습니다.

AppleACPIPlatform.kext
재부팅 문제를 해결하고, 시스템 정보 보기와 PS2방식의 키보드와 마우스에 영향을 끼치는 파일
Leopard 10.5.0 용 AppleACPIPlatform.kext 파일의 버전은 1.1.0 이고
Leopard 10.5.4 용 AppleACPIPlatform.kext 파일의 버전은 1.2.1 입니다.
1.2.1버전을 사용할 경우 ‘시스템 정보 보기’의 '하드웨어' 항목에서 ‘모델명’ 및 ‘모델식별자’가 제대로 나타나지 않을 수 있습니다. (이 경우 메인보드 BIOS 수정으로 해결할 수 있습니다. Part 3 - 5 참고)
PS2방식의 키보드와 마우스를 사용하기 위해 ACPIPS2Nub.kext 또는 AppleACPIPS2Nub.kext 라는 추가용 파일을 사용 할 경우 AppleACPIPlatform.kext 파일의 버전 및 해킨토시용 / 매킨토시용 파일 여부에 따라 서로 작동 안할 수도 있습니다.
AppleACPIPlatform.kext 파일을 매킨토시용 원본파일 그대로 사용하면서 재부팅 및 종료 문제를 해결하기 위해 개발된 OpenHaltRestart.kext 라는 추가용 파일이 있습니다.

그래픽 드라이버
각각의 그래픽 카드 및 드라이버 마다 사용하는 파일과 방식이 다르기 때문에 일괄적으로 설명하기 어렵습니다. 
자 신이 사용하는 그래픽드라이버가 .pkg 확장자를 가진 설치패키지 형태로 되어 있다면 Pacifist 등의 프로그램으로 설치패키지를 열어서 그 안에 들어있는 .kext , .bundle , .plugin 파일을 추출해서 사용하면 됩니다. (예를 들어 ATI 2600 Pro PCIE 의 경우 ATIRadeonX2000.kext , ATIRadeonX2000GLDriver.bundle , Natit.kext 이 세 파일만 있으면 됩니다.)
또는 EFI-GFX 스트링 방식을 사용해도 됩니다.

AppleHDA.kext
사운드 드라이버
AppleHDA.kext는 ALCinject.kext 또는 HDAEnabler.kext 라는 추가용 파일과 함께 사용되어야 합니다.
원본 AppleHDA.kext를 사용하기 위해 개발 된 추가용 파일(3개의 파일이 1세트)이 있습니다.

IONetworkingFamily.kext
네트워크 드라이버
랜카드를 작동시키고 UUID 35 에러 (이 에러가 발생하면 타임머신 실행이 불가능함) 를 해결합니다.
참고로 SMBIOSResolver.kext라는 추가용 파일에 UUID 35 에러를 해결하는 기능이 포함되어 있습니다.

AppleIntelPIIXATA.kext
인텔 ICH 사우스브릿지에 관련된 파일
원래 IOATAFamily.kext 파일 내부에 들어있는 파일이지만 IOATAFamily.kext파일 밖에서도 작동합니다.

IOATAFamily.kext , AppleAHCIPort.kext , IOAHCIFamily.kext
사우스브릿지 및 AHCI에 관련된 파일

JMicronATA.kext
JMicron 칩에 관련된 파일


② 추가용 파일

SMBIOSEnabler.kext 
원본 AppleSMBIOS.kext를 그대로 사용 하면서 매킨토시 모델 정보를 잡아줍니다.

AppleSMBIOSEFI.kext
원본 AppleSMBIOS.kext를 그대로 사용 하면서 매킨토시 모델 정보를 잡아줍니다.
SMBIOSEnabler.kext보다 모델 정보가 보기 좋게 나타납니다.

SMBIOSResolver.kext
원본 AppleSMBIOS.kext를 그대로 사용 하면서 매킨토시 모델 정보를 잡아줍니다.
SMBIOSEnabler.kext보다 모델 정보가 보기 좋게 나타나며 수정이 쉽습니다. (Part 3 참고)
추가로 UUID 35 오류를 해결할 수 있습니다. 
Mac OS X Leopard 10.5.2 이상에서 작동합니다.

ApplePS2Controller.kext 
PS2 키보드/마우스를 사용할 수 있게 해줍니다. 
AppleACPIPlatform.kex 및 ACPIPS2Nub.kext 또는 AppleACPIPS2Nub.kext와 어떻게 조합하느냐에 따라 서로 작동 안될 수 있습니다.

ACPIPS2Nub.kext
PS2 키보드/마우스를 사용할 수 있게 해줍니다.
AppleACPIPlatform.kex 및 ApplePS2Controller.kext와 어떻게 조합하느냐에 따라 서로 작동 안될 수 있습니다.

AppleACPIPS2Nub.kext
PS2 키보드/마우스를 사용할 수 있게 해줍니다.
AppleACPIPlatform.kext 및 ApplePS2Controller.kext와 어떻게 조합하느냐에 따라 서로 작동 안될 수 있습니다.

OpenHaltRestart.kext
원본 AppleACPIPlatform.kex를 그대로 사용 하면서 재부팅 및 종료 문제를 해결합니다.

사운드 드라이버
HDAEnabler.kext
LegacyHDAController.kext
LegacyHDAPlatformDriver.kext
이 세 파일이 한 세트로 (/S/L/E에 원본 AppleHDA.kext 를 그대로 두고) 사운드를 작동시키며 '시스템 정보 보기'에 오디오 관련 정보가 출력됩니다.

LegacyAppleAHCIPort.kext
AppleAHCIPort.kext를 원본 그대로 두고 작동시킵니다.

LegacyAppleIntelPIIXATA.kext 
IOATAFamily.kext (또는 AppleIntelPIIXATA.kext) 를 원본 그대로 두고 인텔 ICHx 사우스 브릿지를 작동시킵니다.

LegacyIOAHCIBlockStorage.kext 
AHCI 관련 패치시 드라이브 아이콘 문제를 해결합니다.

LegacyJMicronATA.kext
jmicron 칩을 작동시킵니다.

AppleVIAATA.kext
VIA 칩을 사용할 수 있게 합니다. IOATAFamily.kext 파일 내부에 들어갈 수도 있습니다.

AppleGenericPCATA.kext
ATI 등의 칩셋을 사용할 수 있게 합니다. IOATAFamily.kext 파일 내부에 들어갈 수도 있습니다.

dsmos.kext
Dont Steel Mac OS X.kext를 무력화시킵니다.

AppleDecrypt.kext
dsmos.kext와 같은 역할을 합니다. 일부 시스템에서 오류가 발생할 수도 있습니다.

IntelCPUPMDisabler.kext
IntelCPUPowerManagement.kext 를 무력화시킵니다.

ALCinject.kext
해킨토시용으로 수정된 사운드 드라이버 파일 AppleHDA.kext를 작동시킵니다.

HDAEnabler.kext
해킨토시용으로 수정된 사운드 드라이버 파일 AppleHDA.kext를 작동시키며 '시스템 정보 보기'에 오디오 관련 정보가 출력됩니다.

kXAudioDriver.kext
Soundblaster용 사운드 드라이버


PART 2. 실전


1 준비물 

① Mac OS X Leopard 원본 설치 디스크

- Retail 버전의 DVD만 사용 가능합니다. (볼륨명 Mac OS X Install DVD)

- 2008년 9월 현재 Mac OS X Leopard Retail DVD는 10.5.0 , 10.5.1 , 10.5.4 버전이 존재합니다.

- 최신 버전일 수록 해킨토시용 파일과 호환이 잘 됩니다.

- 듀얼레이어의 원본 디스크 그대로 사용하길 권장하며 싱글레이어로 수정할 경우 오류가 발생할 확률이 높습니다.

- GUID 파티션 맵에는 바로 설치 가능하며 MBR에 설치하려 할 경우에는 설치디스크의 /System/Installation/Packages/OSInstall.mpkg 파일 내부의 Distribution 파일 내용 중 eraseOptionAvailable='true' 부분을 삭제해주어야 합니다. 자세한 방법은http://forum.insanelymac.com/index.php?showtopic=116505 를 참고하세요.

- 매킨토시 구입시 번들되어 제공되는 복원용 DVD는 해당 디스크가 번들된 매킨토시 하드웨어에서만 작동되기 때문에 사용이 불가능합니다. (볼륨명 Mac OS X Install Disc 1)

② 원본 Modified BOOT-132 Bootloader 파일
http://www.mediafire.com/?uwd9dtttjfk

③ 카멜레온 부트로더
chameleon.osx86.hu/file_download/10/Chameleon-1.0.11-installer.zip

④ initrd.img/Extra/Extensions 또는 /System/Library/Extension 에 넣어 줄 파일들
PART 4의 링크들 참조


2 initrd.img/Extra/Extensions에 넣어줄 파일 수정 

준비한 파일들이 부팅시에 로딩 되도록 다음과 같이 수정합니다.

파일 오른쪽 클릭 -> 패키지 내용 보기 -> Contents -> Info.plist 를 텍스트 편집기로 열어서 맨마지막 부분이
         <key>OSBundleRequired</key>
         <string>Root</string>
</dict>
</plist> 
이렇게 끝나도록 수정해주고 저장합니다. 

이 미 이렇게 되어 있는 파일도 있고, <string>Root</string>으로만 바꿔주면 되는 파일도 있고, 아예 <key>OSBundleRequired</key> <string>Root</string> 가 없는 파일도 있습니다. 모두 위와 같이 끝나도록 수정해줍니다. 
단, ApplePS2Controller.kext 파일처럼 <string>Root</string> 대신에 <string>Console</string> 로 되어있는 파일은 Root로 수정하지 않고 Console 그대로 남겨둡니다.  

/System/Library/Extension에 넣어 줄 파일은 수정하지 않습니다.


3 BOOT-132 CD 제작 

다 운로드한 원본 Modified BOOT-132 Bootloader 파일 “BOOT-KABYL-BUMBY.zip”의 압축을 풀면 BOOT-KABYL-BUMBY.iso 파일이 나타납니다. 이 파일을 임의의 장소에 두고 다음의 터미널 명령을 참고해 BOOT-132 CD를 제작합니다.

홈폴더 (/Users/사용자이름/) 에 newiso 라는 폴더를 만듭니다. 
mkdir ~/newiso

BOOT-KABYL-BUMBY.iso를 마운트합니다. 
hdiutil attach /경로/BOOT-KABYL-BUMBY.iso

BOOT-KABYL-BUMBY.iso의 내용물을 newiso 폴더에 복사합니다. 
cp -R /Volumes/BOOT-DFE-146-BUM/ ~/newiso
cp -R /Volumes/BOOT-DFE-146-BUM/isolinux/ ~/newiso

BOOT-KABYL-BUMBY.iso를 언마운트합니다. 
hdiutil detach /Volumes/BOOT-DFE-146-BUM

initrd.img 파일의 수정권한을 부여합니다. 
chmod 777 ~/newiso/initrd.img

initrd.img 파일의 크기를 자신이 집어 넣을 kext 파일들의 용량에 맞게 변경합니다. 
hdiutil resize -size 30MB ~/newiso/initrd.img

initrd.img를 마운트합니다. 
hdiutil attach ~/newiso/initrd.img

initrd.img/Extra/Extensions 안의 필요 없는 파일을 삭제합니다. 
rm -R /Volumes/initrd/Extra/Extensions/필요없는파일

initrd.img/Extra/Extensions 안에 필요한 파일을 복사해 넣습니다. 
cp -R /경로/필요한파일 /Volumes/initrd/Extra/Extensions/

initrd.img를 언마운트 합니다. 
hdiutil detach /Volumes/initrd

newiso 폴더의 내용물을 부팅가능한 CD 이미지로 생성합니다. 
hdiutil makehybrid -o new.iso newiso/ -iso -eltorito-boot newiso/isolinux.bin -no-emul-boot

이제 홈폴더에 생성된 new.iso 파일을 디스크유틸리티 등을 통해 굽습니다. 


4 설치 

① 제작한 BOOT-132 CD로 부팅합니다. 
② 부팅되면 Esc를 누릅니다. 
③ Mac OS X Leopard Retail DVD를 BOOT-132 CD와 교체하여 넣어줍니다. 
④ Mac OS X Leopard Retail DVD가 들어 있는 ODD의 코드 (화면에 [ ] 괄호 안에 나타나며 보통 9f) 를 입력하거나 엔터를 누릅니다. 
⑤ Mac OS X Leopard Retail DVD가 작동합니다. 호환성을 높이기 위해 숫자가 카운트다운 되는 동안 F8을 누른 뒤 -f -v 를 입력해 설치합니다. ( -f : 모든 kext파일 로드, -v : 부팅 과정을 터미널 라인으로 출력)
⑥ 설치 마지막 단계에서 재부팅 될 때 Mac OS X Leopard Retail DVD를 BOOT-132 CD로 교체해주고 부팅시킵니다. 
⑦ BOOT-132 CD로 부팅되면 Esc를 누르고 이번에는 방금 Mac OS X Leopard를 설치한 HDD의 코드를 입력해줍니다. (화면에 안내 메세지가 나타나며 보통 80 또는 81 등) 
⑧ 기본설정을 마칩니다. 설치가 완료 되었습니다. 


5 HDD로 부팅하기 설정 1 - 카멜레온 부트로더 설치

카멜레온 부트로더를 설치합니다.
다운로드한 Chameleon-1.0.11-installer.zip의 압축을 풀어 Chameleon-1.0.11-installer.dmg를 마운트 한뒤 Chameleon_V_1.0.11를 더블클릭해 설치합니다.


6 HDD로 부팅하기 설정 2 - /System/Library/Extensions (+ /Extra/Extensions) 설정 

6-1 하드디스크에 /Extra/Extensions를 생성하지 않을 경우 

① BOOT-132 CD의 initrd.img/Extra/Extensions에 들어있는 파일과 추가로 더 필요한 파일들을 모두 /System/Library/Extensions에 복사합니다. 
/S/L/E에 같은 이름의 원본 파일이 먼저 존재하고 있는 경우에는 덮어쓰기보다 삭제 후 복사해주는 것이 좋습니다.
터미널에서 작업하기를 권장합니다.

sudo -s
비밀번호
rm -R /System/Library/Extensions/삭제할파일
cp -R /경로/복사할파일 /System/Library/Extensions/

② 복사한 파일들의 권한을 복구 합니다.

(계속 sudo -s 되어 있는 상태에서)
chown -R root:wheel /System/Library/Extensions/복사한파일
chmod -R 755 /System/Library/Extensions/복사한파일
diskutil repairpermissions /

③ 권한복구가 끝나면 Extensions.mkext 파일을 다시 생성하기 위해 Extensions.mkext파일을 삭제합니다.
(Extensions.mkext 파일은 부팅을 빨리 진행시키기 위해 일부 /S/L/E의 파일들을 담고 있는 일종의 캐쉬 파일입니다.)

(계속 sudo -s 되어 있는 상태에서)
rm -R /System/Library/Extensions.mkext

④ 재부팅합니다.
재부팅시에 /S/L/E의 파일을 모두 한번 로딩시켜주기 위해 -f 옵션을 주고 부팅하기를 권장합니다.

6-2 하드디스크에 /Extra/Extensions를 생성할 경우 

① BOOT-132 CD안에 있는 BOOT 파일을 하드디스크 루트로 복사합니다.
터미널에서 작업하기를 권장합니다.

sudo -s
비밀번호
cp -R /Volumes/NEWISO/BOOT /

② 하드디스크에 /Extra/Extensions 경로를 만들어 줍니다.

(계속 sudo -s 되어 있는 상태에서)
mkdir -P /Extra/Extensions

③ 하드디스크의 /Extra/Extensions에 BOOT-132 CD의 initrd.img/Extra/Extensions에 들어있는 파일과 추가로 더 필요한 파일들을 모두 복사해줍니다. 하드디스크의 /Extra/Extensions에 들어갈 파일들은 모두 위 2번 설명이 적용되어 있어야 합니다.

(계속 sudo -s 되어 있는 상태에서)
cp -R /경로/복사할파일 /Extra/Extensions/

④ /System/Library/Extensions에 넣어 주어야 할 파일이 있다면 위 6 -1번 설명을 적용합니다.


7 완료 

이제 모든 작업이 끝났습니다.

/System/Library/Extensions 에 교체해준 파일은 기억하고 있다가 시스템 업데이트 이후에 해당 파일이 매킨토시용 원본파일로 변경될 경우 다시 해킨토시용 파일로 교체해주어야 함을 잊지 마시기 바랍니다.


참고 - BOOT-132 CD를 MS Windows에서 제작하는 방법

TransMac 이라는 프로그램을 이용하면 MS Windows에서 Mac OS X용 디스크 또는 디스크 이미지 파일을 다룰 수 있습니다.
http://www.asy.com/scrtm.htm

BOOT-132 CD 이미지는 표준 ISO 이미지 이므로 PowerISO나 UltraISO등의 프로그램을 이용해 내용물을 제거/추가 할 수 있습니다.
http://www.poweriso.com/
http://www.ezbsystems.com/ultraiso/

dmg 파일을 MS Windows에서 구워야 한다면 
TransMac으로 굽거나
PowerISO나 UltraISO를 이용해 dmg -> iso 로 변환해서 구우면 됩니다.

Part 2 - 2 작업
kext등의 파일은 MS Windows에서 폴더로 인식되지만 그대로 작업하면 됩니다.

Part 2 - 3 작업
첨부파일의 ForWindows 폴더 안에
원본 initrd.img 파일의 용량을 50MB로 늘이기만 한 initrd.img 파일과
이 파일을 포함해 생성한 BOOT-132 CD 이미지 파일 (new.iso) 을 포함시켰습니다.
initrd.img 파일을 TransMac으로 불러들여 내용물을 자신의 하드웨어에 필요한 파일들로 바꿔준 다음 
BOOT-132 CD 이미지 파일 new.iso를 PowerISO나 UltraISO로 불러들여 이 안에 들어 있는 INITRD.IMG 파일을 삭제한 뒤 방금 TransMac에서 수정한 initrd.img 파일을 넣어서
CD로 구우면 됩니다.


PART 3. 추가 정보


1 종료문제
종료가 안되는 문제가 발생한다면 Mac OS X Leopard Retail DVD안의 Optional Installs/Xcode Tools/Packages/CHUD.pkg 를 설치한 다음 http://cobranail.googlepages.com/poweroff_fix.zip 파일을 다운로드해 설치하면 대부분 해결됩니다.


2 Kalyway의 카멜레온 설치 패키지 http://tinyurl.com/6je4eh
PART 2 6-2 "하드디스크에 /Extra/Extensions를 생성하는 과정"을 쉽게 해주는 카멜레온 설치 패키지(Chameleon_DFE_for_Hard_Disk.zip)를 Kalyway가 배포했는데 작동 방식이 조금 복잡하기 때문에 개념 잡기 쉬운 수동 방식으로 설명했습니다.


3 USB 부팅 관련
Modified BOOT-132 Bootloader를 USB 메모리에 넣어서 부팅하면 ODD를 부트디바이스로 인식하지 못해 부팅후 ODD로 작업을 넘겨주지 못하므로 Mac OS X Leopard Retail DVD 설치가 불가능하다고 하는데, 일부 메인보드에서는 또 가능하다고 합니다. Mac OS X Leopard Retail DVD를 ODD가 아닌 HDD등에 복원시켜 설치할 경우에는 언제나 가능합니다.
Mac OS X Leopard 설치 완료 이후에는 BOOT-132 CD 대신 USB 메모리로 부팅 가능합니다.


iPhone과 iPod
일부 시스템에서는 PC에 USB로 iPhone이나 iPod등의 스토리지가 연결되어 있으면 설치 진행이 안되더라는 글을 읽은 적이 있습니다.


5 '시스템 정보 보기'에 나타나는 정보들
AppleACPIPlatform.kext 파일의 버전이 1.2.1이면 ‘시스템 정보 보기’의 '하드웨어' 항목에서 ‘모델명’ 및 ‘모델식별자’가 제대로 나타나지 않을 수 있다고 했습니다. 
AppleACPIPlatform.kext 파일 1.2.1 버전 부터는 메인보드 BIOS의 DMI영역에서 직접 '모델명' 및 '모델식별자'를 가져오기 때문인데, 이 정보가 제대로 출력되지 않는다 하더라도 AppleSMBIOS.kext가 제어하는 매킨토시 모델정보만 제대로 잡혀 있다면 실사용에는 아무런 문제가 없습니다.

'모델명' 및 '모델식별자'를 제대로 나타내고 싶다면
AppleACPIPlatform.kext 파일을 1.1.0 버전으로 교체 해주거나
AppleACPIPlatform.kext 파일을 1.2.1버전으로 사용하고자 할 경우 메인보드 BIOS의 DMI영역의 Product Name부분을 MacPro3,1 등 자신이 원하는 '모델식별자'로 수정해주면 됩니다. ('모델명'은 DMI의 '모델식별자'에 따라 자동으로 설정됩니다.)

Pheonix-Award BIOS의 DMI를 수정하는 가장 간편한 방법은
(작업중 메인보드 BIOS가 손상되면 시스템에 치명적인 문제가 발생할 수 있으므로 주의하시기 바랍니다)
Hiren's BootCD 9.6 (Part 4 링크 참조) 라는 iso 파일을 다운받아 CD로 구운 후 이 CD로 부팅해서
"1. BootCD"
"9. Next..."
"2. BIOS/CMOS Tools..."
"8. More..."
"2. Award DMI Configuration Utility 2.43"
로 접근한 뒤
Edit DMI -> System -> Product Name 항목을 MacPro3,1 등 자신이 원하는 '모델식별자'로 수정하고
F10을 눌러 DMI를 수정한 내용으로 업데이트 해주면 됩니다.

그런데 어떠한 경우에도 '시스템 정보 보기' 윈도우 제목 등에 나타나는 컴퓨터 이름은 바뀌지 않는 경우가 있습니다.
이럴 때는 시스템 환경설정 -> 공유 -> "컴퓨터 이름" 항목과, 이 항목의 "편집" 버튼을 누르면 나타나는 "로컬 호스트 이름"을 원하는 것으로 수정해주면 됩니다.


6 SMBIOSResolver.kext 세팅
원본 SMBIOSResolver.kext는 MacBookPro4,1 로 세팅되어 있습니다.
이것을 MacPro3,1 로 변경하려면, 파일 오른쪽 클릭 -> 패키지 내용 보기 -> Contents -> Info.plist 를 텍스트 편집기로 열어서

<key>board-id</key> 
<string>Mac-F42C88C8</string> 

<key>compatible</key> 
<string>MacPro3,1</string> 

<key>manufacturer</key> 
<string>Apple Inc.</string> 

<key>model</key> 
<string>MacPro3,1</string> 

<key>product-name</key> 
<string>MacPro3,1</string> 

<key>rom-version</key> 
<string>MP31.88Z.006C.B05.0802291410</string>

serial-number는 11자리의 알파벳대문자+숫자

등으로 변경하고 저장하면 됩니다.
(참고 http://www.superhai.com/forum/viewtopic.php?f=9&t=17 )


PART 4. 소스들


본 가이드의 첨부파일에는
- MS Windows에서 작업하기 위해 원본 initrd.img 파일의 용량을 50MB로 늘려놓기만 한 initrd.img 파일
- 위의 50MB로 늘인 initrd.img파일을 포함시켜 생성한 BOOT-132 CD 이미지 new.iso 파일이 들어 있습니다.

Modified BOOT-132 Bootloader에 관한 전반적인 설명, 준비, 부팅관련 글타래
http://forum.insanelymac.com/index.php?showtopic=113288

Modified BOOT-132 Bootloader 원본 파일
http://www.mediafire.com/?uwd9dtttjfk

카멜레온 부트로더 홈페이지
chameleon.osx86.hu

Modified BOOT-132 Bootloader 이미지 편집 관련 글타래
http://forum.insanelymac.com/index.php?showtopic=114651

편집된 Modified BOOT-132 Bootloader 이미지 관련 글타래
http://forum.insanelymac.com/index.php?showtopic=114834

코어아키텍쳐 이전 세대의 인텔 CPU 지원 관련
원문 글타래 http://forum.insanelymac.com/index.php?showtopic=123841
초심아빠 님의 가이드 http://x86osx.com/bbs/view.php?id=osxtips&no=1064

Mac OS X Leopard Retail DVD를 MBR에 설치 가능하게 수정하고 싱글레이어로 만들어 Modified BOOT-132 Bootloader를 통합시키는 방법 
http://forum.insanelymac.com/index.php?showtopic=116505

참고할 만한 MBR 설치 지원 OSInstall.mpkg (싱글레이어용 / 듀얼레이어용)
http://forum.insanelymac.com/index.php?s=&showtopic=113288&view=findpost&p=817710
http://forum.insanelymac.com/index.php?s=&showtopic=113288&view=findpost&p=818724

PS2 키보드/마우스 관련
http://forum.insanelymac.com/index.php?showtopic=117359
및 이 글 본문에 포함된 링크들 참조

AppleSMBIOSEFI.kext
http://forum.insanelymac.com/index.php?showtopic=108606

SMBIOSResolver.kext 등
포럼 http://www.superhai.com/forum/
파일 http://www.superhai.com/darwin.html

OpenHaltRestart.kext 등
http://www.psystar.com/openhaltrestart.html

기타 kext 파일 (/E/E Legacy)
http://forum.insanelymac.com/index.php?showtopic=129279

기타 kext 파일
http://forum.insanelymac.com/index.php?showtopic=76404

Power Off Fix 관련
파일 http://cobranail.googlepages.com/poweroff_fix.zip
제작자 http://cobranail.blogspot.com/2008/01/launchdstartupitem.html
관련글 http://forum.insanelymac.com/index.php?showtopic=73234&st=20&#entry704795

ATI 그래픽 드라이버
http://forum.insanelymac.com/index.php?showtopic=107526

nVidia 그래픽 드라이버 - NVkush, NVinstaller
http://diabolik1605.com/DHF/

그래픽 드라이버 - NVinstaller, EFI Studio 등
http://scottdangel.com/blog/

사운드 드라이버 - ALC88x , Sigmatel 9200 (/E/E에서 작동, /S/L/E에 원본 AppleHDA.kext 위치)
http://forum.insanelymac.com/index.php?showtopic=129058

사운드 드라이버 - ALC88x (/S/L/E 교체용, Taruga 제작)
http://wiki.taruga.net/tiki-list_file_gallery.php?galleryId=6

사운드 드라이버 - Soundblaster
http://www.driverheaven.net/mac-os-x-driver/

OSx86 Tools
x86tools/ target=_blank>http://pcwizcomputer.com/osx86tools/

Hiren's BootCD 9.6
홈페이지 http://www.hiren.info/pages/bootcd
파일 http://www.9down.com/Hiren-s-Boot-CD-9-6-NEW--32386/


'생활 > 서버놀이' 카테고리의 다른 글

서버 재설정!!  (0) 2012.05.31
웹프로그래밍 공부하기 좋은 홈페이지,,  (0) 2012.03.10
http 파일서버 프로그램  (0) 2009.11.20

제가 만든것도, 번역한것도 아닙니다.
파일안에 제작자 정보가 있으니 한번씩들러주시길,,,

'생활 > 서버놀이' 카테고리의 다른 글

서버 재설정!!  (0) 2012.05.31
웹프로그래밍 공부하기 좋은 홈페이지,,  (0) 2012.03.10
해킨 삽질을 위한 가이드  (0) 2012.01.08