SCCM PowerShell Reference : Configuring File Replication

This is a little quicky.  I’ve found the documentation both on TechNet and in PowerShell’s in-line help to be very lacking for the new Configuration Manager Commandlettes, so I did the work to figure them out on my own and will post some of what I’ve learned here.  I recently needed to configure Bandwidth Control for a client and loathed manually setting these options on all of the servers, so I turned to PS.   In my example, I needed to restrict package transfer at certain times, and during those times, also control how much bandwidth was being used.

To limit package transfers between all servers to Medium and High priority between 6 and 5:00 (corresponding to the Schedule Tab under Administration|Hierarchy Configuration|File Replication)

Get-CMFileReplicationRoute | Set-CMFileReplicationRoute -DaysOfWeek Monday,Tuesday,Wednesday,Thursday,Friday -ControlNetworkLoadSchedule -TimePeriodStart 6 -TimePeriodEnd 17 -AvailabilityLevel MediumHigh

The Options for -AvailabilityLevel are :

  • All – transfer all packages
  • Closed – transfer no packages
  • High – transfer only High Priority Packages
  • MediumHigh – transfer Medium and High Priority Packages

Set the bandwidth consumed between all servers to 30% between 6 and 5:00 (Corresponding to options you would set on the ‘Rate Limits’ tab)

Get-CMFileReplicationRoute | Set-CMFileReplicationRoute -Limited -LimitAvailableBandwidthPercentage 30 -LimitedTimePeriodStart 6 -LimitedTimePeriodEnd 17

Combining the two commands proved to be difficult, as PowerShell would get hung up on -Limited thinking it was an ambiguous parameter.  I ended up running them separately.  Hope this helps!


Fixing Cisco VPN AnyConnect “Multiple Local users are currently logged into your computer”

Since I’ve rebuilt my home testlab as a Server 2012 R2 box, I’ve been unable to connect to my companies VPN, which has caused me a world of…well, minor inconveniences. This will not do!

The message I would get upon connection was:

AnyConnect profile settings mandate a single local user, but multiple local users are currently logged into your computer.  A VPN connection will not be established.
AnyConnect was not able to establish a connection to the specified secure gateway. Please try connecting again.

Continue reading

Differences in WinPE Versions

I ran into an issue at a client in which the person who setup their SCCM infrastructure left and I needed to determine which version of WinPE we using for our Task Sequence.

You can see the WinPE OS version under Computer Management\Operating System Deployment\Boot Images\Boot Image Name, Properties, but that doesn’t really tell you which version of Windows PE you are using, and you might need to know that from time to time.  For instance, if you’re using Dell or HP’s Driver CAB files, they are distributed based on WinPE version for underlying OS compatibility.


The primary difference in WinPE versions is the core kernel code that WinPE is built from.  This is important to note, as certain utilities may not work on older versions of WinPE.

In case you haven’t memorized all of the system major release version numbers of Windows, I’ve complied the below chart to assist you, slacker.

WinPE Version # PE Version Derived From
WinPE 1.5 5.1.x Win XP SP2
WinPE 2.0 6.0.x Vista
WinPE 3.0 6.1.7600.16385 Windows 7
WinPE 4.0 6.2.x Windows 8
WinPE 5.0 6.3.x Windows 8.1?