1
Grub4dos의 이해 - grub.exe grldr grldr.mbr menu.lst

 윈도우 2000, 윈도우 XP, 윈도우 서버 2003 을 부팅하는 윈도우 형식의 부팅 항목에 대해서 알아보았습니다. 이제 이 외의 도스나 윈도우 98 과 같은 이전 9x 커널의 윈도우(도스)들과 GRUB4DOS 라는 부트 매니저를 읽을 수 있는 부팅 섹터 형식의 부팅 항목에 대해서 알아보도록 하죠.

참고로 미리 한 가지 말을 하자면 윈도우 비스타나 윈도우 7 과 같은 6.x 버전 대의 7 계열 윈도우들을 부팅시키는 BOOTMGR 부트 매니저를 NTLDR 부트 매니저가 지원을 하지 않지 않습니다. 즉, NTLDR 에서는 BOOTMGR 을 읽을 수 없다는 것이죠. 하지만 BOOTMGR 부트 매니저는 NTLDR 부트 매니저를 읽을 수 있습니다. 이러한 연유로 XP 계열과 7 계열 윈도우들이 동시에 설치되어 있는 경우 멀티 부팅을 꾸미고자 한다면 BOOTMGR 부트 매니저가 주가 되어야 합니다. 이건 그 때 가서 좀 더 자세하게 이야기하도록 하죠.

 


부팅 섹터 형식 부팅 항목의 기본


C:\GRLDR="GRUB for DOS"


부팅 섹터 형식 부팅 항목은 위와 같은 매우 단순한 구조를 가지고 있습니다. 위의 GRUB4DOS 예제와 같이 그냥 윈도우 경로로 부팅 섹터 파일(또는 부트 로더)의 경로만 입력하고 부팅 메뉴 이름만 입력하면 됩니다.

이 때 중요한 점은 윈도우 형식 부팅 항목에서 사용되던 ARC 경로는 부팅 섹터 형식에서는 사용되지 않습니다. 뭐 더 설명드릴께 없네요.

 


DOS(도스) 또는 윈도우 9x 부팅 항목 추가하기

도스나 윈도우 9x 계열의 윈도우들은 멀티 부팅이란 것을 염두해두고 제작된 운영체제들이 아닙니다. 이들은 오직 자신만이 시스템에 설치되어 운영된다는 가정하에 개발된 운영체제들이죠. 그래서 다른 운영체제를 위한 배려나 부트 매니저 따위는 아예 없습니다.(부트 매니저란게 한 시스템 안에 존재하는 여러 종류의 운영체제들의 부팅을 관리하기 위한 건데 이들은 시스템에 오직 자기만 설치되어 있다고 가정하기 때문에 부트 매니저란 개념 자체가 없었지요.)

그렇기에 이들은 첫 번째 디스크의 활성 파티션에 설치되며 설치 당시 이들에 포함된 포맷 툴로 해당 파티션을 포맷할 때 부트 섹터에 자신들의 시스템 파일인 IO.SYS 파일을 찾도록 기록합니다. 이게 끝입니다. 멀티 부팅 따윈 안중에도 없죠.

하지만 다행이도 이렇게 도스나 윈도우 9x 를 부팅시키는 역할을 하는 부트 섹터를 파일로 저장할 수 있는 방법이 있고 이렇게 저장된 부팅 섹터 파일을 NTLDR 부트 매니저가 지원함으로써 도스나 윈도우 9x 와의 멀티 부팅도 가능합니다.

 

C:\Bootsect.dos="Microsoft Windows 98"


이러한 부팅 섹터 파일은 보통 bootsect.dos 나 bootsect.w95 와 같은 이름으로 저장하는 것이 보통입니다. 이 중에서도 특히나 윈도우 XP 를 설치하기 전 시스템에 먼저 도스나 윈도우 9x 가 설치되어 있었다면 XP 가 자동으로 부팅 섹터 파일을 생성하게 되는데 이 파일의 이름이 바로 bootsect.dos 파일입니다.

이렇게 윈도우 XP 설치 당시 XP 가 자동으로 생성하는 것 외에 윈도우 XP 가 이미 설치된 상태에서 나중에 도스나 윈도우 98 을 설치하였을 때 해당 부트 섹터를 파일로 저장하기 위한 툴들도 존재를 하고 있습니다. 가장 대표적인 툴이 WinImage 로 유명한 Gilles Vollant Software 의 BootPart 란 프로그램입니다.


http://www.winimage.com/bootpart.htm

 

소개해드린 BootPart 는 현재 도스나 윈도우 9.x 가 설치된 파티션의 부트 섹터를 직접 저장하는 것 외에도 미리 준비된 DOS 형식(MS-DOS 6.22) 또는 Win95 형식(윈도우 9x)으로 부팅 섹터 파일을 생성하는 것이 가능하여 매우 유용하죠.


그러나 지금에 와서 하는 말이지만 이와 같은 부팅 섹터 파일을 통해 윈도우 XP 와 도스의(윈도우 9x) 멀티 부팅을 꾸미는 것은 제한 사항도 많고 실제로 작업하려고 보면 손도 많이 가는 작업인지라 잘 사용되지 않고 있습니다. 더더군다나 사실 윈도우 9x 는 더이상 사용되지 않는다고 보는 것이 옳고 아주 가끔 드믈게 사용되는 도스의 경우에도 요즘은 디스크에 직접 도스를 설치하지 않고 플로피 이미지화하여 해당 이미지를 통해 가상으로 부팅하는 것이 주류를 이루고 있는 실정입니다.

만약 도스를 디스크에 설치했다 하더라도 GRUB4DOS 부트 매니저를 통해 부팅 섹터 파일 없이 다이렉트로 IO.SYS 를 구동시킬 수 있기도 합니다.(이러면 반드시 주 파티션에 설치되어야 하거나 시스템 전송 기능을 통해 설치되지 않아도 된다는 강점이 있습니다.)

이러한 연유로 이것에 대해서는 따로 알아보지는 않도록 하겠습니다. 언젠가 짬이 날 때 심심풀이 땅콩으로... 다뤄 볼까요?

 


GRUB4DOS 부팅 항목 추가하기

매우 강력한 기능으로 많은 이들에게 사랑받는 부트 매니저인 GRUB4DOS 는 다음의 네 가지 파일로 이루어져 있습니다.


GRUB.EXE - 도스용 실행 파일형 로더
GRLDR - 부트 로더
GRLDR.MBR - 마스터 부트 트랙 파일
MENU.LST - 부팅 환경 설정 파일

 

GRUB.EXE 는 도스에서 바로 실행할 수 있는 실행형 로더로 도스에서 바로 GRUB4DOS 부트 매니저를 실행하는 역할을 하며 그 자체로 로더의 기능을 가지고 있습니다.

GRLDR 은 GRUB4DOS 의 부트 로더로써 GRUB4DOS 가 MBR 이나 부트 섹터에 설치된 경우 찾게 되는 로더 파일 입니다. 또한 NTLDR 이나 BOOTMGR 과 같은 윈도우의 부트 매니저에서 지원하는 부팅 섹터 형식의 부팅 항목에서 바로 불러올 수도 있습니다.

GRLDR.MBR 은 GRUB4DOS 가 MBR 에 설치될 때 마스터 부트 트랙에 기록되는 내용을 파일 형태로 빼낸 것으로 주요 기능은 로더인 GRLDR 을 찾는 것입니다.

MENU.LST 는 GRUB4DOS 의 환경 설정 파일로써 NTLDR 에서 BOOT.INI 와 동일한 역할을 하는 파일이라고 생각하시면 됩니다.


NTLDR 부트 매니저에서 GRUB4DOS 를 불러올 때는 실행형 로더인 GRUB.EXE 은 필요가 없고 GRLDR + MENU.LST 가 사용되며 여기에 더해 GRLDR.MBR 까지 함께 포함하여 사용하기도 합니다. NTLDR 에서 GRUB4DOS 를 불러오는 방법은 매우 간단합니다. 부팅 섹터 형식 부팅 항목으로 GRLDR 이나 GRLDR.MBR 파일을 불러오기만 하면 됩니다.


C:\GRLDR="GRUB for DOS"

 

C:\GRLDR.MBR="GRUB for DOS"

 

간단하죠? 사실 이게 지금 다룰 게 아니라 나중에 GRUB4DOS 때 다룰 내용인지라 여기까지만 이야기하고 끝내도록 하겠습니다. 윈도우 XP 의 부팅에 대해 따라오시느라 수고 많으셨습니다. 그럼 다음 글 부터는 윈도우 7 과 BOOTMGR 로 찾아 뵙도록 하죠. ^^

이 게시물을

댓글'1'

이 댓글을

공유하기

번호
분류
제목
조회 수

SEARCH