OT S / SOFTWARE UEFI 와 GPT 기반의 Windows Embedded 8.1 Industry 이미지백업및배포 이수경대리 MDS 테크놀로지 / sukyung@mdstec.com 새로운운영체제의등장과스토리지의빠른발전으로최근시스템은기존의 BIOS (Basic Input Output System) 기반이아닌 UEFI (Unified Extensible Firmware Interface) 기반의파티션구성이필요한경우가늘어나고있다. UEFI 는운영체제와플랫폼펌웨어간의인터페이스를정의하는사양이며기존에사용하던 BIOS 를대체하기위해만들어졌다. 일반적으로가장많이사용하고있는시스템은 BIOS / MBR(Master Boot Record) 이다. 이기반에서 Windows 를설치하고백업및배포하는방법은이미널리알려져있다. 파티션구성또한간단하기때문에배포가어렵지않다. 스토리지의용량이커지면서주목을받게된것이 UEFI / GPT (GUID Partition Table) 기반이다. EFI 영역이라는파티션이추가가되면서방법이이전과달라지지는않았을까하는생각에최근고객사의문의가많은부분이기도하다. 이에본기고에서는 Windows Embedded 8.1 Industry 64bit 한국어버전 OS 를사용해 BIOS 기반의 MBR 파티션과 UEFI 기반의 GPT 파티션에서각각 OS 를설치하고백업및배포하는과정에대해기술하려한다. 필요한사항은 Windows Embedded 8.1 Industry 설치 USB ( 혹은설치 CD/DVD) 와 WinPE (Windows Pre-installation Environment, Windows 사전설치환경 ) USB 이다. MDS 테크놀로지홈페이지 : www.mdstec.com 윈도우임베디드솔루션 : www.embedsolution.com 윈도우임베디드개발자커뮤니티 : www.iwecom.co.kr 30 Embedded World OS_10.indd 30 14. 9. 24. 오후 12:40
UEFI 와 GPT 기반의 Windows Embedded 8.1 Industry 이미지백업및배포 생성된 WinPE 5.0 USB 는 [ 그림 3] 과같이구성되어있으며이전버 전 (WinPE 4.0) 과는다른구성이다. 그림 1. Windows Embedded 8.1 Industry Windows 8 기반의운영체제를백업및배포하기위해서는 WinPE 5.0 버전이필요하며이는 Windows 8.1용 ADK (Assessment and Deployment Kit, 평가및배포키트 ) 를통해생성할수있다. ADK는 http://www.microsoft.com/ko-kr/download/details. aspx?id=39982 에서언어별로선택하여다운받을수있다. 그림 3. 좌 : WinPE 5.0 / 우 : WinPE 4.0 WinPE의버전별차이는 http://msdn.microsoft.com/ko-kr/library/ dn293271.aspx 에서확인할수있으며, 버전별배포가능한운영체제를확인후사용해야한다. WinPE 5.x에서배포가능한운영체제는 windows 8/8.1, Windows Server 2012 R2/2012, Windows 7, Windows Server 2008 R2 이다. 참고로, 현재최신버전은 5.1이며, 이버전이필요한경우 WinPE 5.0을업데이트하여생성한다. Windows Embedded 8.1 Industry와 WinPE 각각의설치미디어가준비되었다면지금부터 BIOS 기반의 MBR(Master Boot Record) 파티션과 UEFI 기반의 GPT(GUID Partition Table) 파티션에서의운영체제설치, 백업및배포과정을알아보자. 그림 2. Windows ADK ADK를설치하면 [ 그림 2] 의경로에몇가지메뉴가생성이되며, 그중배포및이미징도구환경메뉴를사용해 WinPE 5.0을생성할수있다. 해당메뉴를관리자권한으로실행하여아래명령어를입력한후 C:\WinPE_and64 경로에 WinPE를생성하고, WinPE 5.0 USB를만든다. BIOS 기반의 MBR 파티션 BIOS / MBR ((Master Boot Record) 파티션구성은우리가일반적으로설치하는경우이며, Windows Embedded 8.1 Industry 설치 USB로부팅해서별도의설정없이진행이가능하다. 기본파티션은 System Reserved 영역과 Windows 영역으로구성되지만여기서는편의상시스템영역을제외한 Windows 영역으로만구성하여진행한다. copype amd64 C:\WinPE_amd64 // 64bit 용 WinPE 생성 MakeWinPEMedia /UFD C:\WinPE_amd64 x: // x: USB 드라이브명 그림 4. MBR 파티션구조 www.embeddedworld.co.kr 31 OS_10.indd 31 14. 9. 24. 오후 12:40
O S / SOFTWARE OS 설치를완료하고, 드라이버및필요한소프트웨어를설치하여 Windows Embedded 8.1 Industry 최종이미지를만든다. 이렇게만들어진 OS 이미지를다른타겟장비에배포를하기위해현재상태를백업하는단계를먼저진행하며모든단계는 WinPE를이용한다. 우선시스템을종료하고 WinPE USB를꽂고, USB로부팅을한다. 위와같이파티션을구성한다음, WinPE USB에백업해둔 Windows.wim을타겟장비의 C 드라이브에배포를진행한다. 이때사용하는 DISM 옵션은 apply-image 이다. dism/apply-image/imagefile:x:\windows.wim/index:1/ applydir:c:\ // x: USB 드라이브명 이미지적용과정이완료되면 USB 를제거하고재부팅한다. 그림 5. WinPE 부팅화면 Windows 7 기반의 OS에서는백업및배포시 imagex.exe 툴을이용했지만, Windows 8 기반의 OS 부터는 DISM (Deployment Image Servicing and Management tool) 명령어를사용한다. DISM 명령어의 capture-image 옵션을사용하여 Windows 영역을 Windows.wim 이라는파일명으로 USB에백업한다. dism /capture-image /imagefile:x:\windows.wim /capturedir:c:\ /name:drive-c // x: USB 드라이브명이렇게백업한 Windows.wim 파일을다른타겟장비에배포하기위해, WinPE USB를배포할타겟장비에꽂고 WinPE로부팅을한후타겟장비의스토리지에파티션을구성한다. select disk 0 // disk 0이타겟장비의스토리지 clean create partition primary select partition 1 active format fs=ntfs quick assign letter=c exit 그림 6. BIOS / MBR 파티션으로설치한 OS OS가부팅되면서개인설정단계인 OOBE 모드로진입하면서 BIOS / MBR 기반에서의 OS 배포가완료된다. 이렇게 BIOS / MBR 기반에서의설치, 백업및배포는어렵지않게진행할수있다. UEFI 기반의 GPT 파티션 GPT(GUID Partition Table) 는기존의 BIOS가아닌 EFI 기반에서사용하는디스크형식이며, MBR (Master Boot Record) 과마찬가지로디스크에대한정보를담고있는영역이다. MBR에서의 Windows 최대볼륨크기는 2TB이며파티션은 4개까지구성할수있다. 구성해야하는볼륨이 2TB 이상이고파티션을 5개이상 ( 최대 128 개 ) 으로설정해야한다면 GPT를사용한다. BIOS 기반에서는 GPT 디스크사용이불가능하며반드시 UEFI 시스템에서만 GPT 구성이가능하다. Windows는 64bit OS에서 GPT를지원하고있으며이글에서는 Windows Embedded 8.1 Industry 64bit 버전을사용한다. 기본파티션구조가 UEFI / MBR과는다르므로자세히살펴보도록하자. 32 Embedded World OS_10.indd 32 14. 9. 24. 오후 12:40
UEFI 와 GPT 기반의 Windows Embedded 8.1 Industry 이미지백업및배포 UEFI / GPT 드라이브파티션은 [ 그림 7] 처럼 ESP(EFI), MSR 그리고 Windows 영역으로구성된다. 이때, Shift+F10 을눌러커맨드창을띄운후 명령어를 실행하여스토리지를 GPT 파티션으로변경하는작업을진행한다. 그림 7. GPT 파티션구조 각각에대한설명을아래표에서확인해보자. 표 1. GPT 파티션 EFI 영역 (ESP) 은편의상드라이브문자를 S로주고, Windows는드라이브문자를 C로준다. Windows 설치시부팅에필요한 EFI가 MSR보다우선하므로디스크공간이부족하다면 MSR은생략해도무방하다. UEFI / GPT 의기본파티션에유의하여 Windows Embedded 8.1 Industry 설치를진행한다. 타겟시스템은 UEFI가지원되어야하며, BIOS에서부트디바이스선택시 (Boot option) 반드시앞에 UEFI 키워드가붙은것을선택해야한다. UEFI Windows Embedded 8.1 Industry 설치 USB를선택하여부팅을하면 [ 그림 8] 과같이설치가진행된다. 그림 9. GPT 디스크로변환그리고아래와같이 EFI, MSR 그리고 Windows 파티션을생성한다. Create Partition EFI Size=100 format quick fs=fat32 Assign Letter=s Create Partition MSR Size=128 Create Partition Primary format fs=ntfs quick Assign Letter=C 파티션생성후 Windows 설치단계를계속진행하여 Windows 파 티션에 OS 를설치한다. 그림 8. 설치과정 그림 10. UEFI / GPT 파티션생성 www.embeddedworld.co.kr 33 OS_10.indd 33 14. 9. 24. 오후 12:40
O S / SOFTWARE 만약 EFI Shell로부팅이되었다면, Windows Embedded 8.1 Industry 설치파일의 \efi\boot\bootx64.efi를이용한다. Shell> Fs0: // 설치 DVD를이용하고, DVD 장치가 fs0 인경우 Fs0:> \efi\boot\bootx64.efi EFI 부팅관리자가설치미디어에서의부팅을지원하는경우위과정은필요없다. 이렇게설치가완료된 OS에서디스크관리메뉴를통해디스크파티션을확인한다. 우선 WinPE USB를이용해백업을진행한다. 이때 EFI 영역에드라이브문자 S를할당한후 efisys.wim, Windows 영역은 Windows. wim으로백업파일을각각생성한다. select disk 0 // Disk 0: list volume //EFI의볼륨명확인 select volume 1 // EFI의볼륨 num 1 assign letter=s // EFI 볼륨명을 S로설정 exit dism /capture-image /imagefile:x:\efisys.wim /capturedir:s:\ / name:drive-s // x: USB 드라이브명, EFI 영역을 efisys.wim 으로캡처 dism /capture-image /imagefile:x:\windows.wim /capturedir:c:\ /name:drive-c //// x: USB 드라이브명, Windows 영역을 Windows.wim 으로캡처 그림 11. UEFI / GPT 파티션확인 - 디스크관리생성한 EFI, MSR 그리고 Windows 영역을모두확인하려면명령프롬프트를관리자권한으로열어 명령어를통해볼수있다. select disk 0 list partition 설치가완료된 OS에드라이브및사용하는소프트웨어를설치하여 OS 구성을완료한다. 완료된 OS를이전과동일하게 Dism을이용하여 OS를백업하고, 다른타겟장비에배포를한다. 위과정을거쳐 WinPE USB에는 EFI의백업파일인 efisys.wim 파일과 Windows의백업파일인 Windows.wim 이아래와같이생성된다. 이렇게만들어진백업파일을이용해다른타겟장비에도 UEFI / GPT 형태의 OS를배포해보자. 그림 12. 백업파일생성이때반드시배포할타겟장비의스토리지는원본과동일하게구성되어야한다. 먼저타겟장비를 WinPE USB로부팅하여 명령어를사용해 EFI, MSR, Windows 파티션을생성한다. select disk 0 // 배포할스토리지가 Disk 0 clean 34 Embedded World OS_10.indd 34 14. 9. 24. 오후 12:40
UEFI 와 GPT 기반의 Windows Embedded 8.1 Industry 이미지백업및배포 convert gpt // GPT 파티션으로변경 Create Partition EFI Size=100 format quick fs=fat32 Assign Letter=s Create Partition MSR Size=128 Create Partition Primary format fs=ntfs quick Assign Letter=C Exit UEFI의 Windows Boot Manager를확인하면다음과같다. (bcdedit 실행 ) Windows Boot Manager -------------------- identifier {bootmgr} device partition=\device\harddiskvolume1 path \EFI\Microsoft\Boot\bootmgfw.efi description Windows Boot Manager 파티션구성이완료되면백업한 efisys.wim 과 Windows.wim 을 각각의파티션에배포한다. 여기까지진행하고 exit 및 USB 를제거후 Windows 가정상적 으로부팅되는것을확인할수있다. dism/apply-image/imagefile:x:\efisys.wim/index:1/ applydir:s:\ dism/apply-image/imagefile:x:\windows.wim/index:1/ applydir:c:\ 배포후에는반드시올바른장치파티션을가리키도록 BCD 부트정보를넣어준다. bcdboot c:\windows 이는부팅에필요한부트로더를생성해줌으로써 C:\Windows 폴더의 BCD 파일을사용해시스템파티션을초기화한다. 경우에따라서는 BCD 부팅관리자및메모리테스트설정업데이트및 windows 로더업데이트가필요할수있다. bcdedit /set {bootmgr} device partition=s: bcdedit /set {memdiag} device partition=s: // S: EFI bcdedit /set {default} device partition=c: bcdedit /set {default} osdevice partition=c: // C: Windows 그림 13. UEFI / GPT 파티션으로설치한 OS UEFI / GPT 파티션의배포시, EFI 영역에대해백업및배포하는과정은생략해도무방하다. 그러나반드시파티션은동일하게구성되어야하며, BCD 부트정보도입력해야한다. 지금까지 BIOS / MBR 및 UEFI / GPT 파티션에서의 Windows Embedded 8.1 Industry 64bit OS를설치하고 WinPE를이용한백업및배포과정을살펴보았다. 스토리지의용량이커지고용도가다양해지면서운영체제와인터페이스간에도 UEFI / GPT 라는변화가생겼다. 이렇게변화하는하드웨어에맞춰마이크로소프트는새로운기능을하는명령어와관련옵션및툴을제공하여사용자들이조금이라도더편하게백업하고배포를할수있도록제공하고있다. 실제사용하고있는시스템의파티션구성이이보다복잡하다하더라도기본맥락은동일하니적용시본기고가도움이되길바란다. www.embeddedworld.co.kr 35 OS_10.indd 35 14. 9. 24. 오후 12:40