윈도우가 설치되지 않는 이유는 여러가지가 있겠지만 오늘은 파티션 이야기를 잠시 해보도록 하겠습니다.

일단 기본 MBR 디스크에만 윈도우를 설치할 수 있습니다. 즉 동적 디스크나 GPT 디스크에는 윈도우가 설치되지 않습니다. VMware에서 각각 동적 디스크와 GPT 디스크를 만들어 보았는데 아래 메시지가 나왔습니다.





그런데 기본 MBR 디스크에도 윈도우가 설치되지 않는 경우가 있습니다. 바로 부팅 1순위로 지정된 하드디스크에 주 파티션이 없거나 생성 가능한 공간이 없는 경우 그렇습니다. 일단 주 파티션 이야기부터 잠시 해보겠습니다.

MBR 디스크에선 파티션을 최대 4개 만들 수 있습니다.



주 파티션만 4개 만들 수도 있고, 아니면 주 파티션 3개와 확장 파티션 1개를 만들 수도 있습니다. 대신 확장 파티션 안에는 논리 드라이브를 무제한(?) 만들 수 있습니다. 무제한인지는 모르겠지만 예전에 캐플님이 100개 만드는건 테스트 해보셨습니다.

http://shinb.tistory.com/176

위 글 하단부에 100개 만들기 실험이 있습니다. 그러니까 비록 파티션은 4개까지만 만들 수 있지만 확장 파티션 안에 논리 드라이브는 무수히 만들 수 있으니 실질적으로 보통 사람들이 생각하는 파티션 개념으로 접근한다면 파티션은 무수히 생성할 수 있는게 맞습니다.


그런데 윈도우를 부팅시키는 파일들은 반드시 주 파티션 안에만 설치가 됩니다. 바로 이 부분이 이 글의 핵심입니다. 만약 하드디스크가 하나만 있고 거기에 확장 파티션(논리 드라이브)만 존재한다면 윈도우는 설치되지 않습니다. 물론 논리 드라이브에도 윈도우를 설치할 수 있습니다. 부팅 파일을 보관할 수 있는 크기의 주 파티션이 같이 존재하거나, 주 파티션을 만들 수 있는 여유공간이 있으면 됩니다. 윈도우 7에선 잘 아시다시피 이 할당되지 않은 여유 공간을 100MB로 요구합니다. 윈도우 XP에선 몇메가인지 잘 모르겠습니다만 윈도우 7처럼 100MB나 요구하지는 않습니다.

또는 하드디스크가 2개 이상 존재하고, 부팅 우선순위로 잡혀있는 하드디스크에 주 파티션이 존재하는 경우, 두번째 하드에는 논리 드라이브만 단독으로 있어도 설치가 됩니다.



위 그림과 같은 상황에선 논리 드라이브에 설치가 가능합니다. 왜냐하면 부팅 파일은 첫번째 하드의 주 파티션에 생성되기 때문입니다. 그런데 이렇게 되면 단독으로 윈도우를 하나만 설치했다 하더라도 부팅 파일은 첫번째 하드에 존재하고 윈도우는 두번째 하드에 존재하는, 즉 멀티부팅 아닌 멀티부팅 비슷한 상태가 됩니다. 이런 경우 첫번째 하드를 포맷해버리거나, 제거해버리면 두번째 하드 단독으로는 부팅이 안되는 상황이겠지요?

따라서 파티션 작업을 할때는 반드시 주 파티션으로 생성하는게 좋습니다. 확장 파티션만 단독으로 존재하면 윈도우를 설치할 수 없기 때문입니다. 확장 파티션은 하드 하나에 파티션을 5개 이상 생성해야 하는 경우에만 필요하지 그게 아니라면 굳이 확장 파티션을 생성할 이유가 없다고 봅니다.


윈도우 부팅에 관해서 대충 요약을 해보자면

1. BIOS 상에 부팅 우선순위로 지정된 하드에는 반드시 주 파티션이 1개 이상 존재해야 한다.
2. 그리고 그 주 파티션은 활성 파티션으로 지정되어 있어야 한다.
3. 윈도우는 동적 디스크나 GPT 디스크에 설치할 수 없다.
   (실험 결과 활성 파티션을 먼저 만들고 동적 디스크로 변환한 경우 설치가 되었습니다.)
4. 윈도우는 확장 파티션(논리 드라이브)에 설치가 가능하나 반드시 1,2번 요건을 충족해야 한다.


따라서 하드디스크에 윈도우가 설치되지 않는 상황이라면 위 4가지 항목을 살펴보시기 바랍니다. 그리고 다시 말씀드리지만 특별한 이유가 없다면 파티션은 웬만하면 주 파티션으로 생성하시기 바랍니다.