관리 메뉴

미닉스의 작은 이야기들

멀티 부팅 USB 만들기 완벽 가이드#1 본문

만능 USB 만들기

멀티 부팅 USB 만들기 완벽 가이드#1

미닉스 김인성 2009. 11. 26. 16:11

멀티 부팅 USB 만들기 완벽 가이드#1


USB로 할 수 있는 작업들

 

이 글은 USB 메모리로 부팅하는 방법에 대해서 쓰는 글입니다. 기본적으로는 제가 관리하는 메모리 설정에 대해 기록하기 위한 목적입니다. 메모리가 뻑 났을 때 관련 사이트 다시 뒤지러 가기 귀찮아서 적고 있다는 뜻입니다.

가장 시간이 적게 걸리고 유지 관리하기도 쉬우며 다양한 툴을 쓸 수 있는 방법에 대해 적고자 합니다. 내용은 변경되거나 추가될 수도 있고 잘못된 부분은 교정될 수도 있습니다. 혹시 USB 부팅에 대해 알고 싶으신 분은 차분히 따라오시면 되겠습니다. 생각날 때마다 조금씩 추가할 예정이기 때문에 시간은 좀 걸리겠지만……

 

다양한 입력 장치와 메모리: 플로피가 멸종한 이후로 수 많은 대체 보조 기억 장치가 부상했습니다. 최종적으로는 USB와 플래시 메모리로 정착되어 가고 있는 중입니다.

 

플로피 부팅이 대세이던 시기에 컴팩에서 시디롬 부팅에 대한 아이디어를 내 놓습니다. 시디롬 안에 플로피 이미지를 넣고 바이오스에서 가상 플로피로 에물레이션 하는 기능이었습니다. 이 기능 때문에 시디롬은 곧 플로피를 대체할 수 있을 것처럼 보였습니다. 플로피의 멸종이 눈 앞에 다가 왔던 것이지요.

그러나 여전히 마이크로소프트 윈도우 XP까지도 특별한 드라이버 파일을 플로피에서만 읽어 들였기 때문에 플로피를 없앨 수는 없었습니다. 저는 아직도 플로피 디스크 드라이버와 몇 장의 디스켓을 보존하고 있는데 그 주요한 용도는 메인보드 바이오스 업그레이드 실패 시 응급 복구 모드 때문입니다.

컴퓨터 메인보드는 바이오스 적재가 실패하면 롬에 저장된 복구 모드로 부팅합니다. 그 모드에서는 오로지 FAT으로 포맷된 플로피에서 지정된 파일명의 파일만 실행할 수 있는 기능이 있습니다. 그 파일은 플래시에 바이오스 파일을 쓰는 기능을 가진 프로그램입니다. 플로피에 그 파일과 롬을 넣고 부팅하여 롬라이팅에 성공하면 바이오스가 살아나 정상적으로 부팅할 수 있습니다.

요즘은 바이오스가 이중으로 되어 있어서 이런 일을 할 경우가 거의 없고 또 최신 바이오스는 USB에서 파일을 읽어 올 수 있기 때문에 플로피가 없어도 됩니다. 윈도우7(이후 W7)도 마찬가지 입니다. 그러나 저는 구형 하드웨어를 다룰 일이 늘 생기기 때문에 대비는 하고 있습니다.

시디롬이 플로피를 대체하지는 못했지만 나름 발전이 있었습니다. 다양한 플로피 이미지를 시디롬에 넣고 필요에 따라 다른 모드로 부팅하는 방법이 등장한 것입니다. 도스나 윈도우 PE 모드 혹은 리눅스로 부팅해서 각종 유틸리티를 실행할 수 있었습니다. 대표적인 프로그램이 Hiren's BootCD 인데 이 것만 있으면 하드디스크 이미지 덤프와 에러 체크, winPE 부팅 등 거의 모든 것을 할 수 있습니다.

사람들은 시디 굽는 것도 귀찮아져서 시디롬으로 할 수 있는 것들을 USB에서도 할 수 있기를 원했습니다. 그들은 결국 수 많은 방법을 찾아내고야 말았습니다. 이 글은 그 중에서 크게 고생하지 않고도 할 수 있는 것들만 생각해 봅니다. 하드코어적인 것들은 그들만의 사이트에서 가서 보시기 바라며 글 중에 그런 곳들에 대해서 알려드리도록 하겠습니다. 이 글에서 목표로 하고 있는 것들은 다음과 같습니다.

 

  1. W7 인스톨
  2. 윈도우 응급복구 모드 부팅
  3. 간이 윈도우 모드(WinPE) 부팅
  4. 리눅스 부팅
  5. Hiren's BootCD 부팅
  6. 도스모드 부팅
  7. 원래의 USB 메모리 기능인 데이터 저장소로 쓰기도 가능

 

기타 더 필요한 것들은 추가로 쓰면서 생각하기로 하겠습니다. 이론적인 부분이나 복잡한 원리에 대한 설명도 나중에 필요할 때 추가하기로 합니다. 우선 맛 뵈기로 가장 단순한 것부터 해 볼까요?

 

1.GRUB 인스톨

 

USB를 부팅시키기 위해서 grub를 사용합니다. USB를 부팅시킬 수 있는 수 많은 유틸리티가 있습니다. grub보다 더 편하고 쉬운 것들도 많습니다. 혹시 알고 있는 것이 있으면 그것을 써도 됩니다.

다만 grub은 가장 범용이고 설정이 쉽고 직관적이며 여러 프로그램들을 서로 독립적으로 다를 수 있게 해주며 부팅 과정에서 실시간 설정 변경도 가능하기 때문에 선택했습니다. 사용자도 많아서 인터넷에 각종 정보도 넘쳐납니다. 조금만 공부하면 가장 훌륭한 무기가 될 수 있습니다.

 

우선 grub을 구합니다. 구글링하면 간단히 다운 받을 수 있습니다. 검색어는 grub4dos 입니다. Grubinst 도 검색해서 다운 받아 같은 디렉토리에 넣습니다. 써보진 않았지만 wingrub도 다운 받아 써도 될 것입니다.

 

Grub 파일들

 

USB 포맷: USB 메모리를 꼽고 윈도우에서 포맷합니다. 전용 포맷 툴 같은 것은 필요 없습니다.

 

Grub 인스톨: 포맷이 끝나면 grubinst_gui.exe를 실행합니다. 비스타 이상에서는 관리자 모드로 실행해야 하며 Disk에서 USB 메모리를 찾아서 지정합니다. 그 외 옵션 부분은 건들지 않아도 되는데 더 알고 싶으면 grub 문서 파일을 읽어 보시기 바랍니다. Wingrub은 더 편리하게 할 수 있는 것으로 보이지만 복잡해서 여기서는 패스합니다. Install 버튼을 누르는 것으로 인스톨이 완료됩니다.

 

Grub은 USB 메모리 부팅 가능 영역에 들어가서 나머지 일을 할 수 있도록 준비하는 역할입니다. 부팅 영역에 들어가 있기 때문에 보이지 않습니다. 그래서 USB 메모리에 Grub을 인스톨해도 파일은 한 개도 보이지 않습니다. 나중을 위해서 grub4dos에 있는 grldr만 USB 메모리에 복사해 놓으시기를 권합니다.

Grub은 자체적으로 각종 운영체계의 파티션을 인식할 수 있어 파일명만으로도 필요한 파일을 로드할 수 있습니다. 이런 작업을 위해서 menu.lst라는 파일을 읽어 들이도록 설정되어 있습니다. 즉 Grub이 할 일을 menu.lst에 적어 주면 된다는 뜻입니다.

 

2.Menu.lst 설정

 

Grub의 메뉴 설정은 상당히 복잡합니다. 수 많은 경우의 수에 대비한 특별한 옵션이 많습니다. 자세한 것은 grub 설명서를 읽으시기를 바라며 이 글에서는 아무것도 설명해드리지 않습니다. 다만 꼭 필요한 설정을 하는 법만을 보여드립니다. 조언을 드리자면 한 번도 읽지 않고 남이 하라는 대로 하면 결코 훌륭해질 수 없습니다. 설명서를 한 번은 읽어보시기를 권하지만 바쁘시다면 전혀 그러시지 않아도 됩니다. 제가 보여드린 옵션을 정확하게 복사만 하셔도 조금도 불편함이 없기 때문입니다. 하지만……

 

Menu.lst: 전형적인 메뉴 구성입니다. 복잡해 보이지만 사실 별 것 없습니다.

 

첫칸에 #가 있는 것은 무시됩니다. 설명이나 쓰지 않는 옵션은 이것으로 막아버릴 수 있습니다. Color, timeout, default 설정은 기본적인 옵션인데 있는 그대로 두셔도 됩니다. 한 개의 항목은 Title로 시작하여 다음 title 앞까지입니다.

 

title windows 7 X32 install

find --set-root /bootmgr

chainloader /bootmgr

boot

 

이 설정은 최근에 발표된 W7을 USB에 넣고 인스톨할 수 있는 설정입니다. W7 인스톨 법을 스스로 구성하기 위해서 고민할 필요는 없습니다. 이렇게 제가 적어드린 그대로 쓰시면 됩니다. 구글링을 하면 또 다른 경우에 맞는 설정을 구할 수 있습니다. 물론 상상하시는 일들이 엽기의 수준이라면 직접 문서를 뒤지고 고민을 해야 하지만 이 정도까지 간 분이 이 글을 읽고 있지는 않겠지요? 그래서 Menu.lst에 대한 설명은 이것이 끝입니다.

 

여기까지에 대해서 정리하면 "USB 메모리의 다중 부팅을 원한다면 grub과 grubinst를 구한다. 메모리를 포맷한다. Grubinst를 실행해 grub을 인스톨한다. Grldr을 메모리로 복사한다. Menu.lst 파일을 메모리로 복사한 다음 필요한 부분을 고친다"가 되겠습니다.

 

3.Windows 7 인스톨

 

위에서 예시로 보인 W7 인스톨을 USB에서 해보기로 하겠습니다. USB 메모리에 menu.lst를 만듭니다. 그 내용은 아래와 같습니다. 참고로 이 내용은 grub 오리지널 참고용 menu.lst의 비스타 부분을 W7에 맞게 고친 것입니다.

--------------------------------------------------------------------------

color blue/green yellow/red white/magenta white/magenta

timeout 30

default /default

 

title find and load BOOTMGR of windows 7

find --set-root /bootmgr

chainloader /bootmgr

boot

---------------------------------------------------------------------------

우선 W7 cd나 이미지 파일을 구합니다. 물론 알아서 구하셔야 합니다. 저는 토런트로 구했습니다. 이미지라면 윈집 파일이나 데몬등 내용을 읽을 수 있는 프로그램으로 USB 메모리에 모두 복사합니다. 시디라면 시디롬에 넣고 내용을 모두 복사하면 되겠지요. Ultraiso등 전용 프로그램은 역시 전혀 필요 없습니다.

 

이것으로 끝입니다. 정리하자면 1. Grub 인스톨, 2. menu.lst 설정, 3. 필요 파일 복사 이렇게 됩니다. 이 세가지 일은 서로 완전히 독립적이어서 USB 메모리가 부팅이 안되면 grub만을 다시 인스톨 하면 됩니다. 또 다른 이미지를 부팅하게 하거나 제거하려면 menu.lst를 편집하면 됩니다. 마찬가지로 원하는 부팅용 이미지를 복사하거나 삭제해도 다른 부팅 과정에 영향을 미치지 않습니다.

W7 부팅 과정이 필요 없으면 원본 시디 이미지를 참조하여 같은 디렉토리와 파일을 USB 메모리에서 삭제하면 됩니다. 나중에 여러 가지 다른 부팅 옵션을 쓰게 되면 USB 메모리가 복잡해지는데 하나도 복잡하게 생각할 필요가 없다는 말입니다.

 

4.부팅 설정

 

요즘 컴퓨터는 당연히 USB 부팅을 지원합니다. 노트북도 마찬가지입니다. 그러나 특이한 경우에 USB 부팅에 애로를 겪을 수 있습니다. 다양한 경우에 대해서 대응을 할 수 없어 가장 기본적인 사항만 보여드립니다.

바이오스에서 USB에 대한 부분은 당연히 활성화되어 있고 대용량 저장 장치 인식도 가능하게 되어 있습니다. 또한 부팅 항목에도 들어 있습니다. 이 당연한 부분이 문제라면 바이오스에서 해당 항목이 잘못 설정되어 있어서 그럴 것입니다. 혹시 USB 부팅에 문제가 있다면 바이오스를 뒤져 보시기 바랍니다.

 

부팅 순서 바꾸기: 바이오스에서 알려주는 버튼을 눌러서 이 메뉴를 부릅니다. 보통 F8~F12 사이 입니다. F2인 경우도 있습니다. USB hdd 항목에 Generic STORAGE DEVICE로 잡혀 있습니다. 선택하고 넘어 갑니다.

 

GRUB 화면: 유치 찬란한 색감의 초기 화면입니다. 화살표로 항목간 이동도 가능하고 E 버튼으로 편집도 가능합니다. 지금은 그냥 엔터만 치면 됩니다.

 

윈도우7 인스톨 화면: 드디어 W7 인스톨 초기 화면이 나왔습니다. 이렇게 간단히 USB에서 W7을 인스톨 할 수 있게 되었습니다.

 

한 번 더 정리하겠습니다. USB 메모리에 grub을 인스톨합니다. W7 시디의 파일을 모두 USB 메모리에 복사한 후에 menu.lst에 해당 항목을 편집합니다. 끝.

어떠신가요? 참 간단하지 않나요? 이렇게 될 수 있기까지 수 많은 삽질과 닭질이 있었습니다. 그러나 이제 그런 노가다는 끝났습니다. 누구나 쉽게 설정해서 쓸 수 있는 세상이 온 것입니다. 물론 조금만 깊게 들어가면 또 다른 복잡함의 세계가 기다리고 있지만 그 것은 나중 일입니다. 어쩌면 이 글도 결국 거기까지 가게 될지도 모르겠네요. 다만 오늘은 이 단순한 아름다움을 즐기기로 합시다.

김인성.

26 Comments
댓글쓰기 폼