ConfigMgr SCCM Prestage Packages to a Remote DP Using PowerShell Script

In this post I will explore the ConfigMgr SCCM Prestage Packages to a Remote DP Using Powershell Script. In SCCM 2007, I used to ship USB drives with PCK files to different geographical locations to preload the content (packages) onto secondary sites.

Prestaged content is a reduced file that holds the content files and connected metadata for a content type. You can then physically import this content to another site server, a secondary site, or a distribution point.

That was achieved using preloadpkgonsite.exe (The Preload Package Tool). However, as mentioned above, the preloadpkgonsite.exe won’t work in SCCM 2012, so we should have another solution.

I will share a very useful script by Ken Smith (PFE). This script is very helpful in preloading the packages/content in SCCM 2012 to remote DPs. Read his full post from here.

Patch My PC

ConfigMgr SCCM Prestage Packages to a Remote DP Using Powershell Script

One thing we can utilize is to pull DP, but my first experience with PULL DP was not very exciting. There is scope for improvement:).

PS C:\>.\CloneDP.ps1 -Prestage -SourceDP sccm01.contoso.com -TargetDP 
DP01.contoso.com -ContentShare \\dp01.contoso.com\c$\pkgx
$DeploymentPackages = Get-CMDeploymentPackage -DistributionPointName $SourceDP
$command = "Publish-CMPrestageContent "
Switch ($DeploymentPackage.ObjectTypeID) {            
        2  { $command += "-PackageID $($DeploymentPackage.PackageID) " }
        14 { $command += "-OperatingSystemInstallerId $($DeploymentPackage.PackageID) "}           
        18 { $command += "-OperatingSystemImageId $($DeploymentPackage.PackageID) "}
        19 { $command += "-BootImageId $($DeploymentPackage.PackageID) "}  
        23 { $command += "-DriverPackageID $($DeploymentPackage.PackageID) "}
        24 { $command += "-DeploymentPackageID $($DeploymentPackage.PackageID) "}
        31 { $command += "-ApplicationName '$($DeploymentPackage.Name)' "} 
    }
NamePackageType
Package2
Driver Package23
Task Sequence Package20
Software Updates Package24
Device Setting Package21
Virtual App31
Application31
Image Package18
Boot Image Package19
Operating System Install Package14
ConfigMgr SCCM Prestage Packages to a Remote DP Using PowerShell Script – Table.1
$command += "-FileName '$($env:TEMP)\$($DeploymentPackage.PackageID).pkgx'” `
+ “ -DistributionPointName $($SourceDP)"
ConfigMgr SCCM Prestage Packages to a Remote DP Using PowerShell Script - Fig.1
ConfigMgr SCCM Prestage Packages to a Remote DP Using PowerShell Script – Fig.1

We are on WhatsApp now. To get the latest step-by-step guides, news, and updates, Join our Channel. Click here – HTMD WhatsApp.

Author

Anoop C Nair is Microsoft MVP! He is a Device Management Admin with more than 20 years of experience (calculation done in 2021) in IT. He is a Blogger, Speaker, and Local User Group HTMD Community leader. His primary focus is Device Management technologies like SCCM 2012, Current Branch, and Intune. He writes about ConfigMgr, Windows 11, Windows 10, Azure AD, Microsoft Intune, Windows 365, AVD, etc. 

1 thought on “ConfigMgr SCCM Prestage Packages to a Remote DP Using PowerShell Script”

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.