Customizing Microsoft Office versions served by an MAU Caching Server

I have been running a Microsoft AutoUpdate (MAU) Caching Server for a couple years now and have always allowed it to download and serve everything, even applications we don’t use. My thinking was that I’d rather have something and not need it, than need it and not have it.

This has never been an issue for older products like Office 2011 and Lync (or even current products like Company Portal and Skype for Business) because combined they are only around 500 MB. The fact that Office 2011 and Lync are no longer receiving updates means the bits on disk haven’t changed in over a year and don’t need to be downloaded with each run of MAUCacheAdmin.

However things changed with the release of Office 2019 last fall. While Office 2011 is no longer being maintained, Office 2016 will continue receiving security updates until October 2020. If you have already transitioned to Office 2019 this means that MAUCacheAdmin will continue to download almost 6 GB of installers and updaters every month that you don’t need.

Thankfully it is easy to customize this behavior so read on if you’d like the details.

As of today a complete sync of current MAU data is 18.47 GB. Of this total Office 2019 accounts for 12.16 GB, Office 2016 for 5.8 GB, Office 2011 for 385.1 MB and the miscellaneous other apps for 143.8 MB. So customizing what application data MAUCacheAdmin syncs can result in considerable space savings and also shortened run times. This is especially true if you haven’t upgraded to 2019 yet.

At it’s heart MAUCacheAdmin is just a bash script, so editing it is easy. You can view the full code online at Github. To control which applications and versions are downloaded to your local MAU Caching Server you simply need to comment out the appropriate lines.

We’ll disable the syncing of Office 2011, 2016 and Lync in the examples below. There are two sections you need to edit, one for the applications and one for the collateral. They are located together in the code.

First the applications:

BuildApplicationArray () {
# Builds an array of all the MAU-enabled applications that we care about
	MAUAPP[0]="$MAUID_MAU3X"
	MAUAPP[1]="$MAUID_WORD2019"
	MAUAPP[2]="$MAUID_EXCEL2019"
	MAUAPP[3]="$MAUID_POWERPOINT2019"
	MAUAPP[4]="$MAUID_OUTLOOK2019"
	MAUAPP[5]="$MAUID_ONENOTE2019"
#	MAUAPP[6]="$MAUID_WORD2016"
#	MAUAPP[7]="$MAUID_EXCEL2016"
#	MAUAPP[8]="$MAUID_POWERPOINT2016"
#	MAUAPP[9]="$MAUID_OUTLOOK2016"
#	MAUAPP[10]="$MAUID_ONENOTE2016"
#	MAUAPP[11]="$MAUID_OFFICE2011"
#	MAUAPP[12]="$MAUID_LYNC2011"
	MAUAPP[13]="$MAUID_SKYPE2016"
	MAUAPP[14]="$MAUID_INTUNECP"
	MAUAPP[15]="$MAUID_REMOTEDESKTOP10"
}

Followed by the collateral:

BuildCollateralArray () {
# Builds an array of MAU collateral file-paths which we'll use later for downloading XML and CAT files
	DOWNLOADARRAY[0]="$1"$MAUID_MAU3X
	DOWNLOADARRAY[1]="$1"$MAUID_WORD2019
	DOWNLOADARRAY[2]="$1"$MAUID_EXCEL2019
	DOWNLOADARRAY[3]="$1"$MAUID_POWERPOINT2019
	DOWNLOADARRAY[4]="$1"$MAUID_OUTLOOK2019
	DOWNLOADARRAY[5]="$1"$MAUID_ONENOTE2019
#	DOWNLOADARRAY[6]="$1"$MAUID_WORD2016
#	DOWNLOADARRAY[7]="$1"$MAUID_EXCEL2016
#	DOWNLOADARRAY[8]="$1"$MAUID_POWERPOINT2016
#	DOWNLOADARRAY[9]="$1"$MAUID_OUTLOOK2016
#	DOWNLOADARRAY[10]="$1"$MAUID_ONENOTE2016
#	DOWNLOADARRAY[11]="$1"$MAUID_OFFICE2011
#	DOWNLOADARRAY[12]="$1"$MAUID_LYNC2011
	DOWNLOADARRAY[13]="$1"$MAUID_SKYPE2016
	DOWNLOADARRAY[14]="$1"$MAUID_INTUNECP
	DOWNLOADARRAY[15]="$1"$MAUID_REMOTEDESKTOP10
}

And that is all there is to it! Don’t forget to cleanup the old files you are no longer syncing or serving to reclaim that disk space on your server.

There is only one downside I can think of when removing applications from your local cache. Along with downloading every update I’ve also always registered every possible application with MAU via a configuration profile, even if we don’t install them. (Because if they do somehow end up on disk I want them updated even if they aren’t supposed to be there.)

This means that if you are using a “ManifestServer” as your sole means of controlling available Office updates, without a hybrid approach, and remove an application that you have deployed to user computers from the cache as outlined above, there will be no way for it to update. However if you are just using an “UpdateCache” you could sync and serve only standard applications locally and allow any outliers to be downloaded from Microsoft’s CDN. See my article on MAU Caching Server Options and Behaviors for details.

Let me know if you have any questions and I’ll be happy to help or join the #mau4 channel in the MacAdmins Slack for more discussion with other users.

Leave a Reply

Your email address will not be published. Required fields are marked *