윈 도 우 UEFI-모드 부팅 [설치 USB] 만들기
2011.09.07 23:48
UEFI 메인보드 사용자에게만 해당되는 글입니다.
USB를 이용해서 GPT 디스크에 OS를 설치하려면
UEFI 모드 USB로 부팅해야 되는데 일반적으로 만든 설치 USB로는 UEFI 모드로 부팅이 되지 않습니다.
(UEFI 모드로 부팅해야지만 GPT 디스크에 Windows 7을 설치할 수 있습니다. x64 버전만 가능합니다.)
1. 일반적인 설치 USB를 만들되 FAT32로 포멧하여 만듭니다.
2. USB 루트에 있는 efi 폴더에 boot 폴더를 만들고 첨부한 BOOTX64.EFI 파일을 넣어 둡니다.( efi\boot\BOOTX64.EFI)
이제 UEFI 모드로 부팅할 수 있습니다. BOOTX64.EFI 파일은 WAIK안의 Tools\PETools\amd64\efi\boot\BOOTX64.EFI 에서 가져왔습니다.
* UEFI 모드 부팅 PE용 USB 만들기
위 설치 USB에서 boot.sdi 파일과 efi 폴더를 가져 옵니다.
필요한 파일들.
1. boot\boot.sdi
2. 위에서 사용한 efi 폴더 전체
3. sources\boot.wim (PE 파일)
bcd를 수정할 수 있으면 efi\microsoft\boot\bcd 를 수정하여 boot.sdi 경로나 boot.wim 이름을 수정하여 사용하면 됩니다.
-----------------------------------------------------------------------------------------------------------------
<추가합니다.(09.16)>
Windows 8 Developer Preview 파일을 다운받아 USB에 넣으려니
install.wim 파일이 4GB가 넘어서 FAT32로 포멧된 파티션엔 복사되지 않는 현상이 있습니다.
(FAT32 에서 한 파티션의 최대크기는 32GB이고 하나의 파일의 최대 크기는 4GB 입니다.)
이럴경우 ImageX.exe 의 /split 옵션으로 install.wim 을 나누고 나누어진 install?.swm 파일들을 모두 sources 폴더 속에 넣어두면 정상적으로 설치가 됩니다.
bootx64.efi 파일이 Windows 7 용일경우 Windows 8 의 winload.efi 파일을 로드하지 못하는 현상이 있습니다.
Windows 8 용 bootx64.efi 파일은 Windows 8 설치 이미지에서 boot.wim 이나 install.wim 파일을 마운트해서
Windows\Boot\EFI\bootmgfw.efi 파일을 가져온다음 bootx64.efi 이름을 변경한 뒤 사용하면 됩니다.
(Windows 7 도 마찬가지 방식으로 사용할 수 있습니다. 이름만 틀릴뿐 동일한 파일입니다.)
참고로 위와 같이 USB를 만들어서 UEFI 모드로 부팅한다고 해도 Windows 8은 제품키를 모르면 설치할 수가 없습니다.^^
어쩔수 없이 install.wim 분할 파일은 Windows 7 이미지로 테스트했고
Windows 8 은 ImageX.exe의 /apply 옵션으로 이미지를 풀어준 다음 bcdboot.exe로 부팅등록을 해서 설치했습니다.
그리고 UEFI 의 부팅관리자는 bootmgfw.efi == bootx64.efi 파일이네요. bootmgr.efi 는 CD에서만 사용되는 부팅관리자인 것 같습니다.
댓글 [8]
-
푸르먼 2011.09.09 21:35
-
eunnano 2011.09.09 22:11 오류 메세지가 떳다는 것은 '부팅 관리자'는 잘 인식된 것 같습니다.
오류 메세지를 보여 주는 것은 부팅 관리자의 역할입니다.
BIOS 모드에서는 Bootmgr 이 이러한 역할을 하고 UEFI 모드에서는 Bootmgr.efi 파일이 담당합니다.
그런데 DVD에서는 Bootmgr.efi 파일이 잘 인식이 되나 USB에서는 인식이 안되어서 BOOTX64.EFI 파일이 그 역할을 대신하는 겁니다.
어떠한 오류메세지 인지 모르겠으나 아마도 필요한 파일이 없어서 일거란 추측을 해봅니다. 트윅된 PE일 경우 용량을 줄이기 위해 부팅에 필요한 파일이 삭제되어 있을 수도 있습니다. (예를 들어, winload.efi)
x64용 순정 boot.wim파일을 사용해 보시기 바랍니다.
-
푸르먼 2011.09.10 13:11
POWER PE-110612_Win7_K_SP1_IE9_U_hotfix 110810_7in1_admin_$OEM$_27L 이걸 사용중인데..
fat32 포맷하고 울트라iso usb 설지부팅 만든후 이미지안에efi\boot\BOOTX64.EFI 이렇게 만들어 놓고..
부팅하면 부팅 로딩까지 하는데.. 중간에 오류가 납니다..
system32/winload.efi이 없다고.... 해결책 좀 알려주세요..
그럼..
-
eunnano 2011.09.11 10:11 위 이미지는 x86, x64 버전이 통합되어 있는 이미지이기 때문에 x86 boot.wim이 사용되어 있습니다. x64 boot.wim을 사용하면 x86 버전 윈도우를 설치할 수 없기 때문입니다.
boot.wim 파일은 일명 PE(Preinstall Environment - 사전 설치 환경) 라고도 하는데 MS에서 제공하는 최소화된 운영체제입니다. Windows 7 이 축소된 것( 여러가지 기능이 제거되어서)이라고 보시면 됩니다. 그렇기 때문에 x86, x64 버전이 구분되어 있습니다.
x64 버전만 UEFI 모드 부팅을 지원하는데 그 대표적인 파일이 Windows 부트 로더인 winload.efi 파일입니다. (BIOS 모드는 winload.exe 파일이 사용됩니다.) 마찬가지로 OS의 축소판인 boot.wim 안에도 x64 버전만 winload.efi 파일이 있습니다.
부팅 관리자(bootmgr.efi)가 램디스크를 만들고 boot.wim 파일을 램디스크에 풀어준 후 winload.efi 파일을 찾아서 로드시킨후 부팅 제어권을 넘기는 것입니다.
순정 x64 이미지를 사용하는게 가장 간단한 방법이겠지만 위 이미지를 사용하려면 두가지 파일을 x64 버전으로 교체해줘야 합니다. USB 루트에 있는 sources 폴더 안의 boot.wim 파일과 setup.exe 파일을 x64 버전으로 교체해서 사용하면 됩니다.
부팅 후 설치할 OS 선택시 x64 버전을 선택하셔야 됩니다.
-
뿌아악 2011.09.14 21:30
초보가..정말 몰라서 질문하나 하겠습니다..
UEFI 부팅 usb나 dvd를 만들어서 설치해야하는이유가 궁금합니다..
기존 usb로 만들어서 하면되는데...어렵게 저런식으로 해야하는이유가 정말 궁금해서요....
혹시 2TB이상 하드때문인가요?
-
eunnano 2011.09.15 17:37 GPT 디스크에 Windows 를 설치해본 것은 단순한 호기심 때문입니다. (2TB이상 하드디스크는 가지고 있지않습니다..)
그리고 MS에서도 적극 권장하고 있기 때문이기도 합니다.
생각없이 설치해 사용하고 있다가 질문에 대답하기 위해 검색해 봤습니다.
https://msdn.microsoft.com/en-us/windows/hardware/gg463149.aspx (영문)?
위 링크에 가보시면 문서 하나를 다운받을 수 있는데 UEFI 와 BIOS를 비교해서 설명을 잘해 놓은 것 같습니다.
문서 중간쯤에 이런 말이 나오네요.
"Note: 32-bit versions of Windows do not support UEFI features. Only 64-bit versions of Windows can take advantage of the features enabled by 64-bit UEFI firmware." ??
- 참고: 32-bit Windows는 UEFI 기능을 지원하지 않습니다. 64-bit Windows만 64-bit UEFI 펌웨어에 의해 활성화된 기능을 사용할 수 있습니다.
" Fortunately, current UEFI implementations include a Compatibility Support Module (CSM) that emulates BIOS support." ??
- 다행히 현재의 UEFI 구현은 BIOS 지원을 에뮬레이트하는 '호환성 지원 모듈(CSM)'을 포함합니다.
"The CSM enables 32-bit operating systems and other operating systems that do not support UEFI to boot on hardware that has UEFI firmware.??"
- CSM은 UEFI 모드 부팅을 지원하지 않는 32-bit 운영체제들과 그리고 다른 운영체제들을 사용할 수 있게합니다.
"However, operating systems that require a CSM to boot cannot use UEFI-specific features because the CSM emulates earlier BIOS??."
- 그러나 CSM은 이전의 BIOS를 에뮬레이트하기 때문에, 부팅에 CSM을 필요로하는 운영체제들은 특정한 UEFI 기능을 사용할 수 없습니다.
UEFI-specific features( UEFI 특정 기능)이 무엇인지가 관건인데요, 그전에 제가 이해한 수준의 개념부터 정리해 보겠습니다.
UEFI 나 전통적인 BIOS 모두 메인보드의 펌웨어 입니다.
부팅시 각 장치를 점검( POST)하고, 부팅관리자를 로드한 다음, 부팅관리자가 하드웨어(저장장치, 그래픽장치, 메모리등)에 접근할 수 있도록 acess key를 제공합니다.
그리고 Windows가 device drivers 를 로드하기 전까지 다른 시스템 구성요소를 로드할 수 있도록 합니다.
그런데 이 과정을 좀 더 구분을 짓자면 부팅관리자를 로드하기 전과 그 이후로 나눌수 있습니다. 제가 위에서 언급한 BIOS모드 부팅과 UEFI 모드 부팅은 부팅관리자를 로드하는 시점에서 부터 구별됩니다. 그 이전의 POST 과정은 양쪽 모두에게 공통된 사항이지만 부팅관리자에서 부터는 파일이 틀려집니다. 물론 UEFI 와 전통적인 BIOS의 중요한 차이점들은 이러한 구별 이전에 적용됩니다. 즉 UEFI 모드 부팅이든 CSM을 통한 BIOS모드 부팅이든 공통적으로 적용되는 사항입니다. 다음은 UEFI 시스템을 위한 주목할 만한 두가지 Windows 기능입니다. 위에 언급한 UEFI-specific features 란 이 두가지 기능을 말하는 것 같습니다. 그리고 제 생각에는 UEFI 모드 부팅에만 해당되는 기능 같습니다.
Multicast deployment - ??대기업이나 OEM에서 사용자 지정된 시스템 이미지를 배포할 때, 기존에는 유니캐스트 방식으로 중앙서버에서 전체이미지를 다운 받았는데 동시간대에 접속자가 몰리면 네트워크 트래픽이 발행할 수 있는 단점이 있는데 반해 멀티캐스트 방식은 이러한 단점이 없는 조금더 진보된 방식인 것 같습니다.
Fast boot and resume from hibernate?? - 디스크 I/O 속도는 컴퓨터를 부팅하거나 최대 절전모드 파일을 메모리에 로드하는 시간에 영향을 주는데 전통적인 BIOS는 저장장치 액세스에 Interrupt 13h(Int 13) 인터페이스를 사용하고 이 인터페이스는 한번에 읽을 수 있는 데이터 양이 64KB인 것에 반해, EFI block I/O protocols 은 한 번에 1MB의 데이터를 읽을 수 있어서 부팅과 최대 절전모드에서 깨어나는 시간을 향상 시킬수 있다고 합니다.
-
슈퍼맨 2012.06.19 19:35
꼭 fat32로 안해도 잘되던데요 윈도우8이미지 usb에다 입혀서하면....
-
bulk 2012.07.22 21:43 가끔이지만, 은나노님 닉으로 검색을 해봅니다. 주옥같은 글을 새로 만나볼 수 있을까 해서요.
관심사가 비슷하십니다. 다만, 언제부터인가 저는 시간투자를 못하고 있네요. 나이들어가니 점점 어려워지는 것 같습니다.
언젠가 Context menu에 대해 시간투자를 해본 일이 있습니다. 늘상 접해왔던 것이지만 새롭기도 하고 재밌기도 하더군요.
요즘 윈포에 PE들이 꽤 올라오는데요. 제작자분들이 은나노님 글을 좀 많이 보았으면 싶네요.
클래스 등록은 안된채로 확장자에 연결된 컨텍스트 메뉴만 덜렁 떠서 실행이 안되는 경우(이미지 뷰어), 포터블 프로그램인데 확장쉘 dll 파일을 누락하여 메뉴가 뜨지 않는 경우(WinRAR), 다른 것은 다 한글인데 영어 메뉴가 하나 섞여있는 경우(메모장) 등 몇몇 부분에서 손을 보지 못한 것이 눈에 띄더군요.
PE에서 제공하지 않을 기능이라면 확장자 연결을 해제하든가, 컨텍스트 메뉴 자체를 삭제해 버리든가, 아니면 클래스 등록을 해서 온전히 기능하게 하든가 해야 하는데 말이죠. 용량을 차지한다거나 어려운 일은 아닌데 세심함이 좀 부족한 경우가 있었습니다.
PE로서의 주요한 기능은 모두 훌륭하지만, 이러한 지엽적인 기능에서의 세심함은 선행적인 시간투자가 좀 있어야 하는 일이죠.
닉네임을 변경하신 것도 같은데, 다른 닉으로 새로 올리신 글을 못보고 있는거나 아닌지 모르겠습니다.
번호 | 제목 | 글쓴이 | 조회 | 추천 | 등록일 |
---|---|---|---|---|---|
[공지] | 강좌 작성간 참고해주세요 | gooddew | - | - | - |
msi -z68 g65 사용자 인데... 잘 안됩니다.. 부팅하면 오류가 뜨네요.. 뭐가 문제일까요