컴퓨터/기타

oscdimg로 부팅 가능한 디스크 이미지 ISO 작성 (BIOS, UEFI 사용 가능)

k1asd1 2021. 4. 2. 18:08
728x90
반응형

'oscdimg' 참 오랜만에 사용해봅니다. 2005년? 2006년? 정도에 Windows XP WOW 버전을 만들어 본다고 여기저기 찾아가며 공부하며 사용하였었는데 버전별로 OS를 가져다 놓으니 몇 기가 ~ 몇십 기가씩 하던 파일들을 oscdimg 파일을 통해 명령어를 넣고 ISO 파일로 만들면 상당히 작은 용량으로 만들어졌던 기억이 납니다.

 

어렸던 저 당시에 이해했기로 'oscdimg' 프로그램의 명령어 하나가 중복되는 파일들의 속은 지우고 껍데기만 남겨놓아 하나의 파일에 연결하여 용량을 줄여준다고 이해했었는데 그게 아니라 중복 파일을 한 번만 인코딩해 용량을 최적화 하는게 핵심이었습니다. (지금 생각해보면 그 당시에 이해했던 게 더 불가능해 보입니다.)

 

 

* oscdimg 명령어 설명 (위 내용은 문서 중 'Optimization Options' 참조)

https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/oscdimg-command-line-options

 

Oscdimg Command-Line Options

Oscdimg Command-Line Options In this article --> Oscdimg is a command-line tool that you can use to create an image (.iso) file of a customized 32-bit or 64-bit version of Windows Preinstallation Environment (Windows PE). You can then burn the .iso file t

docs.microsoft.com

 

이 프로그램으로 상당히 많은곳에 활용할 수 있는 걸로 기억하나 당시에는 Windows WOW 버전 작성, CAD WOW 버전 작성 , Visual Studio 서비스팩, 업데이트 팩 통합 등에 주로 사용했던 거 같습니다.


 

가물가물한 기억들은 뒤로하고 이제 부팅 가능한 디스크 이미지 ISO를 만들어보겠습니다.

 

역시 'oscdimg' 파일을 사용하며 사용해본 몇 안 되는 프로그램 중에 가장 확실하고 빠른 거 같습니다.

 

* 사용 명령어

oscdimg.exe -bootdata:2#p0,e,b"c:\pe\boot\etfsboot.com"#pEF,e,b"c:\pe\efi\microsoft\boot\efisys.bin" -o -h -m -u2 -udfver102 -lTestPE "c:\pe" "c:\pe\testPE.iso"

 

- 설명

-bootdata:<number> -> 부팅 항목 수와 멀티 부팅 이미지를 지정

                                 (BIOS와 UEFI를 사용할 것이므로 여기서 입력할 number는 2)

 

#p0, #pEF -> 각 멀티 부팅 항목은 '#' 기호로 구분, 각 옵션은 ','로 구분, 'p'는 각 플랫폼의 ID를 지정,

                  플랫폼의 아이디는 BIOS : 0x00, UEFI : 0xEF (#p0x00, #p0xEF로 대체 가능)

 

e -> 플로피 디스크 에뮬레이션 비 활성화

 

b<bootSectorFile> -> 부트 섹터 파일 지정 (절대 경로와 함께 사용 가능, BIOS : etfsboot.com, UEFI : efisys.bin)

 

-o -> MD5 해싱 알고리즘을 사용하여 파일을 비교 후 최적화

        (중복되는 파일이 없으면 용량이 줄어들지 않습니다.)

 

-h -> 원본 폴더의 숨김파일이나 디렉터리 포함

 

-m -> 생성될 이미지의 최대 크기 제한 무시

 

-u2 -> 생성될 이미지를 UDF 파일 시스템으로 구성(ISO 이미지에 UDF 파일 시스템을 구성하는 이유는 하단에 내용 추가)

 

-udfver102 -> UDF 파일 시스템 버전 지정

 

-l<volumeLabel> -> 라벨명 지정 (여기서 입력된 volumeLabel은 TestPE)

 

"c:\pe" -> 부팅파일이나 설치 파일, wim 등 필수 구성요소 등 원본 파일들이 있는 위치

 

"c:\pe\testPE.iso" -> 저장 위치 지정과 파일명, 확장자(ISO) 지정

 

 

- 배치파일로 실행 시 oscdimg.exe와 같은 위치에 있어야 합니다.

 

oscdimg_2.54.zip
0.06MB
oscdimg_bios_uefi_boot_create.bat
0.00MB


하트 버튼도 한 번 부탁드립니다.

 

이상입니다.


※ 내용 추가

* UDF는 광학 디스크의 파일 시스템 규격(공식적으로 배포되는 Windows 10 설치 DVD 매체의 파일 시스템 역시 UDF) 입니다. 'oscdimg' 명령어 중에서 UDF 파일 시스템(명령어 -u2)으로 구성한 이유는 사용할려는 광학 미디어 압축파일(ISO 이미지)의 파일 시스템 표준을 지키기 위해서입니다.

 

* UDF란?

https://ko.wikipedia.org/wiki/%EC%9C%A0%EB%8B%88%EB%B2%84%EC%84%A4_%EB%94%94%EC%8A%A4%ED%81%AC_%ED%8F%AC%EB%A7%B7

 

유니버설 디스크 포맷 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. UDF개발사ISO/ECMA/OSTA정식 명칭유니버설 디스크 포맷도입1995년제약사항최대 볼륨 크기2 TiB (하드 디스크), 8 TiB (광 디스크)[1][2]최대 파일 크기16 EiB최대 파일 이름

ko.wikipedia.org

* ISO 이미지란?

https://ko.wikipedia.org/wiki/ISO_%EC%9D%B4%EB%AF%B8%EC%A7%80

 

ISO 이미지 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전.

ko.wikipedia.org

 

728x90
반응형