기술문서

하드디스크의 파티션에 관한 정보. MBR 과 GPT

by 관리자 posted Jun 29, 2013
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄 수정 삭제
OSX 를 깐다고 삽을 드셨다면, GPT (GUID partition table) 와 MBR 에 대해 들어보셨을 겁니다. 이 글에서는 두 파티션 테이블을 철저히 해부하고 분해해 보도록 하겠습니다. 기술적인 부분이 아닌, 사용자 입장에서 말이지요.
PC BIOS 기반에서 MS-DOS 시절부터 일반적인 윈도우, 예전 버젼 리눅스 등에서 사용하던 방식이 MBR based partition 입니다. 오랜 역사를 가지고 있지요.
이 오래된 MBR partition table 의 문제를 해결하고자 나온 것이, EFI 시스템에서 주로 사용하는 GUID partition table (GPT) 입니다.
일단 두 파티셔닝 방식의 차이를 표를 통해 보겠습니다.
 
 

 

 

Master Boot Record (MBR)

GUID Partition Table (GPT)

디스크 단위

CHS

LBA

파티션당 최대 크기

2 TB (테라 바이트)

18 EB (엑사 바이트)

파티션 크기 조절

불가능

가능

부팅가능 파티션 수

4개

무제한 (Windows는 128개)

Windows 부팅

모든 Windows 제품 가능

EFI Native System에서만 일부지원 (Vista, 2003, 7)

Windows 접근

모든 Windows 제품 가능

XP 64 Bit, Vista, 2003 (SP1), 7 부터 가능

Winsows 유틸

diskpart, 디스크 관리자

diskpart, 디스크 관리자

OS X 유틸

fdisk

diskutil

Linux 유틸

fdisk

-

 

 

일단 네줄 요약:

1. GPT 가 나중에 나왔으니, 당연히 기능은 MBR보다 다 좋습니다. 윈도 쓸 일이 없다면 GPT 쓰시면 됩니다.

2. 하지만 결정적인 문제는 윈도우에서 GPT가 부팅디바이스로 원래 지원이 안된다는겁니다.

3. 그래도 hybrid MBR 을 사용하면 윈도 설치 및 활용이 가능합니다.

4. hybrid MBR 사용이 아주 쉽지만은 않습니다. 위에 나열된 GPT의 장점을 활용할 일이 없다면, 그냥 MBR을 쓰는 것도 좋은 선택입니다.

 

 

자, 그럼 이번엔 3번에 관심있는분. 즉 GPT 디스크에서 윈도우를 설치하고 싶은 분들을 위해 hybrid MBR 에 대해 설명드리겠습니다.

먼저, GPT 디스크에 OSX와 Windows 모두 설치방법:

1. OSX 설치프로그램으로 디스크를 GPT 로 파티셔닝합니다. 윈도우 깔 공간은 따로 만들어놔야겠지요.

2. OSX 가 다 깔린 후 Windows를 설치합니다.

3. fdisk 로 active partition 을 OSX 파티션으로 바꾸면 OSX 로 부팅됩니다.

너무 간단해서 뭔가 이상한가요? 사실 2번은 위의 대전제를 엎고 시작합니다. GPT 파티션에 그냥 Windows를 설치한다고 하니까요. Microsoft 기술문서에도 저건 보통 안된다고 나와있고, 비스타나 XP 를 설치하려고 할 때, "GPT 디스크에는 설치할 수 없습니다." 라는 에러를 보신 분들도 있을겁니다.

저기서 마법은, OSX 에서 디스크 유틸리티로 파티셔닝을 한다는 겁니다. 디스크 유틸리티는 hybrid MBR을 지원하고, 저기서 Boot Camp 용으로 파티셔닝 되어있다는 이야기는 지금 hybrid MBR 이 적용되어 있다는 의미입니다.

 

*** Hybrid MBR & gptsync ***

여기서 hybrid MBR 이 뭔지 짚고 넘어가죠. 사실 GPT는 MBR이 들어가는 자리를 사용하지 않고 남겨둡니다. 그리고 거기다가 MBR 파티셔닝 방식으로, "이 디스크는 통째로 GPT가 사용하고 있습니다." 라고 기록해두죠.

hybrid MBR은, 현재 GPT로 파티셔닝된 정보를 MBR 파티셔닝 방법으로도 기록해두는걸 뜻합니다. 이 방법을 사용하면 GPT가 지원하는 프로그램에서 보면 GPT 디스크지만, MBR만 지원하는 프로그램에서 보면 MBR 디스크로 보이는거죠. 그래서 윈도우를 설치할 수 있는겁니다.

OSX의 디스크 유틸리티는 기본적으로 hybrid MBR을 지원합니다. 그래서 저 1,2,3 방법이 먹히는거고요. 하지만 어떤 이유로든 (주로 리눅스 파티셔닝 툴을 쓸때 발생하는 문제입니다만) GPT 파티셔닝과 MBR 파티셔닝 정보가 어긋나게 되면 큰일이 납니다. 파티션 테이블이 깨진거니까요. 부팅이 안될수도 있고, 다른 파티션의 데이터를 덮을수도 있습니다. 따라서 파티션 관련 작업을 한 후엔 gptsync 프로그램을 사용하여 GPT 정보를 MBR 로 동기화 시켜주는것이 좋습니다.

Ubuntu Linux 같은 경우는 sudo install gptsync 명령어를 통해 gptsync 프로그램을 설치할 수 있습니다. 설치 후, sudo gptsync /dev/sda 라고 하면 sda 디스크의 GPT 정보를 MBR 로 동기합니다.

OSX 용 gptsync 는 http://www.insanelymac.com/forum/index.php?showtopic=177505 여기서 다운받을 수 있습니다. 전 이 gptsync 를 더 좋아하는데요, 이 enhanced 0.2 버젼은 어떤 파티션을 MBR로 동기화할지 정할 수 있기 때문입니다.

예를 들어, 제 디스크는 GPT로 4개의 파티션이 있습니다. Windows 파티션, Linux 파티션, OSX 파티션, 데이터 파티션. 데이터 파티션은 FAT32로 포맷되어 있어 설치된 모든 OS 에서 자유롭게 자료를 저장할 수 있습니다.

아참, 저 표에서 MBR은 primary partition 이 4개밖에 안된다고 그랬죠? 그런데 사실 GPT 파티션엔 맨 앞에 200M짜리 EFI 파티션이 하나 생깁니다. 그럼 총 5개네요. 그러면 앞부터 선착순으로 하면 데이터 파티션은 MBR 에 동기화시켜줄 수 없어요. 이게 일반적인 gptsync 의 방식입니다.

하지만 저 OSX용 enhanced gptsync 는 동기화 시킬 파티션 지정이 가능합니다. sudo gptsync /dev/rdisk0 1 2 3 5 라고 명령어를 주면, OSX HFS+ 파티션은 빼고 데이터 파티션을 포함해 동기화를 시킵니다. 그러면 윈도에서 데이터 파티션을 접근할 수 있지요. 물론 빼먹은 OSX 파티션은 "할당하지 않은 공간" 으로 표시됩니다. 건드리면 큰일나요!

(표에 있는것처럼 XP 64bit, Vista+ 에서는 GPT 파티션 인식이 가능합니다. 하지만 hybrid MBR 파티션 정보가 있는 경우는 MBR 파티션으로 인식합니다.)

 

 

*** 다시 요약 ***

정리하면, 솔직히 GPT 사용해서 그렇게 부귀영화를 누릴 수 있는것은 아닙니다. OSX 쓰는 입장에서 1. 오리지날과 뭔가 비슷하다는 느낌, 2. 파티션 크기 조절이 가능하다는것, 3. OSInstall 파일을 패치할 필요가 없다는것 정도가 실질적 장점이겠죠. 2T 이상 파티션 쓰거나 하지 않는다면 말에요.

위 장점이 그다지 필요없고 윈도우를 같이 쓴다면, 속편하게 MBR partition scheme 를 사용하시는것이 좋습니다. 일단 깔리고 나면 잘 돌아가니까요.

Linux 는 MBR, GPT 군말없이 잘 깔리고 지원하기는 합니다. 다만 Linux의 파티션 유틸리티를 사용하면 hybrid MBR 정보가 전부 날아가요. gptsync 를 꼭 해줘야 합니다.

표에 있는것처럼 OSX, Linux 공통으로 fdisk 커맨드는 MBR을 작업합니다. GPT 작업은 다른 유틸리티를 사용하고요. active(boot flag) 정보가 서로 다를 수 있으니 주의하세요. 경험상 Vista의 부트로더는 hybrid MBR 에서 지정되어있는 boot partition 으로 부팅합니다.


http://refit.sourceforge.net/myths/ 여기에 GPT, EFI 에 대한 진실 혹은 거짓이 잘 정리되어있습니다. 대부분의 오해와 진실을 정확하게 알기 좋죠. 다만, GRUB이 GPT 를 인식 못한다는건 GRUB1 이야기고, GRUB2는 GPT를 잘 지원합니다.

 

 

 

 

좀더 자세한 정보. 이후의 글은 아래의 링크에서 원글을 확인 하실 수 있습니다.

 

http://blog.naver.com/leekh8412?Redirect=Log&logNo=100132406507

 

 

 

MBR(Master Boot Record)와 GPT(GUID Partition Table)의 구조적 차이

 

- 윈도우에서 사용할 수 있는 디스크 종류는 크게 2가지가 있다.

: 전통적인 BIOS 방식의 시스템에서 사용되는 디스크 형식인 MBR 디스크

: 새롭게 개발된 EFI 방식의 시스템에서 사용되는 디스크 형식인 GPT 디스크

 

- 디스크에 관한 정보를 담는데 MBR을 사용하느냐 GPT 를 사용하느냐에 따라 나뉨

 

- MBR과 GPT 디스크의 내용은 ‘기본 디스크’를 기준으로 설명됨

: 동적 디스크는 MBR, GPT 의 특별한 구분이 없음

 

 

MBR(Master Boot Record) 디스크

 

- BIOS에는 하드웨어를 체크하고 부팅할 수 있는 내장 프로그램이 설치되어 있음

: BIOS의 마지막에는 시스템의 첫 번째 하드디스크의 첫 번째 실린더, 첫 번째 헤드, 첫 번째 섹터로 이동하라는 명령이 포함되어 있음

 

- 디스크의 시작 지점에 위치한 것이 바로 MBR(디스크의 시작 지점에 512Byte의 크기)

: 부팅에 관한 정보를 담고 있는 440Byte의 Master Boot Code 영역

: 파티션에 관한 정보를 담고 있는 64Byte의 Partition Table

 

- Primary Partition Table에 기록이 되는 파티션 엔트리는 개당 16Byte로 이루어짐

: 그리하여 MBR 디스크에서 최대로 생성 가능한 파티션의 수는 64/16 = 4개가 된다

: 최대 생성 개수가 4개밖에 되지 않아 MBR은 확장 파티션과 EBR(Extended Boot Record, 확장 부트 레코드)을 통해 구조적인 문제를 해결함

 

- 파티션 테이블의 구조상 MBR에서 최대로 생성 할 수 있는 파티션 수가 4개

: MBR의 4개 파티션 중 3개는 주 파티션으로 사용하고, 나머지 하나를 확장 파티션,

확장파티션 내에서 다시 EBR을 통해 파티션을 생성한다

 

- EBR 내의 파티션 테이블은 총 4개이며, 엔트리의 구조는 MBR의 파티션 엔트리와 동일

: 단 EBR내의 파티션 중 3,4번 파티션은 사용되지 않는 엔트리다.

: 첫 번째 파티션 엔트리에는 현재의 논리 드라이브에 관한 정보가 기록

: 두 번째 파티션 엔트리는 처음에는 비어있지만 다시 새로운 논리 드라이브가 생성이 되면 새롭게 생성된 논리 드라이브의 EBR을 가르키는 내용이 기록됩

 

- 논리 드라이브는 자체적으로 EBR을 포함하고 있으며 해당 EBR에 자기 자신의 정보를 기록하고

이러한 EBR 은 서로 체인처럼 연결되어 무한적 확장되는 구조를 가짐

 

- MBR 디스크 방식의 구조적인 한계는 단일 파티션으로 최대 2TB 까지만 생성할 수 있다.

: CHS(Cylinder-Head-Sector)주소체계를 사용하여 디스크에서 인식할 수 있는 주소의 개수가 2^32개 뿐

: 디스크에서 1 섹터는 512Byte이므로 MBR디스크가 인식할 수 있는 크기는 512*2^32 = 2 가 된다.

 


GPT(GUID Partition Table)디스크

 

- 전통적 IBM의 BIOS가 아닌 EFI라는 좀 더 개선된 펌웨어에서 사용하는 디스크 형식

GPT 란 MBR과 마찬가지로 디스크에 대한 정보를 담고 있는 영역

 

- 일반적인 BIOS기반의 시스템에서도 사용가능(윈도우가 지원한다는 가정 하에)

: 윈도우 XP 64BIT 이후 버전부터 지원함

: 일반적인 BIOS시스템에서 GPT 디스크에 설치된 윈도우로 부팅하는 것은 불가능

(GPT 디스크를 통해 부팅하려면 EFI 시스템이 필요)

 

- 일반적으로 현재 윈도우에서 GPT디스크는 데이터 저장용으로 사용함

 

- MBR의 단점을 극복하기 위해 16Byte 였던 파티션 엔트리의 크기를 128Byte로 확장하였고, 파티션 테이블의 크기는 16,384Byte로 확장함

: 16,384/128 = 128, 하나의 디스크에 최대 128개의 파티션을 생성할 수 있음

 

- MBR디스크에서는 CHS주소체계를 사용, GPT디스크는 LBA(Logical-Block-Addressing)사용

: MBR디스크는 주소체계에 32bit를 사용하여 최대용량이 2TB

: GPT디스크는 64bit를 사용하여 최대 18EB( 1 EB = 1,048,576 TB)까지 지원함

(이론적으로는 8 ZB (1 ZB = 1024 EB)까지 지원하지만 18 EB로 제한을 하고 있음

 

- MBR -> GPT 로 변환시에는 데이터 손실 없이 바로 변환 가능

 

 

 

 

 

 

 

 

EFI파티션을 grub으로 운용하기

 

아래의 링크를 통하여 원글을 확인 하실 수 있습니다.

http://x86osx.com/bbs/view.php?id=osxtips&no=1318

 


JY님의 요청에 의해 캡쳐실력의 부족에도 불구하고 용기를 내어 팁을 적어봅니다. 이 방법은 "guid파티셔닝+Boot132+EFI에 kext심기"의 응용 및 변형입니다. 만일 guid 디스크내에 xp를 설치하려거나 xp가 운용하여야할 FAT, NTFS볼륨이 있다면 이 팁이외에 refit, gptsync라는 툴의 사용법을 더 익히셔야하므로 도전을 다음으로 미루십시오. 이 팁만으로 작업을 하시면 xp에서는 해당볼륨들을 인식하지 못하고 하드디스크전체가 gpt보호파티션으로 인식되어 접근이 불가능합니다. (관련 글을 적어두었으니 제 이름으로 검색해보시면 해결방법이 나옵니다)

 

"guid파티셔닝+Boot132+EFI에 kext심기"방법의 장점은 해킨을 새로 설치하거나 타임머신이나 dmg로 부터 복원이 되었을 때, 다른 아무 설정없이 해킨으로의 부팅이 가능하여 리얼맥과 거의 동일한 복구환경을 누릴 수 있다는 것입니다. 그리고, 맥OS의 하드웨어제한을 회피하기위한 각종 해킹/후킹용 kext들을 os의 파일시스템을 건드리지 않고 사용할 수 있다는 장점까지 가지게 되어 시스템을 깔끔하게 관리할 수 있기도 합니다..

하지만, EFI에 심는 munky버전의 변형카멜레온 부트로더는 멀티부팅을 원활하게 지원하지 못하는 경우가 있고, 불의의 사고로 stage1이나 stage2부트로더가 날아갈 경우 해당 파일들을 구하기 위해 또 브라우저를 통해 이리저리 찾아다녀야합니다. 날아간 부트섹터때문에 부팅도 못하고 있는 와중에 x86osx.com이나 insanelymac.com, google등을 찾는 것이 쉬운 일도 아니고 해당 EFI파티션이 hfs타입이라 그곳에 접근하기 위해서는 어떻게든 부팅되는 해킨시스템이나 리얼맥이 필요하기도 합니다. 그조차 터미널을 통해서 가능하지요.

그래서 생각한 방법이 EFI파티션을 grub으로 운용하는 것입니다. 이 경우, 복구를 위해 필요한 준비물은 boot-132할때의 boot파일과 자신의 하드웨어에 동작하도록 만들어둔 initrd.img뿐입니다. 우분투등의 리눅스 라이브cd가 당연히 필요하긴 하지만 이것은 심지어 pc방에서도 다운 받을 수 있고 cd없이 usb에 심어서 만들 수도 있습니다. 그외의 설정파일은 명령문법만 대강알아두면 1~2분안에 뚝딱만들 수 있습니다.

하드디스크는 guid포맷된 해킨시스템 한장뿐이고 dvd라이터도 없는 상태에서 부팅이 안된다는 극악한 경험을 그리 많이 하진 않으시겠지만 이런 경우에도 복구할 수 있다는 것은 분명히 장점일 겁니다. 그리고, 이 방법에서 사용할 boot파일은 slimbuild gui의 boot파일이라서 이전의 방법으로는 보지 못했던 부팅시의 사과그림을 볼 수 있다는 장점도 있지요.

장황하게 한가지 더 적어드리자면 현재사용하고 있는 시스템에서 원활하게 작동하는 initrd.img 이외에 another.img를 만들어둔다고 가정하겠습니다. 이 another.img에 해킨커널을 넣어둔다거나 그래픽카드, 랜카드, ps/2키보드등을 적절히 적용시켰다면 하드디스크만 떼어내서 전혀다른 새로운 시스템에서 원활히 부팅을 할 수도 있습니다.

음... 그리고, 이 복잡한 작업을 하는 와중에 우분투라이브cd는 인터넷이 가능하므로 필요한 파일들을 찾고 다운받을 수도 있다는 엄청난 장점도 있습니다. 우분투라이브cd는 리눅스설치cd이기도 하지만 그 자체로 거의 완벽하게 실행되는 운영체제이기도 해서 복구툴로는 최강이라고 할 수 있습니다. 부팅이 안되는 시스템의 문제를 해결하기 위해 실행한 복구cd에서 insanelymac.com을 뒤질 수 있다는 이야기이지요. 이 정도면 충분히 매력있는 장점이 될지 모르겠습니다.

 

제일 먼저 빈 usb메모리에 slimbuild gui로 자신이 만든 자신의 시스템에서 잘 작동하는 boot파일과 initrd.img를 복사해두십시오.
slimbuild gui가 작성한 iso파일안에 두 파일이 있습니다. boot는 숨김속성이 있으니 숨김파일보기를 해야만 복사할 수 있습니다.

 


1. 디스크유틸리티로 guid파티셔닝해서 숨어있는 200mb EFI파티션이 존재하는 상태에서 우분투라이브디스크로 부팅을 합니다. (저는 8.04버전에서 테스트하였습니다) 부팅이 완료되면 alt+F2를 눌러 명령창에 sudo gparted를 입력합니다.

파티션매직등에서 많이 보던 인터페이스의 파티션툴 보이십니까? 맨앞에 보이는 200MiB짜리 FAT32파티션이 EFI파티션입니다. 다른 것은 일체 건드리지 마시고 해당파티션만을 ext2타입으로 포맷하십시오. 원래는 다른타입의 포맷으로도 작동되어야하지만, grub이 guid내의 ext2/ext3만을 인식하더군요. 우리에게는 ext2타입이 적절할 것 같습니다. Apply를 눌러야만 포맷이 완료됩니다. 이제 다음단계인 포맷이 완료된 EFI파티션에 boot132관련파일과 grub을 복사해보겠습니다.

2. 우분투 라이브cd를 재부팅합니다. 재부팅을 왜 하냐고요? 원래는 앞단계에서 포맷한 파티션을 마운트하면 됩니다만, 복잡한 마운트명령을 이 글에 쓰고 싶지 않아서입니다. 이 글에서는 왠만하면 설치명령어가 아닌 드래그앤드롭으로 진행하려고 합니다. 터미널에 익숙한 분들이라면 일전에 이곳저곳에 댓글로 적어두었듯 "EFI파티션을 ext2로 파티션하고 마운팅포인트를 boot로 준후 리눅스를 설치하고 menu.lst에 boot-132를 삽입하라"는 한마디의 댓글로 더 이상의 어떤 강좌도 필요하지 않으니까요. (글이 자꾸 딴곳으로 가네요)

재부팅을 하셨다면 약 200mb짜리 파티션이 맥os 파인더 메뉴처럼생긴 위의 bar를 뒤지다보면 보입니다. 그놈을 클릭해서 바탕화면에 나타나도록 하십시요. 이 디스크안에 여러파일들을 복사하겠습니다.

잘 아시다시피 유닉스시스템들은 파일에 알아보기도 힘든 복잡한 권한들이 있습니다. grub이나 boot132파일들이 권한에 큰 영향을 받지는 않으나, 윈도우처럼 대충 아무 창들을 열어 복사하기는 어렵습니다. "거부~" 이런 메시지들을 보지않고 이 EFI파티션에 파일들을 복사하기 위해서 파일관리자를 관리자 권한으로 실행하겠습니다. 저 위에서 눌러보았던 alt+F2를 다시 눈러서 gksudo nautilus를 입력합니다.

우선 이 창의 왼쪽에 보이는 File System에서 usr -> lib -> grub -> i386-pc를 찾아가시면 여러파일들이 보이지요? 생각하기 복잡하니 모조리 선택하셔서 버퍼에 copy해둡시다.(마우스오른쪽버튼을 눌러 복사해두라는 이야기입니다)

이번엔 오른쪽의 Place란 아래에서 200mb가량의 EFI파티션으로 클릭해서 들어가신 후 grub이라는 디렉토리와 boot132라는 디렉토리를 만드시고 grub디렉토리까지 들어갑니다. 마우스 오른쪽버튼을 눌러 paste를 하시면 아까보았던 이름 요상한 십여개의 파일이 이곳으로 카피되는 것을 볼 수 있습니다.

눈치 채셨나요?처음에 준비해두라했던 boot파일과 initrd.img파일도 방금만든 boot132디렉토리에 똑같은 방법으로 복사합니다.

grub설정파일을 만들고 부트로더를 설치하는 과정까지 왔습니다. grub은 매우 작은 부트로더이긴 하지만 굉장히 많은 기능들을 가지고 있어서 그 기능을 매뉴얼화 하기가 버겁습니다.오픈소스프로그램의 특성대로 변종도 많고 이리저리 응용하다보면 거의 운영체제의 쉘만큼이나 많은 일들을 할 수 있기도 합니다. 당연히 저는 이 내용들을 다 강의하거나 적을 수가 없습니다. 오직 mac os x만을 띄울 수 있는 설정파일을 만들겠습니다.

3. 아까의 grub디렉토리의 빈 공간에서 마우스오른쪽버튼을 눌러 menu.lst라는 이름으로 새 파일을 만들어 더블클릭합니다.
아래와 같이 적어주겠습니다.

default 0
timeout 0

title Mac OS X Leopard
root (hd0,0)
kernel /boot132/boot
module /boot132/initrd.img


이 설정내용은 다짜고짜 맥os x로 넘어가는 명령입니다. 이 하드디스크에 다른 운영체제가 있다면 timeout에서 몇초를 기다릴 것인지를 바꾸어주고 그 아래에 해당 OS의 부팅명령들을 적어주어야 하는 것은 너무나 당연하겠죠? 다시 말씀드리지만 이 문서는 해킨토시에서 EFI파티션을 grub으로 운용하는 개념을 설명하는 것이지 grub을 강의하고자 함이 아닙니다. 그런 내용은 구글링으로 찾으시는 게 옳고, 다른 게스트운영체제마다 부팅과정이 모두 달라서 적기를 포기하는 것입니다.

그래도 참고하시라고 하나 더 적어드리면 이 하드디스크의 어딘가에 레오파드 설치DVD를 디스크유틸리티로 풀어놓으셨다는 가정하에 이런 설정파일을 만들어보세요. setup.img라는 파일엔 com.apple.Boot.plist를 넣어두었고 설치DVD파티션을 루트로 인식하도록 rd=disk0sX라고 넣어두었다면...

default 0
timeout 3

title Mac OS X Leopard
root (hd0,0)
kernel /boot132/boot
module /boot132/initrd.img

title Mac OS X Install
root (hd0,0)
kernel /boot132/boot
module /boot132/setup.img

-> 이런 경우 grub은 3초간 맥os를 인스톨할건지 그냥 부팅할건지를 묻습니다. 3초뒤엔 디폴트가 0이니 그냥 부팅을 시도하겠지요.

어쨋거나 다 만들어진 menu.lst를 저장하고 이번엔 부트로더를 설치하겠습니다.

4. 저 무섭다는 터미널을 실행시키고 sudo -s를 입력하세요. 라이브cd니 암호를 묻지는 않습니다.
프롬프트가 root로 바뀌면 grub을 타이핑하시고 엔터합니다. grub콘솔이 간단하게 뜹니다. 다음을 순서대로 입력합니다.

find /grub/menu.lst 엔터
-> 해당파일이 잘 만들어져있는지를 확인하는 역할도 하고 해당파일이 존재하는 파티션을 보여줍니다. 정상적으로 하셨다면 root (hd0,0)이라고 출력될것입니다.

root (hd0,0) 엔터
-> 해당파티션을 작업중에 사용할 파티션임을 선언해줍니다.

install /grub/stage1 d (hd0) /grub/stage2 p /grub/menu.lst 엔터
-> 스테이지1 부트로더를 디스크 (hd0)에 설치하고 스테이지2 부트로더를 아까 선언해준 파티션에 설치하고 설정파일을 menu.lst로 하라는 입력입니다.

quit 엔터

부트로더설치가 끝나고 터미널로 돌아왔습니다. 모든 작업이 끝났습니다.
재부팅하시고 하드디스크로 부팅하시면 initrd.img가 잘 작동하던 것이고 그 안의 com.apple.Boot.plist역시 잘작동하던 것이라면 원활하게 맥OS가 부팅될것입니다.

================

글쓰기 힘드네요.
캡처사진을 몇개 찍어두긴 했으나, 첨부하는 방법을 몰라 수일전에 글을 게시하다 삭제해버렸습니다. 몇개의 사진을 그림첨부가 아닌 파일첨부로 붙여둘테니 다운받아 글을 읽으시면서 그림도 같이 보시면 도움이 될지 모르겠습니다. 그리고, 혹시나 해서 slimbuld gui가 생성하는 boot파일과 grub파일들도 첨부해두겠습니다. 기본적으로 boot파일을 제외하곤 우분투라이브안에 모조리 있는 파일이니 보존하실 이유가 없습니다. 그냥 참조하시라고요. 제 컴은 아니지만 지금세팅하고 있는 컴퓨터에서 쓰고 있는 약간 복잡한 menu.lst도 첨부되어있으니 보시면서 구글링으로 grub관련 문서들을 보시면 아주 복잡한 grub설정들도 해내실 수 있을 겁니다.

efi에 카멜레온을 까는것과 무슨 차이가 있는지 지금단계에선 아시기 힘드시겠지만 몇가지 응용과 아이디어를 짜내보시면 매우 편리하게 사용하실수 있습니다.

현재의 제 메인pc는 1번파티션 efi, 2번파티션 Mac OS X, 3번파티션 백업, 4번파티션 xp, 5번파티션 설치DVD, 6번파티션 우분투로 되어있고 3번파티션으로 부팅하면 xp설치cd와 우분투 설치CD DOS등이 실행되어 어떤 os이건 다른 미디어없이 복구, 재설치가 가능합니다. 물론, 비상용미디어들을 따로 가지고 있기도 합니다만... 이 비상용 미디어도 16기가 sd메모리에 똑갈은 방법으로 적용하여 사용하는 모든 os와 유틸리티들을 복구, 재설치할 수 있습니다.

더 필요한 내용들을 시간나는대로 상세히 적어보고 싶은 데... 게시판도 잘 사용할줄 모르고 블로그도 쓸줄몰라서 잘 될지 모르겠습니다.
장황하고 긴 내용이지만 잘 따라해보시길 빕니다.

이 문서에 저작권 같은 건 일체 없습니다. 잘 숙지하시고 이해하신 다른 분들이 캡쳐그림과 함께 예쁘게 재작성하셔서 강좌해주시면 그 만큼 반가운일이 어디있겠습니까? 출처나 작성자 이 따위것들 걱정마시고 마음대로 재수정 재배포 해주세요.


아~ 다시 말씀드립니다. 이 gpt디스크안에 xp를 설치하려면 꼭 refit사용법이나 ptedit사용법을 숙지하시고 저의 다른 게시물인 gpt관련글을 읽어보세요.

언제쯤 강좌할 수 있을 지 모르지만 grub-set-default 명령까지 숙지하신다면, suse의 변형 gfxboot용 grub사용법까지 아신다면 마치 리얼맥의 부트캠프처럼 아무입력이 없으면 직전에 사용하던 운영체제로 부팅되는 기능을 구현하시거나 애니메이션이 돌아가는 화려한 그래픽의 부트로더도 보실 수 있습니다. 제가 그림을 만질줄 알았다면 맥을 선택하면 빙글빙글 사과가 돌아가는 모습, 윈도우를 선택하면 창모양의 깃발이 펄럭거리는 모습 이런 것들도 만들겠는데 역부족입니다. OTL...