반응형

Acronis True Image TIBX 백업 파일을 WIM 이미지로 변환하는 방법

Acronis True Image로 생성한 백업 파일(TIBX)을 WIM 이미지로 변환하는 방법을 소개합니다. TIBX 파일을 WIM 파일로 직접 변환하는 기능은 없지만, 백업 파일을 마운트한 후 WIM 이미지로 캡처하는 방식을 이용하면 별도의 복원 과정 없이 WIM 이미지를 생성할 수 있습니다. 이번 작업에서는 Acronis True Image 2021을 이용해 백업 파일을 마운트하고, WinSetup64와 WinNTSetup으로 WIM 이미지를 캡처한 다음, Windows PE 환경에서 복원까지 진행해 보겠습니다.

1. 작업 준비

작업을 진행하기 전에 다음 항목을 준비합니다.

이번 예제에서는 Windows가 설치된 파티션이 포함된 TIBX 백업 파일을 사용합니다.

 

2. TIBX 백업 파일 마운트

먼저 파일 탐색기를 열고 TIBX 백업 파일이 저장된 경로로 이동합니다. 백업 파일을 마우스 오른쪽 버튼으로 클릭한 후, 컨텍스트 메뉴에서 Acronis True Image → 마운트를 선택합니다. 마운트 마법사가 실행되면 탑재할 파티션을 확인합니다. Windows가 설치된 파티션을 선택하고 드라이브 문자를 지정한 다음, 다음 버튼을 눌러 작업을 진행합니다. 마운트가 완료되면 파일 탐색기에서 새로 할당된 드라이브 문자가 표시되는지 확인합니다. 이제 백업 파일을 별도로 복원하지 않고도 마운트된 파티션의 파일에 접근할 수 있습니다.

 

 

3. WinSetup64로 WIM 이미지 캡처

마운트한 파티션을 이용해 WIM 이미지를 생성하겠습니다. WinSetup64를 실행한 후 파티션 백업 탭에서 캡처할 파티션을 선택하고, WIM 파일의 저장 경로를 지정합니다. 준비가 완료되면 백업 시작 버튼을 눌러 WIM 이미지 캡처를 진행합니다. 이번 작업에서는 GUI 도구를 사용했지만, DISM 명령어를 이용해 동일한 작업을 진행할 수도 있습니다. 편리한 방식에 맞춰 선택하면 됩니다. 캡처가 완료되면 지정한 저장 경로에서 WIM 파일이 정상적으로 생성되었는지 확인합니다. 이번 예제에서는 원본 백업 파일이 약 6.51GB였으며, WinSetup64로 캡처한 WIM 이미지는 약 5.75GB로 생성되었습니다.

 

 

4. WinNTSetup으로 WIM 이미지 캡처

WinNTSetup에도 WIM 캡처 기능이 제공되므로, 동일한 작업을 한 번 더 진행해 보겠습니다. WinNTSetup을 실행하고 오프라인 Windows(Ctrl + Shift + O) 메뉴로 이동합니다. 목록에서 캡처할 대상 파티션을 선택한 다음, 좌측 하단의 Capture WIM 버튼을 눌러 캡처를 진행합니다. 작업이 완료되면 생성된 WIM 파일의 크기를 확인합니다. 동일한 XPRESS 압축 방식을 사용했지만, WinNTSetup으로 생성한 WIM 이미지는 약 6.37GB로 확인되었습니다. 제외 목록(ExclusionList) 등의 차이가 이미지 크기에 영향을 주었을 가능성이 있습니다.

 

 


Acronis True Image TIBX 백업 파일을 WIM 이미지로 변환하는 방법 움짤(GIF)

 


 

5. 디스크 초기화 및 파티션 재구성

WIM 이미지 캡처가 완료되었다면, 이제 실제 복원이 정상적으로 이루어지는지 확인하겠습니다. Windows PE 환경으로 부팅한 후, 원하는 파티션 관리 도구를 사용해 대상 디스크를 초기화하고 파티션을 재구성합니다. 이번 예제에서는 Windows가 설치된 디스크 0번을 대상으로 작업을 진행했습니다. 주의: 디스크 초기화 작업은 기존 파티션과 데이터를 삭제할 수 있으므로, 대상 디스크를 정확하게 확인하고 필요한 데이터는 미리 백업해야 합니다.

 

 

6. WinSetup64로 WIM 이미지 복원

WinSetup64를 실행하고 파티션 구성을 완료한 다음, 이미지 설치 탭으로 이동합니다. 앞서 캡처한 WIM 파일을 선택하고 설치할 대상 파티션을 지정한 후 복원을 진행합니다. 작업이 완료될 때까지 기다린 다음, 재부팅하여 Windows가 정상적으로 부팅되는지 확인합니다. 이번 테스트에서는 디스크를 초기화하고 파티션을 재구성한 환경에서도 WIM 이미지가 정상적으로 복원되었으며, Windows 진입까지 확인했습니다. 이어서 WinNTSetup으로 캡처한 WIM 이미지도 동일한 방식으로 복원하여 결과를 비교했습니다.

 

 

7. WIM 이미지 캡처 및 복원 결과

이번 작업에서는 WinSetup64와 WinNTSetup을 각각 사용해 WIM 이미지를 생성하고, 재구성한 파티션에 복원하는 과정까지 확인했습니다.

 

  • WinSetup64 캡처 결과: 약 5.75GB
  • WinNTSetup 캡처 결과: 약 6.37GB
  • 압축 방식: XPRESS
  • 복원 결과: Windows 정상 부팅 확인

 

두 도구 모두 동일한 압축 방식을 사용했지만 결과 파일의 크기에는 차이가 있었습니다. 이는 제외 목록이나 도구별 처리 방식의 차이에서 비롯되었을 가능성이 있습니다. WIM 이미지는 디스크 전체의 물리적 구조를 그대로 복제하는 방식과 달리, 파일 기반으로 캡처한 이미지를 대상 파티션에 적용할 수 있다는 장점이 있습니다. 따라서 대상 디스크의 종류나 크기, 파티션 구성이 달라지는 상황에서도 활용할 수 있습니다. 다만 부팅에 필요한 EFI 시스템 파티션, 부팅 파일 및 펌웨어 설정 등은 별도로 준비하거나 확인해야 합니다.

마무리

이번 글에서는 Acronis True Image 백업 파일(TIBX)을 마운트한 후 WIM 이미지로 캡처하는 방법과, 캡처한 이미지를 이용해 Windows를 복원하는 과정까지 살펴보았습니다. 백업 파일을 먼저 복원한 후 다시 WIM으로 캡처하는 번거로운 과정을 줄일 수 있다는 점에서 유용한 방법입니다. WinSetup64와 WinNTSetup 모두 활용할 수 있으므로, 사용 환경과 선호하는 도구에 맞춰 작업을 진행해 보시기 바랍니다. 긴 글 읽어 주셔서 감사합니다.

 

 

■ 동영상 제목 클릭 후 전체화면(1080P)시청 가능합니다.

 

정보가 도움이 되었다면 아래 링크로 커피를 후원 해주세요. ^^

donaricano-btn

반응형
반응형

WimMerge v1.0 - 여러 Windows ISO/WIM 이미지의 인덱스를 하나의 WIM 파일로 통합하기

Windows 설치 이미지를 관리하다 보면 여러 Windows ISO 파일에 들어 있는 에디션을 하나의 WIM 파일로 통합해야 하는 경우가 있습니다. 특히 Windows 설치 이미지 제작이나 배포용 만능 WIM 이미지 관리 작업에서는 필요한 이미지 인덱스를 선택하고, 원하는 순서로 정리한 다음 하나의 파일로 내보내는 과정이 필요합니다. WimMerge v1.0은 이러한 작업을 편리하게 수행할 수 있도록 제작한 Windows ISO/WIM 이미지 통합 도구입니다. 여러 ISO 파일의 Windows 설치 이미지를 불러오거나 기존 WIM 파일을 직접 읽어 이미지 목록을 표시하고, 사용자가 선택한 인덱스를 하나의 WIM 파일로 내보낼 수 있습니다. 복잡한 명령어를 직접 입력하지 않고 GUI에서 대상 이미지와 인덱스를 선택할 수 있으며, 내보내기 순서와 압축 방식을 지정하고 작업 진행 상황을 확인할 수 있는 것이 특징입니다.

 


WIM 다중 파일, 인덱스 이미지 내보내기(병합) - 움짤(GIF)

 


 



 

1. 프로그램 주요 특징

  • 여러 Windows ISO 파일의 설치 이미지 목록 불러오기
  • ISO 파일이 없는 폴더에서는 WIM 파일을 직접 검색하여 불러오기
  • ISO 파일이 존재하면 ISO를 우선 처리하는 자동 대상 선택
  • 이미지 인덱스별 선택 및 해제
  • 여러 원본의 이미지를 하나의 WIM 파일로 통합
  • ISO별 순서와 동일 원본 내 이미지 인덱스 순서 변경
  • 자동 압축 및 수동 압축 방식 선택
  • 내보내기 진행률과 경과 시간 표시
  • 작업 로그를 통한 처리 상태 및 오류 확인
  • 내보내기 완료 후 결과 파일의 인덱스 목록 확인

2. ISO/WIM 폴더 지정 및 이미지 목록 불러오기

프로그램을 실행하면 메인 탭에서 ISO/WIM 파일이 저장된 폴더를 지정할 수 있습니다. 경로를 직접 입력하거나 찾아보기 버튼을 사용하여 폴더를 선택한 다음 목록 불러오기 버튼을 누르면 됩니다. WimMerge는 지정한 폴더에서 ISO 파일을 먼저 검색합니다. ISO 파일이 존재하면 ISO를 우선 대상으로 사용하고, ISO 파일이 없으면 해당 폴더의 WIM 파일을 검색하여 목록을 구성합니다. ISO 파일은 순서대로 탑재한 후 sources\install.wim 파일을 확인합니다. 해당 파일이 없거나 이미지 정보를 읽을 수 없는 ISO는 목록에서 제외하고 로그에 사유를 기록합니다. WIM 파일을 직접 불러오는 경우에는 각 파일의 이미지 정보와 압축 방식을 읽어 목록에 표시합니다. 따라서 ISO를 사용하지 않고 기존 WIM 파일에 포함된 이미지들을 대상으로 작업할 수도 있습니다.

 

 

3. 트리 구조로 표시되는 이미지 목록

불러온 원본 파일과 내부 이미지 인덱스는 트리 형태로 표시됩니다. 각 원본 아래에 포함된 이미지가 개별 항목으로 표시되므로, 통합할 이미지와 제외할 이미지를 구분하기 쉽습니다. 체크박스를 사용하여 필요한 이미지만 선택할 수 있으며, 원본 항목을 선택하면 해당 원본에 포함된 이미지 전체를 선택하거나 해제할 수 있습니다. 여러 원본에서 필요한 에디션만 골라 통합할 수 있으므로, 불필요한 이미지까지 모두 포함할 필요가 없습니다.

 

ISO 파일 목록 불러 오기 - 움짤(GIF)


WIM 파일 목록 불러 오기 - 움짤(GIF)

 


4. 이미지 선택 및 내보내기 순서 변경

WimMerge는 이미지 선택뿐만 아니라 내보내기 순서를 조정하는 기능도 제공합니다. 트리에서 원본 ISO 또는 WIM 항목을 선택한 상태에서 위로 또는 아래로 버튼을 누르면 원본별 처리 순서를 변경할 수 있습니다. 개별 이미지 인덱스를 선택한 상태에서는 같은 원본에 포함된 이미지끼리 순서를 변경할 수 있습니다. 이 기능을 활용하면 여러 원본의 이미지를 원하는 순서로 정리하여 하나의 WIM 파일로 내보낼 수 있습니다. 체크 상태를 유지하면서 순서를 변경하도록 구현되어 있어 이미지 목록을 정리하는 작업도 편리합니다.

 

 


파일 내보내기 우선순위 및 인덱스 순서 변경 - 움짤(GIF)

 


5. 저장 경로 및 압축 방식 설정

내보낼 WIM 파일의 저장 경로는 직접 입력하거나 찾아보기 버튼으로 지정할 수 있습니다.

 

기본 저장 파일명은 다음과 같습니다.

install_export.wim

 

저장 경로를 지정할 때는 파일명과 확장자를 확인하면 됩니다. 저장 폴더가 존재하지 않으면 내보내기를 진행하지 않도록 검사합니다.

압축 방식은 다음과 같이 선택할 수 있습니다.

  • 자동: 선택한 원본 이미지의 압축 방식을 확인하여 적용합니다.
  • 서로 다른 압축 방식이 섞여 있으면 XPRESS 압축 방식을 사용합니다.
  • none: 무압축 방식
  • XPRESS: XPRESS 압축 방식
  • LZX: LZX 압축 방식
  • LZMS: LZMS 압축 방식

자동 설정을 사용하면 원본의 압축 방식을 고려하여 내보내기를 진행할 수 있습니다. 압축 방식을 직접 지정하고 싶다면 콤보박스에서 원하는 항목을 선택하면 됩니다.

 

 

6. 내보내기 전 확인 및 기존 파일 처리

내보내기 버튼을 누르면 선택한 이미지가 실제로 어떤 순서로 처리되는지 확인할 수 있는 확인 창이 표시됩니다. 확인 창에는 저장 경로, 압축 방식, 선택된 이미지 수와 이미지 인덱스 및 이름, 원본 파일명이 표시됩니다. 기존 저장 파일을 실수로 덮어쓰지 않도록 파일 존재 여부도 확인합니다. 저장 대상 파일이 이미 존재하면 삭제 후 내보낼 것인지 묻는 확인 창이 표시됩니다.

  • 예(Yes): 기존 파일을 삭제한 후 내보내기를 진행합니다.
  • 아니요(No): 작업을 취소하고 기존 파일을 유지합니다.

따라서 기존 결과물을 유지해야 하는 상황에서는 파일을 덮어쓰기 전에 확인할 수 있습니다.

 

 

7. 실시간 진행률 및 작업 로그

WIM 이미지 내보내기는 이미지 크기와 저장 장치 성능 등에 따라 시간이 걸릴 수 있습니다. WimMerge는 내보내기 작업 중 별도의 진행 창을 표시하여 진행률과 경과 시간을 확인할 수 있도록 구성되어 있습니다. 진행 창에는 현재 처리 중인 이미지 이름과 진행률이 표시되며, 출력 정보를 바탕으로 처리된 데이터 용량과 진행 상태를 표시합니다.

 

메인 화면의 로그 창에서는 다음과 같은 작업 정보를 확인할 수 있습니다.

  • 원본 ISO/WIM 파일 읽기 결과
  • 이미지 압축 방식과 이미지 수
  • 내보내기 시작 및 완료 메시지
  • 오류 발생 시 관련 메시지와 종료 코드
  • 개별 이미지 및 전체 작업의 경과 시간

이러한 로그 기능을 통해 여러 이미지를 순차적으로 처리할 때 현재 작업 상태를 확인하고, 문제가 발생한 경우 원인을 파악하는 데 도움을 받을 수 있습니다.

 

ISO 다중 파일, 인덱스 이미지 내보내기(병합) - 움짤(GIF)

 

8. 내보내기 완료 후 결과 확인

선택한 이미지의 내보내기가 모두 완료되면 최종 저장 경로와 전체 경과 시간이 로그에 기록됩니다. 이후 결과 WIM 파일의 이미지 정보를 다시 읽어 별도 창에 인덱스 목록을 표시합니다. 최종 결과에 어떤 인덱스가 포함되었는지 확인할 수 있으므로, 원본에서 선택한 이미지들이 통합 파일에 어떻게 구성되었는지 점검할 수 있습니다.

 

 

        Index: 1
         Name: Windows 10 22H2(19045.7807) Home x64 Hotfix261014
  Description: 버전 22H2(Build19045.7807) + .Net Framework 3.5 Enable + IRST/VMD Driver
       D.Name: Windows 10 22H2(19045.7807) Home x64 Hotfix261014
D.Description: 버전 22H2(Build19045.7807) + .Net Framework 3.5 Enable + IRST/VMD Driver

        Index: 2
         Name: Windows 10 22H2(19045.7807) Pro x64 Hotfix261014
  Description: 버전 22H2(Build19045.7807) + .Net Framework 3.5 Enable + IRST/VMD Driver
       D.Name: Windows 10 22H2(19045.7807) Pro x64 Hotfix261014
D.Description: 버전 22H2(Build19045.7807) + .Net Framework 3.5 Enable + IRST/VMD Driver

        Index: 3
         Name: Windows 11 26H2(26300.9711) Enterprise x64 Hotfix261014
  Description: 버전 26H2(Build 26300.9711) + .Net Framework 3.5 Enable + IRST/VMD Driver
       D.Name: Windows 11 26H2(26300.9711) Enterprise x64 Hotfix261014
D.Description: 버전 26H2(Build 26300.9711) + .Net Framework 3.5 Enable + IRST/VMD Driver

        Index: 4
         Name: Windows 11 26H2(26300.9711) Pro x64 Hotfix261014
  Description: 버전 26H2(Build 26300.9711) + .Net Framework 3.5 Enable + IRST/VMD Driver
       D.Name: Windows 11 26H2(26300.9711) Pro x64 Hotfix261014
D.Description: 버전 26H2(Build 26300.9711) + .Net Framework 3.5 Enable + IRST/VMD Driver

        Index: 5
         Name: Windows 11 23H2(22631.7652) Education x64 Hotfix261014
  Description: 버전 23H2(Build 22631.7652) + .Net Framework 3.5 Enable + IRST/VMD Driver
       D.Name: Windows 11 23H2(22631.7652) Education x64 Hotfix261014
D.Description: 버전 23H2(Build 22631.7652) + .Net Framework 3.5 Enable + IRST/VMD Driver

        Index: 6
         Name: Windows 11 23H2(22631.7652) Enterprise x64 Hotfix261014
  Description: 버전 23H2(Build 22631.7652) + .Net Framework 3.5 Enable + IRST/VMD Driver
       D.Name: Windows 11 23H2(22631.7652) Enterprise x64 Hotfix261014
D.Description: 버전 23H2(Build 22631.7652) + .Net Framework 3.5 Enable + IRST/VMD Driver

        Index: 7
         Name: Windows 11 25H2(26200.9711) IoT Enterprise x64 Hotfix261014
  Description: 버전 25H2(Build 26200.9711) + .Net Framework 3.5 Enable + IRST/VMD Driver
       D.Name: Windows 11 25H2(26200.9711) IoT Enterprise x64 Hotfix261014
D.Description: 버전 25H2(Build 26200.9711) + .Net Framework 3.5 Enable + IRST/VMD Driver

        Index: 8
         Name: Windows 11 25H2(26200.9711) Enterprise x64 Hotfix261014
  Description: 버전 25H2(Build 26200.9711) + .Net Framework 3.5 Enable + IRST/VMD Driver
       D.Name: Windows 11 25H2(26200.9711) Enterprise x64 Hotfix261014
D.Description: 버전 25H2(Build 26200.9711) + .Net Framework 3.5 Enable + IRST/VMD Driver

 

9. WimMerge 사용 방법

일반적인 사용 순서는 다음과 같습니다.

  1. WimMerge를 실행합니다.
  2. ISO 또는 WIM 파일이 들어 있는 폴더를 지정합니다.
  3. 목록 불러오기를 눌러 이미지 목록을 구성합니다.
  4. 통합할 이미지의 체크박스를 선택합니다.
  5. 필요하다면 원본 순서와 이미지 인덱스 순서를 조정합니다.
  6. 저장 경로와 압축 방식을 지정합니다.
  7. 내보내기 버튼을 누르고 선택 목록과 저장 경로를 확인합니다.
  8. 기존 저장 파일이 있다면 삭제 여부를 결정합니다.
  9. 진행 창과 로그에서 처리 상황을 확인합니다.
  10. 완료 후 결과 WIM 파일의 인덱스 목록을 확인합니다.

 

10. 활용 예시

여러 Windows ISO의 이미지 통합

서로 다른 Windows ISO 파일에 들어 있는 설치 이미지 중 필요한 에디션만 선택하여 하나의 WIM 파일로 통합할 수 있습니다.

 

기존 WIM 파일의 이미지 재구성

ISO 파일이 없는 폴더에 여러 WIM 파일이 저장되어 있다면 해당 파일을 직접 불러와 필요한 이미지 인덱스를 선택하고 하나의 결과 파일로 내보낼 수 있습니다.

 

배포용 WIM 파일 구성

불필요한 이미지를 제외하고 필요한 인덱스만 선택한 뒤 순서를 정리하여 배포용 WIM 파일을 구성할 수 있습니다.

 

마무리

WimMerge v1.0은 여러 Windows ISO 또는 기존 WIM 파일에 포함된 이미지 인덱스를 선택하고, 원하는 순서와 압축 방식으로 하나의 WIM 파일에 통합할 수 있도록 제작한 도구입니다. 이미지 목록 불러오기부터 선택, 순서 변경, 내보내기, 진행 상황 확인, 결과 인덱스 확인까지 GUI에서 처리할 수 있어 Windows 설치 이미지 관리 작업을 보다 직관적으로 진행할 수 있습니다. 여러 Windows 설치 이미지를 하나의 WIM 파일로 정리하거나, 배포 환경에 필요한 이미지만 선별하여 구성하고 싶을 때 활용할 수 있습니다.

 

 

반응형
반응형

RPC Recovery Solution, ASRM에서 GRUB2 방식으로 전환한 이유 — 저작권 및 라이선스 고려

1. ASRM 기반 복구 부팅 방식의 변경

RPC Recovery Solution은 Windows PE 기반 복구 환경으로 진입하기 위한 핫키 기능을 제공합니다. 기존 버전에서는 UEFI 환경의 복구 부팅을 위해 ASRM(asrm.efi)과 설정 파일(asrm.xml)을 사용하는 방식을 적용했습니다. 그러나 프로젝트를 지속적으로 개발하고 배포하는 과정에서 부팅 구성 요소의 저작권과 라이선스 조건을 명확하게 구분하고, 배포 가능한 소프트웨어를 기반으로 구조를 정리할 필요가 있었습니다. 이에 기존 ASRM 기반 UEFI 복구 부팅 구조를 제거하고, GNU 프로젝트에서 개발하는 GRUB2를 사용하는 방식으로 전환했습니다. 이번 변경의 주요 목적은 단순히 부팅 프로그램을 교체하는 것이 아니라, 저작권과 라이선스 준수를 고려하면서 RPC Recovery Solution의 복구 부팅 기능을 독립적으로 관리할 수 있는 구조를 마련하는 것입니다.

2. ASRM 방식을 변경한 이유

기존 방식에서 사용하던 ASRM 관련 소스 및 실행 구성 요소는 Acronis True Image와 관련된 저작권 및 라이선스 검토가 필요한 대상이었습니다. Acronis True Image는 상용 소프트웨어이며, 사용 및 배포 권한은 해당 제품에 적용되는 라이선스 계약에 따라 결정됩니다. 일반적으로 소프트웨어를 사용할 수 있는 권한이 있다고 해서 해당 구성 요소를 별도의 프로그램에 포함하거나 제3자에게 재배포할 수 있는 권한까지 자동으로 부여되는 것은 아닙니다. RPC Recovery Solution은 별도의 복구 솔루션으로 개발되고 있으므로, 기존 ASRM 구현을 계속 사용하는 것보다 배포 조건을 명확하게 확인할 수 있는 부트로더를 채택하는 방향이 적절하다고 판단했습니다.

 

이에 따라 다음 사항을 고려했습니다.

  • 저작권 준수: 제3자 소프트웨어의 저작권과 사용 조건을 고려한 구성 요소 선정
  • 재배포 조건 명확화: 복구 솔루션과 함께 배포할 부트로더의 라이선스 확인
  • 설정 관리 개선: 별도의 설정 파일을 통해 핫키와 부팅 동작을 관리하는 구조
  • 유지보수 편의성: 기존 ASRM 전용 설정 처리에서 GRUB2 설정 파일을 생성하고 관리하는 방식으로 변경
  • 독립적인 개발 구조: 특정 상용 제품에 종속된 구성 요소를 복구 부팅의 핵심 경로에서 제외

이번 전환은 ASRM이 기술적으로 동작하지 않거나 성능이 부족해서 이루어진 것이 아닙니다. 핵심 배경은 소프트웨어의 저작권 및 라이선스 조건을 고려한 구조 변경입니다.

3. GRUB2를 선택한 이유

GRUB2는 GNU 프로젝트에서 개발하는 범용 부트로더입니다. GNU GRUB는 GPLv3 또는 이후 버전의 GPL에 따라 배포되는 자유 소프트웨어이며, 라이선스가 허용하는 범위에서 사용·수정·재배포할 수 있습니다. 다만 실제 배포 시에는 적용되는 라이선스의 의무사항을 준수해야 합니다. GRUB2는 설정 파일을 이용해 부팅 항목, 대기 시간 및 부팅 대상 등을 관리할 수 있습니다. 이러한 특성은 RPC Recovery Solution에서 필요한 UEFI 복구 핫키 기능을 구현하는 데 적합합니다. 특히 기존 ASRM 방식에서 XML 파일로 관리하던 설정을 GRUB2의 grub.cfg로 변경하면, 프로그램에서 지정한 설정값을 부팅 설정에 직접 반영할 수 있습니다.

 

GRUB2를 선택한 주요 이유는 다음과 같습니다.

  1. 공개된 라이선스 조건을 검토할 수 있는 부트로더를 사용합니다.
  2. UEFI 환경에서 실행 가능한 EFI 부트로더를 기반으로 구성합니다.
  3. 설정 파일을 통해 핫키와 대기 시간, 부팅 항목을 관리합니다.
  4. 상용 제품에 종속된 ASRM 구성 요소를 제거합니다.
  5. 향후 기능 수정과 유지보수 시 부트로더 자체의 라이선스와 RPC Recovery Solution의 자체 코드를 구분해 관리할 수 있습니다.

단, GRUB2가 자유 소프트웨어라는 사실만으로 모든 배포 방식이 자동으로 허용되는 것은 아닙니다. 실제 사용하는 GRUB2 바이너리의 버전, 빌드 구성, 포함된 모듈 및 배포 형태에 적용되는 라이선스를 확인하고, 필요한 저작권 고지와 라이선스 전문 및 소스 코드 제공 관련 의무 등을 검토해야 합니다. 

4. ASRM 방식과 GRUB2 방식 비교

항목기존 ASRM 방식변경된 GRUB2 방식
UEFI 부트로더 asrm.efi grubx64.efi
설정 파일 asrm.xml grub.cfg
설정 생성 ASRM XML 생성 GRUB2 설정 파일 생성
핫키 관리 ASRM 설정 기반 GRUB2 설정 기반
UEFI 부팅 항목 ASRM EFI 실행 경로 GRUB2 EFI 실행 경로
라이선스 고려 Acronis 관련 권리 및 조건 검토 필요 GNU GRUB 및 포함 구성 요소의 라이선스 준수 필요
유지보수 ASRM 전용 구성에 의존 GRUB2 설정 파일 중심으로 관리

 

기존 방식은 ASRM 실행 파일과 설정 파일을 배포하고 해당 실행 파일을 UEFI 펌웨어 부팅 항목에 등록하는 구조였습니다. 변경된 방식은 GRUB2 EFI 실행 파일과 grub.cfg를 복구 파티션에 배포하고, UEFI 펌웨어가 GRUB2를 실행하도록 구성합니다. 이를 통해 부팅 구성 요소와 설정 파일의 역할을 명확하게 구분하고, 핫키 및 부팅 동작을 GRUB2 설정을 중심으로 관리하도록 변경했습니다.

5. GRUB2 방식의 구성

GRUB2 기반 복구 부팅에 필요한 주요 파일은 다음과 같습니다.

RPC_REC
└─ EFI
   └─ RPC
      ├─ grubx64.efi
      ├─ grub.cfg
      └─ unicode.pf2
  • grubx64.efi: UEFI에서 실행되는 GRUB2 부트로더
  • grub.cfg: 핫키, 안내 문구, 대기 시간 및 부팅 항목 설정
  • unicode.pf2: 필요한 경우 사용하는 GRUB2 글꼴 파일

프로그램은 사용자가 선택한 핫키와 대기 시간 등의 설정을 반영해 grub.cfg를 생성합니다. UEFI 펌웨어의 부팅 항목은 \EFI\RPC\grubx64.efi를 실행하도록 구성합니다. GRUB2는 설정 파일에 정의된 부팅 항목을 통해 복구 환경으로 진입할 수 있도록 구성되며, Windows PE 부팅에 필요한 후속 실행 파일과의 연결은 실제 복구 환경에 맞게 설정합니다.

6. 기존 복구 기능은 유지

이번 변경은 RPC Recovery Solution 전체를 새로 개발한 것이 아니라, UEFI 복구 부팅에 사용하던 ASRM 구성 요소를 GRUB2로 교체한 것입니다.

 

기존의 주요 기능은 다음과 같이 유지합니다.

  • 복구 파티션 구성
  • Windows RE 및 Windows PE 기반 복구 환경 구성
  • WIM 파일 크기에 따른 복구 파티션 용량 계산
  • Windows PE 부팅을 위한 BCD 구성
  • 복구 부팅 핫키 등록 및 해제
  • UEFI 펌웨어 부팅 항목 관리
  • 설정 저장과 작업 로그 관리

또한 BIOS/MBR 환경에서는 기존 MBR 스텁 기반 핫키 처리 방식을 별도로 유지합니다. 따라서 GRUB2 전환은 UEFI 복구 부팅 경로를 대상으로 한 변경이며, BIOS/MBR 부팅 구조까지 동일한 방식으로 교체한 것은 아닙니다.

7. 저작권과 라이선스 준수를 위한 배포 원칙

RPC Recovery Solution에서 GRUB2를 사용하더라도 프로젝트 자체의 소스 코드와 GRUB2 구성 요소의 라이선스는 구분해서 관리해야 합니다.

 

배포 시에는 다음 사항을 확인할 필요가 있습니다.

  • 사용하는 GRUB2 버전과 해당 버전의 라이선스
  • 바이너리 및 포함 모듈의 저작권 고지와 라이선스 전문
  • 수정된 GRUB2 구성 요소가 있다면 적용되는 소스 코드 제공 의무
  • GRUB2와 별도로 포함하는 글꼴, EFI 프로그램 및 기타 구성 요소의 라이선스
  • RPC Recovery Solution 자체 코드와 외부 구성 요소의 배포 조건

특히 GRUB2의 실행 파일을 배포한다면 해당 바이너리에 적용되는 GPL 조건을 확인해야 합니다. GRUB2를 사용한다는 이유만으로 RPC Recovery Solution의 모든 소스 코드에 동일한 라이선스가 자동으로 적용된다고 단정할 수는 없으며, 구성 요소의 결합 방식과 실제 배포 형태를 함께 검토해야 합니다. 이번 전환은 이러한 라이선스 검토를 전제로, 기존 ASRM 구성 요소에 대한 의존성을 제거하고 부트로더와 자체 프로그램의 역할을 구분하는 방향으로 진행했습니다.

8. 마무리

RPC Recovery Solution의 ASRM에서 GRUB2로의 전환은 저작권 및 라이선스 조건을 고려한 구조 변경입니다. 기존 ASRM 기반 방식에서는 Acronis True Image와 관련된 저작권 및 재배포 조건을 검토할 필요가 있었습니다. 이에 따라 공개된 라이선스 조건을 확인할 수 있는 GRUB2를 UEFI 복구 부팅에 적용하고, 핫키와 부팅 설정을 grub.cfg 중심으로 관리하도록 변경했습니다. 이를 통해 상용 소프트웨어에 종속된 부팅 구성 요소를 제거하고, 부트로더의 라이선스와 자체 프로그램의 기능을 구분해 관리할 수 있는 기반을 마련했습니다. 앞으로도 RPC Recovery Solution은 복구 기능뿐 아니라, 사용하는 외부 구성 요소의 저작권과 라이선스 조건을 고려해 배포 가능한 구조를 유지하는 것을 목표로 합니다.

 


 

 


 

RPC Recovery Solution - GRUB2 방식으로 전환 테스트 - 움짤(GIF) 

 


 

반응형
반응형

Windows 10 및 Windows 11 설치 이미지를 제작할 때 UUP 변환 과정에서 사용하는 설정 파일과 배치 스크립트를 직접 수정해야 하는 경우가 있습니다. 특히 Windows PE 환경에서 활용할 이미지를 제작하거나 드라이버 통합 및 누적 업데이트 관련 설정을 적용할 때는 여러 파일을 확인하고 필요한 코드를 추가해야 합니다.

이번에 소개할 convert-UUP_Patcher v5.0은 이러한 반복적인 작업을 간편하게 처리할 수 있도록 제작한 AutoIt 기반 패치 도구입니다. ConvertConfig.ini와 convert-UUP.cmd 파일의 설정을 지정된 값으로 변경하고, Windows 이미지의 빌드 정보 처리 코드와 WinRE 드라이버 주입 코드를 자동으로 삽입합니다. 또한 IRST/VMD 드라이버 파일을 확인하고, 각 항목의 패치 적용 여부를 한눈에 확인할 수 있도록 구성했습니다.

 

convert-UUP_Patcher v5.0.exe
3.69MB

 

 

1. 프로그램 주요 기능

  • ConvertConfig.ini 설정값 자동 변경
  • convert-UUP.cmd 설정값 자동 변경
  • install.wim과 boot.wim의 빌드 정보 확인 및 처리 코드 삽입
  • WinRE 이미지에 드라이버를 주입하는 코드 추가
  • IRST/VMD 드라이버 파일 자동 확인 및 압축 해제
  • 패치 적용 여부 및 현재 설정값 실시간 확인
  • 이미 적용된 설정과 코드의 불필요한 재변경 및 중복 삽입 방지

2. 메인 화면 구성

프로그램은 패치 반영과 도움말 두 개의 탭으로 구성되어 있습니다. 메인 화면에서는 수정할 설정 파일과 배치 스크립트의 경로를 지정하고, 현재 적용 상태를 확인한 다음 패치를 실행할 수 있습니다. 기본 경로는 프로그램 실행 폴더를 기준으로 설정되어 있으므로 별도의 경로 변경 없이 사용할 수 있는 환경이라면 바로 적용 작업을 진행할 수 있습니다.

 

설정 파일 및 배치 스크립트 경로 지정

프로그램 상단에는 두 개의 파일 경로 입력란이 있습니다.

  • ConvertConfig.ini 경로: 설정값을 변경할 INI 파일을 지정합니다.
  • convert-UUP.cmd 경로: 설정 변경과 코드 삽입을 수행할 CMD 파일을 지정합니다.

각 입력란 옆의 ... 버튼을 이용하면 파일 선택 대화상자를 통해 원하는 파일을 지정할 수 있습니다.

기본적으로 프로그램 실행 경로에 있는 파일을 대상으로 하며, 다른 작업 폴더의 파일도 직접 선택할 수 있습니다.

 

패치 적용 상태 확인

중앙의 적용 상태 목록에서는 항목별 목표값, 현재값, 적용 상태를 확인할 수 있습니다.

  • 녹색: 목표값이 적용되었거나 필요한 코드가 확인된 상태
  • 빨간색: 목표값과 다르거나 파일 또는 필요한 코드가 확인되지 않은 상태

프로그램 시작 시, 파일 경로 변경 시, 패치 적용 직후에 상태가 갱신됩니다.

따라서 파일을 직접 열어 내용을 일일이 비교하지 않아도 주요 설정과 코드의 적용 여부를 빠르게 확인할 수 있습니다.

하단에는 CMD 파일에 삽입할 빌드 정보 처리 코드가 표시됩니다. 삽입 대상 코드를 미리 확인할 수 있어 실제 패치 내용을 파악하기에도 편리합니다.

 

 

3. ConvertConfig.ini 설정 자동 변경

ConvertConfig.ini의 [convert-UUP] 섹션에서 다음 세 가지 항목을 지정된 목표값으로 변경합니다.

 

설정 항목목표값적용 목적
 
AutoStart 0 변환 자동 시작 옵션 비활성화
LCUwinre 1 WinRE 누적 업데이트 관련 설정 활성화
AddDrivers 1 드라이버 추가 관련 설정 활성화

 

이 값들은 사용자가 매번 입력하는 방식이 아니라 프로그램 내부에 고정된 목표값으로 관리됩니다. 이미 목표값이 설정되어 있다면 해당 항목은 변경하지 않습니다. 이를 통해 불필요한 파일 수정을 줄이고, 반복 실행 시에도 동일한 설정을 유지할 수 있도록 했습니다. 단, 이 프로그램은 해당 설정 항목을 새로 생성하는 방식이 아니라 기존 파일에서 지정된 섹션과 설정값을 찾아 변경하는 방식입니다. 

 

 

4. convert-UUP.cmd 자동 패치

CMD 파일에는 설정값 변경뿐 아니라 Windows 이미지 변환 과정에서 필요한 코드도 삽입합니다.

 

AddDrivers 설정 변경

convert-UUP.cmd에 있는 set AddDrivers= 값을 1로 변경합니다.

INI 파일의 설정뿐 아니라 CMD 파일의 설정도 함께 관리하므로 두 파일의 관련 옵션을 일관된 값으로 맞출 수 있습니다.

 

Windows 이미지 빌드 정보 처리 코드 삽입

ren temp\winre.wim boot.wim 구문 바로 다음에 빌드 정보 처리 코드를 삽입합니다. 이 코드는 install.wim과 boot.wim의 첫 번째 이미지에서 Windows 빌드 정보를 확인하고, 두 빌드 번호가 서로 다를 경우 wimlib-imagex.exe를 이용해 boot.wim의 이미지 속성에 해당 빌드 정보를 반영합니다. 또한 두 번째 이미지에도 같은 처리를 수행하도록 구성되어 있습니다. 이를 통해 변환 과정에서 설치 이미지와 부팅 이미지의 빌드 정보가 일치하지 않는 경우를 처리할 수 있도록 했습니다.

 

WinRE 드라이버 주입 코드 삽입

set _clnwinpe=1 구문 바로 아래에는 WinRE 드라이버 주입 코드를 추가합니다.

삽입되는 코드는 다음 두 가지 드라이버 경로를 확인합니다.

  • DrvSrcALL: 전체 드라이버 경로
  • DrvSrcPE: PE 환경용 드라이버 경로

해당 경로가 정의되어 있으면 DISM의 /Add-Driver 및 /Recurse 옵션을 사용해 드라이버를 주입하도록 구성되어 있습니다. 작업 로그는 DrvWinPE.log에 기록하도록 지정되어 있습니다. 이 기능은 누적 업데이트 처리 과정에서 WinRE 이미지에 필요한 드라이버가 누락되는 문제를 보완하기 위한 것입니다. 특히 WinRE 이미지를 활용하는 환경에서 드라이버 반영 과정을 자동화하는 데 목적이 있습니다.

 

 

 

 

5. IRST/VMD 드라이버 자동 준비

프로그램 시작 시 실행 폴더에 ConvertConfig.ini 파일이 있는지 확인합니다.

설정 파일이 존재하면 Drivers\ALL\IRST_VMD 폴더에서 다음 두 파일을 확인합니다.

  • iaStorVD.inf
  • iaStorVD.sys

두 파일이 모두 존재하면 드라이버 압축 해제 과정을 생략합니다. 반대로 둘 중 하나라도 없으면 프로그램에 포함된 IRST/VMD 드라이버 압축 파일과 7-Zip 실행 파일을 임시 폴더에 배치한 뒤, Drivers\ALL 경로에 압축을 해제합니다. 작업이 끝나면 임시 폴더에 배치했던 관련 파일을 삭제합니다. 이 과정은 매번 드라이버를 다시 압축 해제하는 방식이 아니라, 필요한 파일의 존재 여부를 확인한 후 조건에 따라 실행됩니다. 다만 ConvertConfig.ini 파일이 실행 폴더에 없는 경우에는 이 드라이버 준비 작업을 수행하지 않습니다.

 

 

6. 패치 중복 방지 및 파일 처리

패치 프로그램을 반복 실행하더라도 동일한 코드가 계속 추가되지 않도록 중복 확인 기능을 적용했습니다. 빌드 정보 처리 코드는 CMD 파일 전체에서 기존 코드 블록을 확인하며, WinRE 드라이버 주입 코드는 지정된 기준 구문 바로 다음에 해당 코드가 있는지 검사합니다. 이미 코드가 삽입되어 있으면 다시 추가하지 않습니다. 또한 INI 및 CMD 설정값이 목표값과 같다면 해당 설정은 변경하지 않습니다. 실제 변경이 발생한 경우에만 파일을 다시 저장하며, 파일 저장 시에는 ANSI 인코딩을 사용합니다. 이러한 구조를 통해 반복적인 패치 작업에서 발생할 수 있는 중복 코드와 불필요한 수정을 줄이도록 했습니다.

7. 패치 적용 및 결과 확인

사용 방법은 간단합니다.

  1. convert-UUP_Patcher.exe를 실행합니다.
  2. ConvertConfig.ini와 convert-UUP.cmd 경로를 확인합니다.
  3. 적용 상태 목록에서 현재 설정과 누락된 항목을 확인합니다.
  4. 적용 버튼을 클릭합니다.
  5. 패치 결과 메시지와 갱신된 적용 상태를 확인합니다.

프로그램은 각 파일의 처리 결과를 구분해 표시합니다.

  • 패치 완료: 파일에 실제 변경 사항을 적용한 경우
  • 이미 적용됨: 변경할 내용이 없는 경우
  • 패치 실패: 파일 읽기 또는 저장 등의 작업에 실패한 경우

두 파일 중 하나만 존재하는 경우에도 해당 파일의 패치를 진행할 수 있습니다. 반면 두 파일이 모두 존재하지 않으면 오류 메시지를 표시하고 작업을 중단합니다.

8. 도움말 및 제작 정보

도움말 탭에서는 프로그램 개요, 시작 시 드라이버 처리 조건, 고정 설정값, 파일 경로 선택 방법, 적용 상태의 의미, 패치 작업 순서 등을 확인할 수 있습니다.

마무리

convert-UUP_Patcher v5.0은 Windows 설치 이미지 변환 과정에서 반복적으로 수행하던 설정 변경과 CMD 코드 삽입 작업을 하나의 GUI 프로그램으로 통합한 도구입니다. ConvertConfig.ini와 convert-UUP.cmd의 설정을 지정된 값으로 맞추고, 빌드 정보 처리 및 WinRE 드라이버 주입 코드를 자동으로 추가할 수 있습니다. 또한 IRST/VMD 드라이버의 준비 상태와 패치 적용 여부를 확인할 수 있어 작업 과정에서 발생할 수 있는 누락을 점검하는 데 도움이 됩니다. 특히 Windows PE 환경을 위한 이미지 제작 과정에서 누적 업데이트와 드라이버 반영을 함께 관리해야 하는 경우, 여러 파일을 직접 수정하는 번거로움을 줄이고 필요한 작업을 보다 일관된 방식으로 처리할 수 있도록 구성했습니다. 복잡한 변환 스크립트를 직접 편집하는 대신, 파일 경로를 지정하고 적용 버튼을 누르는 방식으로 주요 패치 작업을 진행할 수 있다는 점이 이 프로그램의 핵심입니다.

 

■ 동영상 제목 클릭 후 전체화면(1080P)시청 가능합니다.

 

정보가 도움이 되었다면 아래 링크로 커피를 후원 해주세요. ^^

donaricano-btn

반응형

+ Recent posts