Category: Tech

Anything and everything I write that has something to do with tech. Maybe it’s a post about the time I blew up that server in 2003 because I didn’t know what bridged networking really meant. Sorry Roger!

Rule #1 of “Time to Restore from Backups” Club is Do Not Panic

Oh the lovely “Restore from Backup” dread that will only open pit in your stomach.

I received a panicked call from a friend recently who had the mistaken fortune of running a bad robocopy job that literally wiped out everything on their file server. When I say everything, I mean everything.

They had their Client backups on that server. Their file history on that server, folder redirection on that server. EVERYTHING.

When was their last reliable backup? Three months previous.

What had they done between panic and calling me? They did a rush job of buying recovery software and restoring from one drive with the live data. Unfortunately they restored to a drive that had only two weeks previous had everything on it. Using restore software on that drive and restoring to a different drive would have put their recovery point objective (RPO) only two weeks back.

Turns out its rather difficult to use recovery software on SSDs and get reliable data. This was something I wasn’t prepared for.

 

Workspace ONE PowerShell cmdlets

I’m going to reopen the PS1 script repository on GitHub. There is a significant amount of work to be done, but I don’t think I will be compelled to fix any of it unless it’s publicly accessible and I spot someone looking into it.

I was asked again today for a script to send a CustomMDMCommand for LostMode to a device via the API. Although this worked when I wrote it, there was a console discrepancy where the console didn’t actually reflect the device was in LostMode. The VMware documentation does specifically say to not issue an API command for anything that already has a function built in the console. This is clearly a good example of why not to do that.

In either case I would have been very quick to point my colleague to my repository had it been publicly accessible.

Making sense of the Workspace ONE Settings Summary XML export

Although there is no easy button to perform an Import of the XML that is exported, there is still significan tvlaue in documenting the settings of a particular OG.

 

Using Virtual Studio Code and the XML format plugin, you can get a very clear picture of your exported .xml.

Change the VSCode tokenization maximum length to 1,000,000 or greater. That is because the .xml comes out as one enormous string without carriage returns or line breaks. Once tokenization is enabled at a huge value, close and reopen the .xml file.

 

Right click and select Format Document.

 

Now the XML should be formatted in a useful fashion.

 

But… what does it mean? How do I actually find my settings?

First off… there are some items that aren’t captured, regardless of the VMware KBA stating otherwise. Most obvious is any Advanced settings you may have for Directory Services.

But you can search for any settings you are likely to have customized to understand what section you need to look in.

For example:

Devices & User -> Apple -> Apple iOS -> Managed settings iOS_ManagedSettings

Intelligent Hub Settings : iOS_Agent

Apps_SecurityPolicies

Apps_Settings

Enrollment_Authentication Device_EnrollmentAuthentication

Enrollment_Restrictions – Device_EnrollmentRestrictions

: Device_Enrollment

Device_EnrollmentManagementMode

Shared Devices: Apps_SharedDevice

 

Create new heirarchy for easier understanding:

create0hierarchy-grouping xml : search Google for linq example on m$.com. Then move to PS