다음을 통해 공유


패치 크기 줄이기

Windows Installer 버전 3.0부터 패치 작성자는 설치 관리자가 캐시한 제품 기준을 사용하여 더 작은 델타 패치로 애플리케이션을 보다 쉽게 서비스할 수 있습니다. 대부분의 경우 애플리케이션에 서비스 정보를 제공하는 델타 패치는 동일한 정보를 제공하는 전체 파일 패치 또는 설치 패키지보다 훨씬 작을 수 있습니다.

Windows Installer 2.0: 지원되지 않습니다. Windows Installer 3.0부터 설치 관리자는 업데이트할 때 파일에 대한 기준 정보를 선택적으로 저장합니다.

Windows Installer는 애플리케이션을 업데이트하고 서비스하는 세 가지 방법인 작은 업데이트, 사소한 업그레이드주요 업그레이드를 제공합니다. 작은 업데이트를 QFE(빠른 수정 엔지니어링) 업데이트라고도 하며, 사소한 업그레이드를 SP(서비스 팩) 업데이트라고도 합니다. 일반적인 주요 업그레이드는 이전 애플리케이션을 제거하고 새 애플리케이션을 설치합니다. Windows Installer는 설치 패키지(.msi 파일) 또는 패치 패키지(.msp 파일)로 애플리케이션에 서비스 정보를 제공할 수 있습니다.

작은 업데이트 또는 부 업그레이드에 대한 서비스 정보를 제공하는 Windows Installer 패치 패키지는 일반적으로 동일한 서비스 정보를 제공하는 동일한 설치 패키지보다 훨씬 작습니다. 패치 패키지는 소규모 및 부 업그레이드 배포에 사용하는 것이 좋습니다. 주요 업그레이드 배포에 설치 패키지를 사용하는 것이 좋습니다.

Windows Installer 패치(.msp 파일)는 전체 파일 또는 파일 차이(파일 델타라고도 함)에서 생성할 수 있습니다. 파일 델타에서 생성된 Windows Installer 패치는 해당하는 전체 파일 패치보다 훨씬 작을 수 있습니다. 모든 버전의 Windows Installer는 전체 파일 패치 또는 델타 패치를 모두 사용할 수 있습니다.

Windows Installer 버전 3.0부터 설치 관리자는 업데이트할 때 파일에 대한 기준 정보를 선택적으로 저장합니다. 원래 기본 애플리케이션(RTM 버전) 및 가장 최근의 부 업그레이드(서비스 팩)에 대한 정보는 애플리케이션이 설치되거나 사소한 업그레이드를 받을 때 개인 위치에 저장됩니다.

설치 관리자는 기준 캐시의 크기를 최소화하기 위해 다음을 수행합니다.

  • 각 애플리케이션에 대해 두 개 이하의 기준이 유지됩니다. 즉, 원래 릴리스된 파일의 기준(RTM)과 가장 최근의 사소한 업그레이드(서비스 팩)에서 파일의 기준입니다.
  • 파일이 패치될 때까지 캐시에 추가되지 않습니다. 기준 캐시는 쓰기에 복사됩니다.
  • 애플리케이션이 업데이트되지 않은 경우 기준 캐시에 파일이 없습니다.
  • 애플리케이션의 마지막 서비스가 사소한 업그레이드(서비스 팩)였던 경우 애플리케이션은 기준 수준에 있으며 최대 두 개의 파일 복사본이 컴퓨터에 있을 수 있습니다. 파일의 복사본 중 하나는 설치의 대상 디렉터리에 있습니다. 다른 복사본은 RTM 기준 캐시에 있을 수 있습니다.
  • 애플리케이션의 마지막 서비스가 작은 업데이트(QFE)였을 때 애플리케이션은 기준 수준에 있지 않으며 최대 3개의 파일 복사본을 컴퓨터에 표시할 수 있습니다. 파일의 첫 번째 복사본은 설치의 대상 디렉터리에 있습니다. 파일의 두 번째 복사본은 RTM 기준 캐시에 있습니다. 파일의 마지막 복사본은 최신 기준 캐시에 있습니다.
  • 제품이 제거되면 애플리케이션의 기준 캐시가 제거됩니다.

Windows Installer 버전 3.0부터 애플리케이션에 패치가 적용될 때 설치 관리자가 기준 캐시를 사용할 수 있습니다. 기준 정보는 델타 패치를 적용하거나 패치를 제거하는 동안 파일을 이전 버전으로 되돌리는 데 사용할 수 있습니다. 이렇게 하면 패치 작성자가 더 작은 델타 패치의 이점을 누릴 수 있습니다. 설치 관리자가 델타 패치를 대상 파일에 적용할 수 없는 경우 설치 관리자는 기준 캐시에 저장된 파일을 시작점으로 사용할 수 있습니다. 설치 관리자는 캐시의 모든 가능성을 시도한 후에만 원래 설치 원본을 요청합니다.

다음 지침을 준수하면 패치 작성자가 Windows Installer 버전 3.0 패치 및 기준 캐시를 사용하여 더 작은 델타 패치를 만드는 데 도움이 될 수 있습니다.

  • MsiPatchSequence 테이블을 포함하는 패치를 작성합니다. 이 테이블은 기준 캐시를 사용하는 데 필요하며 Windows Installer 버전 3.0부터 사용할 수 있습니다.
  • 기준 캐싱을 방지하는 정책을 설정하지 마세요. MaxPatchCacheSize 정책의 값은 사용할 수 있는 디스크 공간의 최대 비율을 지정합니다. MaxPatchCacheSize 정책이 0으로 설정된 경우 기준 캐시에 추가 파일이 저장되지 않습니다. 정책이 설정되지 않은 경우 기본값은 디스크 공간의 최대 10%를 사용할 수 있다는 것입니다. 캐시의 총 크기가 디스크 공간의 최대 비율에 도달하면 추가 파일이 저장되지 않습니다. 정책은 이미 저장된 파일에 영향을 주지 않습니다. 캐싱을 사용하지 않도록 설정한 경우에도 설치 관리자는 기존 제품 기준 캐시를 사용할 수 있습니다.
  • 적용된 첫 번째 패치에 MsiPatchSequence 테이블이 포함된 경우 애플리케이션에 대해 캐싱이 사용 설정됩니다.
  • 서비스 트랜잭션의 패치에 MsiPatchSequence 테이블이 포함되지 않은 경우 MsiPatchSequence 테이블을 포함하는 부 업그레이드 패치(서비스 팩)가 제품에 성공적으로 적용된 경우에만 애플리케이션에 대해 캐싱을 사용하도록 설정됩니다.
  • Msimsp.exePATCHWIZ.DLL 같은 패치 만들기 도구를 사용하여 패치 패키지를 생성합니다.
  • 항상 애플리케이션의 RTM 버전 또는 애플리케이션의 부 업그레이드(서비스 팩) 버전에 대한 패치를 대상으로 합니다. PCP(패치 생성 속성) 파일의 TargetImages 테이블에 지정된 대상은 ProductVersion 속성의 처음 세 필드에 정의된 제품 확인 지점이어야 합니다.
  • 작은 업데이트 이미지에서 패치를 대상으로 지정하지 않습니다. 패치 빌드 대상에는 이전의 작은 업데이트 업그레이드 이미지가 포함되어서는 안 됩니다.