소프트웨어 grub으로 UEFI legacy에서 사용할 수 있는 멀티 부트 USB 만들기
2017.02.17 14:35
오늘은 USB에 grub을 설치하는 것을 말하려합니다.
grub4dos도 좋은 부트로더이지만 아시다시피 UEFI 시스템에서는
사용 할 수가 없습니다.
UEFI 시스템에서 USB 혹은 하드디스크로 멀티부트를 하기 위해서는
grub을 설치하면 됩니다.
리눅스가 설치된 머신에서 작업을 하면 좀 더 수월하겠지만
grub을 usb에 설치하기 위해 리눅스를 설치하실 필요는 없습니다.
vm에서 리눅스를 라이브로 부팅하여 USB에 설치하는식으로
말씀드리겠습니다.
키보드만 잡으면이라는 말이 어울리는 컴을 겨우 키고 끄는
저의 친구녀석도 이방법으로 만들었으니 윈포에 계시는 분들이라면
어려운건 없으리라 생각합니다.
준비물은 vm과 리눅스 배포판 이미지 중 64비트로 빌드된 이미지가 필요합니다.
어떤 배포판이든 상관이 없지만 사용자 친화적이라는 우분투 민트 같은
데비안 후손들을 기준으로 설명하겠습니다.
기존에 vm에 윈도우가 설치 되어 있든 상관이 없으나 하드디스크와 파티션 구성이
어떨지 모르니 새로운 머신을 하나 만드십시오.
굳이 UEFI 모드로 만들지 않아도 됩니다.
준비된 USB를 윈도우에서 포맷을 하셔도 되고 기존의 사용하는 USB 파일시스템이 fat32라면
그냥 그것을 쓰셔도 되겠습니다, 혹 모르니 백업을 해 놓으시길 바랍니다.
USB는 파티션을 나눠서 사용 할 수도 있지만, 일부 iso이미지들은 ntfs에서 부팅시 멈춰버리는
경우가 있습니다. fedora가 그렇습니다. 권장은 fat32입니다.
여기서도 심플하게 설명하기 위해 단일파티션으로 사용하는걸 기준으로 말씀드립니다.
1. vm으로 리눅스 라이브 모드로 부팅합니다.
2. USB를 꽂고 vm에서 오른쪽 하단에 마우스를 가져가서 USB의 모델이름이 팝업 되는 곳에서
오른클릭하여 vm에 연결해 줍니다.
3.터미널을 실행합니다.
4.루트권한을 얻습니다.
sudo -i
5. vm의 연결된 물리적 장치를 확인해 보겠습니다.
lsblk
6. 새머신이라면 하드디스크가 sda
USB가 sdb로 잡혀 있는 것을 확인합니다.
7. UEFI 시스템에서 grub이 사용할 모듈을 설치할 grub-efi를 설치합니다.
apt-get install grub-efi
y/n 이 나오면 y를 선택하여 진행합니다.
8. 이제 USB를 마운트 합니다.
mount /dev/sdb1 /mnt
9. 윈도우에서 fat32로 포맷을 했거나 이미 사용중인 USB가 fat32인 것을 기준으로
설명하는것이니 여기서 포맷은 생략 합니다만
usb루트에 이미 boot폴더가 있으면 소문자로 boot인지 확인합니다.
BOOT 이거나 Boot로 되어 있으면 boot로 변경 하여 주십시오.
10. usb 루트에 boot 폴더가 있는 분들은 이과정은 생략합니다
없는 분들은 boot 폴더를 만들어 줍니다.
mkdir /mnt/boot
11.이제 grub을 설치합니다.
grub-install --target x86_64-efi --efi-directory=/mnt --boot-directory=/mnt/boot /dev/sdb --recheck
(실제 머신에서 작업 하시면 --recheck 뒤에 --removable 옵션을 사용하셔도 됩니다.)
노에러 메시지가 나오면 설치된 것입니다.
12.legacy에서도 사용 할 수 있도록 하기위한 모듈 설치를 하겠습니다.
grub-install --target=i386-pc --boot-directory=/mnt/boot /dev/sdb --recheck --force
13.실제 머신에서 작업 중이라면 grub.cfg를 생성해줍니다.
grub-mkconfig -o /mnt/boot/grub/grub.cfg
vm에서 작업 하시는 분들은 /cow 에러가 나오니 하실 필요가 없습니다.
14. USB의 UUID 값을 확인합니다.
blkid /dev/sdb1
마우스로 블럭을 설정한 후 오른클릭으로 copy합니다.
15. uuid값을 텍스트 파일에 저장하겠습니다.
nano /mnt/uuid.txt
nano가 실행되면 마우스를 가져가서 입력창에 오른클릭하여 paste해 줍니다.
그리고 ctrl+x를 누르고 y를 입력하고 저장합니다.
16.이제 마운트 되었던 usb를 마운트 해제합니다.
umount /mnt
16. 루트계정에서 로그아웃 합니다.
exit
17. 터미널을 종료하고 시스템도 종료합니다.
나머지 작업은 윈도우에서 하겠습니다.
18. 작업이 정상적으로 마쳐졌다면 USB루트에
boot폴더와 EFI폴더가 생성되어 있을겁니다.
그리고 boot/grub 폴더에 가보면 아래와 같은 구조로 되어 있을겁니다.
├── fonts
├── i386-pc
├── locale
└── x86_64-efi
19. 동봉된 grub.rar를 압축해제합니다.
거기서 grub.cfg 파일과 memdisk파일 그리고, grub.d , themes폴더를 USB의 boot\grub폴더에 복사합니다.
20. grub.cfg를 메모장으로 열기합니다.
편집 =>바꾸기를 선택해서 찾을 내용에 5678-5678 입력하고 바꿀내용에 uuid.txt에 적혀있는 xxxx-xxxx를 입력한 후
모두 바꾸기를 클릭합니다.
20.
부팅 후의 모습입니다.
루트에 iso폴더를 만들고 그안에 각각의 예를 들어 debian arch gentoo같은 폴더를 만들어서 거기에 iso파일을 넣으면 저런 식의 메뉴리스트가
나오게 됩니다. 혹 메뉴가 나오지 않는다면 \boot\grub\grub.d폴더 안에 있는 설정파일을 메모장으로 열어 iso파일 이름과 거기에 적혀있는
파일 이름이 같은지 그리고 대소문자를 비교하시고 수정할 부분이 있으면 수정하시면 되겠습니다.
아이콘이 나오지 않는 경우는 \boot\grub\themes\icons폴더에 png파일이 없기 때문에 안나옵니다.
인터넷어서 적당한 사이즈의 png파일을 구한 후 설정파일인 grub.cfg와 grub.d폴더에 있는 inc-xxxx.cfg를
열어서 menuentry 로 시작 되는 부분을 찾아서 --class 뒷부분에 파일이름만 써주면 됩니다. 역시 대소문자 구분하기 때문에
같게 써줘야 합니다.
예를 들어 menuentry "Arch Linux Install 2016.01.01 x86_64" --class arch { 가 있다면
boot\grub\themes\icons에 들어갈 파일 이름도 Arch가 아닌 arch여야 합니다
debian art, gnome-look과 같은 곳에서 테마 파일은 쉽게 구할 수 있습니다.
직접 만들어도 됩니다. themes폴더에 있는 themes.txt파일을 열어서 참조하십시오.
위의 테마 역시 gnome look에서 구한 것입니다.
지금과 같은 방법 이외에 usb를 gpt파티션 테이블로 구성한 후 gdisk로 legacy부트를 위한 1mb 정도의 하이브리드 파티션과 EFI파티션을
만들어 구성하는 법 sgdisk를 이용하여 typecode를 입력하여 만드는 방법등 몇가지가 있지만 간단한 방법을 소개하였습니다.
관심이 가는 분들은 sgdisk나 gdisk를 이용하는 방법도 시도해보시길 바랍니다.
앞서도 말씀드렸지만 리눅스 이용자라면 grub복구 시에 사용하는 것이니 당연히
리눅스가 설치되지 않은 하드디스크에서도 그대로 적용 할 수 있습니다.
응용하기 나름입니다.
그럼 여기까지 말씀드리고 이만 마치겠습니다.
감사합니다.
첨언:
windows pe 같은 경우 memdisk를 이용해서 iso로 부트 할 수도 있지만 UEFI에서는 쓸 모도 없고 메모리에 부담이 가기때문에
USB루트에 풀어서 chainloader 하는 방식으로 grub.cfg를 설정하였으니 windowsPE는 풀어서 루트에 위치 시키면 되겠습니다.
댓글 [16]
-
보스제이 2017.02.17 14:52
-
이어도 2017.02.17 14:58
간결하고 내공 가득한 강좌 감사합니다
읽으면서 드는 생각이 키보드도 못 만지는 것 아닌가..... 그래도 노력해보겠습니다
-
cungice 2017.02.17 15:24
뽜*론님 수고 많으셨습니다. 감사합니다.
-
REFS 2017.02.17 15:29
수고하셨습니다
좋은강좌 감사합니다..^ ^
-
jun218zero 2017.02.17 15:40
수고 많으셨습니다
-
Playing 2017.02.17 15:48
뽜이론님 글 잘 봤습니다
신기하네요~ 풀어주신 내용을 충분히 이해했는지 의문이지만 굉장히 유용해보입니다
리눅스 유저분들이 많이 늘어나고
가상으로 윈도우즈를 활용하시는 사례나 와인을 활용하는 경우도 많지만
그냥 번갈아가면서 부팅해서 하드웨어를 온전히 활용할수 있는 것도 좋겠죠
저 XP 한창 쓸때(지금도) 우비~라고 있었는데요 ^^;;
이건 UEFI 없을때라서 많이 다른거 같고요
아무튼 상세하게 풀어주시고 비교할수 있는 다른 방안들도 알려주셔서 고맙습니다!!
-
一字폼 2017.02.17 16:51
오늘 올려주신 UEFI legacy에서 사용할 수 있는 멀티 부트 USB 만들기는
매우 유익한 내용이네요. 수고하셨습니다.
-
할배장 2017.02.17 17:43
수고하셨습니다.좋은강좌 감사합니다.
-
왕초보 2017.02.17 18:25
귀한 지식을 이렇게 나누어 주셔서 감사합니다...
불금입니다..즐거운 시간 되세요
추천하고 갑니다
-
대박포에버 2017.02.17 21:05
오늘도 하나 배우고 갑니다.
유용한 강좌 감사 합니다.^^ -
신신라면 2017.02.17 21:58
수고 많으셨어요.
좋은정보 감사합니다.
잘 보고 갑니다.
-
ehdwk 2017.02.18 03:10
잘 감상했습니다. -
H2O 2017.02.18 07:14
좋은 정보 감사합니다.
즐거운 주말 보내세요.
-
Waffen-SS 2017.02.18 09:50
좋은 정보 감사합니다.
-
크루또이 2017.02.18 10:49
좋은강의 감사합니다.
-
뻐덩 2017.02.21 16:22
먼저 감사드리고요
저도 한번 사용해 봤음 좋겠네요.
번호 | 제목 | 글쓴이 | 조회 | 추천 | 등록일 |
---|---|---|---|---|---|
[공지] | 사용기/설치기 이용안내 | gooddew | - | - | - |
4458 | 윈 도 우| suk님 [3월3일 통합] 카비레이크/ 라이젠/ NVMe SSD 초간단... [16] | 구씽 | 3243 | 7 | 03-04 |
4457 | 소프트웨어| GRUP2 USB 멀티부트 사용하여 보았습니다 [5] | 조촌 | 1613 | 4 | 03-02 |
4456 | 윈 도 우| 카비레이크/ 라이젠/ NVMe SSD 에 윈도7 사용자분들 [67] | suk | 5401 | 20 | 03-01 |
4455 | 윈 도 우| EasyDriver v7.17.130 광고없이 드라이버 설치하기 [15] | gooddew | 4097 | 5 | 02-27 |
4454 | 윈 도 우| Win_Pro_10_1607_64BIT_Korean(14393.726)-media버전 [26] | 태풍소녀 | 2995 | 7 | 02-27 |
4453 | 윈 도 우| 15042빌드는 관리자계정 + 앱 실행 가능하네요 [8] | suk | 1802 | 5 | 02-26 |
4452 | 소프트웨어| TbifdBM 재수정 [14] | sunshine | 960 | 11 | 02-26 |
4451 | 윈 도 우| (추가)HK Multi Boot PE 간단사용기 [3] | 편한사람 | 1191 | 4 | 02-26 |
4450 | 소프트웨어| 지인이 요청해서 제작한 윈도우 런처 프로그램 [29] | 굿듀님스토 | 2434 | 8 | 02-24 |
4449 | 윈 도 우| G4560 에 처음으로 Windows7을 설치해봤습니다 ! [23] | 촌꼬마 | 3989 | 5 | 02-23 |
4448 | 하드웨어| CD 방식이 되는 USB [4] | 뜻정 | 2621 | 1 | 02-21 |
4447 | 윈 도 우| LTSB에 엣지 + 기본 앱추가 테스트 [11] | suk | 2524 | 8 | 02-17 |
» | 소프트웨어| grub으로 UEFI legacy에서 사용할 수 있는 멀티 부트 USB ... [16] | 뽜이론 | 2029 | 9 | 02-17 |
4445 | 윈 도 우| Win_Pro_10_1607(14393.726) 주주앤님 [10] | 고감맨 | 2074 | 5 | 02-16 |
4444 | 윈 도 우| [테스트] LTSB에 Store 추가 [2] | suk | 1074 | 4 | 02-16 |
4443 | 윈 도 우| mini.xp에서 문제발견과 수정을 했습니다. [39] | 뽜이론 | 1228 | 9 | 02-14 |
4442 | 윈 도 우| 윈도 시각 효과 - 신세계군요 [23] | suk | 4327 | 8 | 02-14 |
4441 | 기 타| 복구iso를 만들어 봤어요. [140] | 뽜이론 | 3573 | 18 | 02-13 |
4440 | 윈 도 우| MS계정으로 가능한 인증 대수는 5대네요. [9] | benari | 3755 | 5 | 02-13 |
4439 | 소프트웨어| [2번째파일] 움직이는 바탕화면 - cpu 점유율이 낮네요 [10] | suk | 3019 | 5 | 02-13 |
멋지고 유용한 설명 감사 드립니다.
추천 꾸욱 ~* *