DISM 운영 체제 패키지(.cab 또는 .msu) 서비스 명령줄 옵션

Windows 캐비닛(.cab) 또는 Windows 업데이트 독립 실행형 설치 관리자(.msu) 파일과 함께 DISM을 사용하여 업데이트, 언어 팩을 설치 또는 제거하고 Windows 기능을 사용 또는 사용하지 않도록 설정합니다. 기능은 핵심 운영 체제의 선택적 구성 요소입니다.

Syntax

DISM.exe {/Image:<path_to_image_directory> | /Online} [dism_global_options] {servicing_option} [<servicing_argument>]

오프라인 이미지에 대해 다음 운영 체제 패키지 서비스 옵션을 사용할 수 있습니다.

DISM.exe /Image:<path_to_image_directory> [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ] [/Cleanup-Image]

실행 중인 운영 체제에 대해 다음 운영 체제 패키지 서비스 옵션을 사용할 수 있습니다.

DISM.exe /Online [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ] [/Cleanup-Image]

/Get-Help /?

패키지 서비스 명령줄 옵션 바로 뒤에 사용하면 옵션 및 인수에 대한 정보가 표시됩니다.

이미지가 지정되면 추가 항목을 사용할 수 있습니다.

구문:

Dism /Get-Help 

:

Dism /Image:C:\test\offline /Add-Package /?
Dism /Online /Get-Packages /?

/Get-Packages

이미지의 모든 패키지에 대한 기본 정보를 표시합니다. /Format:Table 또는 /Format:List 인수를 사용하여 출력을 테이블이나 목록으로 표시합니다.

구문:

Dism /Get-Packages [/Format:{Table | List}]

:

Dism /Image:C:\test\offline /Get-Packages
Dism /Image:C:\test\offline /Get-Packages /Format:Table
Dism /Online /Get-Packages

/Get-PackageInfo

.cab 파일로 제공되는 패키지에 대한 자세한 정보를 표시합니다. .cab 파일만 지정할 수 있습니다. 이 명령을 사용하여 .msu 파일에 대한 패키지 정보를 가져올 수 없습니다. /PackagePath:<path_to_package>는 .cab 파일이나 폴더를 가리킬 수 있습니다.

/Get-Packages 옵션을 사용하여 이미지에서 패키지 이름을 찾거나 .cab 파일의 경로를 지정할 수 있습니다. .cab 파일의 경로는 오프라인 이미지에서 파일이 설치된 위치가 아니라 패키지의 원래 원본을 가리켜야 합니다.

구문:

Dism /Get-PackageInfo {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}

:

Dism /Image:C:\test\offline /Get-PackageInfo /PackagePath:C:\packages\package.cab
Dism /Image:C:\test\offline /Get-PackageInfo /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Add-Package

이미지에 지정된 .cab 또는 .msu 패키지를 설치합니다.

참고

/Add-Package를 사용하여 온라인 또는 오프라인 Windows 11, 버전 21H2 이상 이미지에 .msu 패키지를 추가할 수 있습니다. Windows 11 버전 21H2 이전의 Windows 이미지로 작업하는 경우 오프라인 대상 이미지에만 .msu 패키지를 추가할 수 있습니다.

하나의 명령줄에 여러 패키지를 추가할 수 있습니다. 각 패키지의 적용 가능성이 확인됩니다. 지정된 이미지에 패키지를 적용할 수 없는 경우 오류 메시지가 표시됩니다. 각 패키지의 적용 가능성을 확인하지 않고 명령을 처리하려면 /IgnoreCheck 인수를 사용합니다.

구문:

Dism /Add-Package /PackagePath:<path_to_cabfile> [/IgnoreCheck] [/PreventPending]
  • /PackagePath는 다음을 가리킬 수 있습니다.

    • 단일 .cab 또는 .msu 파일.
    • 확장된 단일 .cab 파일이 포함된 폴더입니다.
    • 단일 .msu 파일이 포함된 폴더입니다.
    • 여러 .cab 또는 .msu 파일이 포함된 폴더입니다.
  • /PackagePath가 루트에 .cab 또는 .msu 파일이 포함된 폴더를 가리키는 경우 모든 하위 폴더에서도 .cab 및 .msu 파일이 있는지 재귀적으로 확인합니다.

  • 패키지 또는 Windows 이미지에 보류 중인 온라인 작업이 있는 경우 /PreventPending 옵션을 사용하여 패키지 설치를 건너뜁니다.

참고

/Add-Package는 패키지의 적용 가능성 및 종속성에 대한 전체 검사를 실행하지 않습니다.

  • 종속성이 있는 패키지를 추가하는 경우 패키지를 추가할 때 모든 종속성이 설치되었는지 확인합니다.
  • .msu를 추가하는 경우 관련 KB에서 패키지별 설치 지침을 확인해야 합니다.

:

Dism /Image:C:\test\offline /LogPath:AddPackage.log /Add-Package /PackagePath:C:\packages\package.msu
Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab /IgnoreCheck
Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\test\packages\package.cab /PreventPending

/Remove-Package

이미지에서 지정된 .cab 파일 패키지를 제거합니다. .cab 파일만 지정할 수 있습니다. 이 명령을 사용하여 .msu 파일을 제거할 수 없습니다.

참고

이 명령을 사용하여 오프라인 이미지에서 패키지를 제거해도 이미지 크기는 줄어들지 않습니다.

구문:

/Remove-Package {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}
  • /PackagePath를 사용하여 패키지의 원래 원본을 가리키거나, CAB 파일의 경로를 지정하거나, 이미지에 나열된 이름으로 패키지를 지정합니다. /Get-Packages 옵션을 사용하여 이미지에서 패키지 이름을 찾습니다.

:

Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0 /PackageName:Microsoft-Windows-MediaPlayer-Package~31bf3856ad364e35~x86~~6.1.6801.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab

/Get-Features

패키지의 모든 기능(선택적 Windows 기반 기능을 포함하는 운영 체제 구성 요소)에 대한 기본 정보를 표시합니다.

구문:

/Get-Features {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>} [/Format:{Table | List}]
  • /Get-Features는 이미지 또는 패키지의 원래 원본에서 패키지 이름을 찾습니다. 패키지 이름이나 경로를 지정하지 않으면 이미지의 모든 기능이 나열됩니다.
  • /PackageName은 이미지의 패키지입니다. /DISM Get-Packages를 사용하여 이미지에서 패키지 이름을 볼 수 있습니다.
  • /PackagePath는 .cab 파일이나 폴더를 가리킬 수 있습니다.

/Format:Table 또는 /Format:List 인수를 사용하여 출력을 테이블이나 목록으로 표시합니다.

:

Dism /Image:C:\test\offline /Get-Features
Dism /Image:C:\test\offline /Get-Features /Format:List
Dism /Image:C:\test\offline /Get-Features /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
Dism /Image:C:\test\offline /Get-Features /PackagePath:C:\packages\package1.cab

/Get-FeatureInfo

기능에 대한 자세한 정보를 표시합니다. /FeatureName을 사용해야 합니다. /Get-Features 옵션을 사용하여 이미지에서 기능의 이름을 찾을 수 있습니다.

구문:

/Get-FeatureInfo /FeatureName:<name_in_image> [{/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}]

/PackageName/PackagePath는 선택 사항이며 패키지에서 특정 기능을 찾는 데 사용할 수 있습니다.

:

Dism /Image:C:\test\offline /Get-FeatureInfo /FeatureName:Hearts
Dism /Image:C:\test\offline /Get-FeatureInfo /FeatureName:Hearts /PackagePath:C:\packages\package.cab

/Enable-Feature

이미지에서 지정된 기능을 사용하도록 설정하거나 업데이트합니다. /FeatureName 옵션을 사용해야 합니다. /Get-Features 옵션을 사용하여 이미지에서 지형지물 이름을 찾습니다.

구문:

/Enable-Feature /FeatureName:<name_in_image> [/PackageName:<name_in_image>] [/Source: <source>] [/LimitAccess] [/All]

동일한 부모 패키지를 공유하는 기능에 대해 하나의 명령줄에서 /FeatureName 옵션을 여러 번 지정할 수 있습니다.

패키지가 Windows Foundation 패키지인 경우 /PackageName 옵션을 사용하여 패키지 이름을 지정할 필요가 없습니다. 그렇지 않으면 /PackageName을 사용하여 기능의 부모 패키지를 지정합니다.

이미지에서 이전에 제거된 기능을 복원하고 사용하도록 설정할 수 있습니다. /Source 인수를 사용하여 기능을 복원하는 데 필요한 파일의 위치를 지정합니다. 파일의 원본은 탑재된 이미지의 Windows 폴더(예: c:\test\mount\Windows)일 수 있습니다. Windows 병렬 폴더를 파일 원본으로 사용할 수도 있습니다(예: z:\sources\SxS).

여러 /Source 인수를 지정하면 파일이 발견된 첫 번째 위치에서 파일이 수집되고 나머지 위치는 무시됩니다. 제거된 기능에 대해 /Source를 지정하지 않으면 레지스트리의 기본 위치가 사용되거나 온라인 이미지의 경우 WU(Windows 업데이트)가 사용됩니다.

  • DISM이 온라인 이미지에 대해 WU에 연결하는 것을 방지하려면 /LimitAccess를 사용합니다.
  • /All를 사용하여 지정된 기능의 모든 부모 기능을 사용하도록 설정합니다.

:

Dism /Online /Enable-Feature /FeatureName:Hearts /All
Dism /Online /Enable-Feature /FeatureName:Calc /Source:c:\test\mount\Windows /LimitAccess
Dism /Image:C:\test\offline /Enable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Disable-Feature

이미지에서 지정된 기능을 사용하지 않도록 설정합니다. /FeatureName 옵션을 사용해야 합니다. /Get-Features 옵션을 사용하여 이미지에서 지형지물 이름을 찾습니다.

구문

/Disable-Feature /FeatureName:<name_in_image> [/PackageName:<name_in_image>] [/Remove]

동일한 부모 패키지의 기능에 대해 하나의 명령줄에서 /FeatureName을 여러 번 지정할 수 있습니다.

패키지가 Windows Foundation 패키지인 경우 /PackageName 옵션을 사용하여 패키지 이름을 지정할 필요가 없습니다. 그렇지 않으면 /PackageName을 사용하여 기능의 부모 패키지를 지정합니다.

/Remove를 사용하여 이미지에서 기능의 매니페스트를 제거하지 않고 기능을 제거합니다. 기능 세부 정보를 표시하기 위해 /Get-FeatureInfo를 사용하면 기능이 "제거됨"으로 나열되며 /Source 옵션과 함께 /Enable-Feature를 사용하여 복원 및 사용하도록 설정할 수 있습니다.

:

*Dism /Online /Disable-Feature /FeatureName:Hearts
Dism /Image:C:\test\offline /Disable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Cleanup-Image

이미지에 대한 정리 또는 복구 작업을 수행합니다. /AnalyzeComponentStore/ResetBase는 Windows 10, Windows 8.1 및 Windows PE 5.0 이상의 이미지와 함께 사용할 수 있습니다. Windows 10, 버전 1607부터 /ResetBase를 사용하여 /Defer를 지정할 수 있지만 DISM /Resetbase를 완료하는 데 30분이 넘게 걸리는 공장에서는 /Defer를 옵션으로 사용해야 합니다.

/ResetBase 옵션이 마지막으로 실행된 시간을 확인하려면 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing 레지스트리 경로에서 LastResetBase_UTC 레지스트리 항목을 확인합니다.

구문:

/Cleanup-Image {/RevertPendingActions | /SPSuperseded [/HideSP] | /StartComponentCleanup [/ResetBase [/Defer]] | /AnalyzeComponentStore | /CheckHealth | /ScanHealth | /RestoreHealth [/Source: <filepath>] [/LimitAccess]}
매개 변수 설명
/RevertPendingActions 부팅 실패가 발생하면 /RevertPendingActions 옵션을 사용하여 시스템 복구를 시도할 수 있습니다. 이 작업은 부팅 실패의 원인일 수 있으므로 이전 서비스 작업에서 보류 중인 모든 작업을 되돌립니다. /RevertPendingActions 옵션은 실행 중인 운영 체제나 Windows PE 또는 Windows RE(복구 환경) 이미지에서 지원되지 않습니다. 중요: /RevertPendingActions 옵션은 부팅되지 않은 Windows 이미지의 시스템 복구 시나리오에서만 사용해야 합니다.
SPSuperseded 서비스 팩을 설치하는 동안 만들어진 모든 백업 파일을 제거합니다. /HideSP를 사용하여 설치된 업데이트 제어판에 서비스 팩이 나열되지 않도록 합니다. /SPSuperseded 작업이 완료된 후에는 서비스 팩을 제거할 수 없습니다.
/StartComponentCleanup 대체된 구성 요소를 정리하고 구성 요소 저장소의 크기를 줄입니다. /ResetBase를 사용하여 대체된 구성 요소의 기준을 다시 설정하면 구성 요소 저장소 크기를 더욱 줄일 수 있습니다. /ResetBase 옵션을 사용하여 /StartComponentCleanup을 실행한 후에는 설치된 Windows 업데이트를 제거할 수 없습니다. /ResetBase와 함께 /Defer를 사용하여 장기 실행 정리 작업을 다음 자동 유지 관리로 연기합니다.
/AnalyzeComponentStore 구성 요소 저장소의 보고서를 작성합니다. 보고서에 대한 자세한 내용과 보고서에 제공된 정보를 사용하는 방법은 WinSxS 폴더의 실제 크기 확인을 참조하세요.
/CheckHealth 이미지가 실패한 프로세스에 의해 손상된 것으로 플래그가 지정되었는지 여부와 손상을 복구할 수 있는지 여부를 확인합니다.
/ScanHealth 이미지에서 구성 요소 저장소 손상을 검사합니다. 이 작업은 몇 분 정도 걸립니다.
/RestoreHealth 이미지에서 구성 요소 저장소 손상을 검사한 다음 자동으로 복구 작업을 수행합니다. 이 작업은 몇 분 정도 걸립니다.
/Source /RestoreHealth와 함께 사용하여 탑재된 이미지의 Windows 디렉터리 경로와 같이 복구에 사용할 수 있는 알려진 양호한 버전의 파일 위치를 지정합니다.
/LimitAccess DISM이 온라인 이미지 복구를 위해 Windows 업데이트에 연결하지 못하도록 합니다.

:

Dism /Image:C:\test\offline /Cleanup-Image /RevertPendingActions
Dism /Image:C:\test\offline /Cleanup-Image /SPSuperseded /HideSP
Dism /Online /Cleanup-Image /ScanHealth
Dism /Online /Cleanup-Image /RestoreHealth /Source:c:\test\mount\windows /LimitAccess

자세한 내용은 Windows 이미지 복구를 참조하세요.

제한 사항

  • 오프라인 이미지에 패키지를 설치하는 경우 온라인 작업이 보류 중이기 때문에 패키지 상태는 "설치 보류"입니다. 즉, 이미지가 부팅되고 온라인 작업이 처리될 때 패키지가 설치됩니다. 후속 작업이 요청되면 이전 보류 중인 온라인 작업이 완료될 때까지 처리할 수 없습니다. 보류 중인 온라인 작업이 있을 때 패키지 설치를 건너뛰기 위해 /AddPackage를 사용하여 패키지를 추가할 때 /PreventPending 옵션을 사용할 수 있습니다.
  • 일부 패키지는 먼저 다른 패키지를 설치해야 합니다. 종속성이 충족될 것이라고 가정해서는 안 됩니다. 패키지에 종속성 요구 사항이 있는 경우 응답 파일을 사용하여 필요한 패키지를 설치합니다. 응답 파일을 DISM에 전달하면 여러 패키지를 올바른 순서로 설치할 수 있습니다. 자세한 내용은 DISM을 사용하여 오프라인으로 패키지 추가 또는 제거를 참조하세요.
  • 패키지는 명령줄에 나열된 순서대로 설치됩니다.
  • DISM을 사용하여 Windows PE 이미지의 선택적 구성 요소를 나열하는 경우 선택적 구성 요소는 서비스 작업이 성공한 경우에도 항상 보류 중인 것으로 나열됩니다. 이는 의도된 것이며 추가 작업이 필요하지 않습니다.

DISM이란?

DISM 이미지 관리 명령줄 옵션

DISM(배포 이미지 서비스 및 관리) 명령줄 옵션