Super Grate is a tool part of the Super Suite that can perform remote execution of Microsoft's USMT (User State Migration Tool) on any domain joined PC, or local execution on any non-joined PC.
Super Grate fully supports unification of its various components, for example:
Super Grate supports all of this by simply supporting UNC paths.
Try placing SuperGrate.exe on a shared folder and configuring its settings and paths to also point at a shared folder.
You can also set permissions on the folders to lock down what Super Grate users can do. (for instance: write protecting the SuperGrate.xml)
After running the steps above, Super Grate should run without a hitch.
Backing up a user profile using Super Grate is "Super Easy".
Restoring a User Profile is just as easy as Backing up a User Profile.
A Full Migration is a Super Grate sequence where both the "Source Computer" and "Destination Computer" are occupied.
When the backup / migration is started, Super Grate will back up the user profiles selected from the "Source Computer" to the store, then connect to the "Destination Computer" and apply the user profiles selected from the "Source Computer".
There are options in the SuperGrate.xml and settings menu that can change the behavior presented above.
Super Grate supports configuration over CLI (Command Line Interface) switches. This means you can create custom shortcuts and launch Super Grate with specific settings.
Note: CLI Switches override SuperGrate.xml settings.
To use a CLI switch, do the following:
For a list of settings, see: SuperGrate.xml
Compiling Super Grate is easy to do; firstly, you need to download and install a copy of Microsoft's Visual Studio (VS). -- The community edition will do -- Once done, clone this repository using VS' "Get Started" page. Lastly, open the solution and press the green "Start / Play" button. This will compile and start Super Grate.
To make a release build of Super Grate & create a NSIS installer, do the following:
While using Super Grate, you might encounter errors. You may post any errors you get to here.
Below are some notes about logging:
The backup store or just "store" when using Super Grate is a directory on a share drive or local drive that "stores" the user profiles after they have been backed-up. Weather you performed a full migration or just a simple profile backup, the data transferred is stored here.
The file structure of the store is as follows:
An example of the above may look like this below:
Super Grate supports being "Portable" meaning that Super Grate can be run in a stand-alone environment, like off of a USB thumb drive, or external HDD drive.
All you need to do is download the Super Grate installer, and de-select all components in the installer except "Super Grate", then in the next slide select the location where SuperGrate.exe will be copied. From there, you can move SuperGrate.exe to wherever you want and run it normally.
Super Grate will download any necessary dependencies when they are needed.
A portable version of Super Grate allows the operator to back up profiles to a USB thumb drive or USB external HDD easier, and quicker. It also helps in scenarios where the computer you are trying to back up has no disk space available for scratch space.
The SuperGrate.xml is a file that is automatically generated if it doesn't exist in the "current working directory". This file contains the preferences from the "Settings" menu.
Below is an example of the SuperGrate.xml file:
<?xml version="1.0" encoding="utf-8"?> <SuperGrate> <!--The UNC or Direct path to the USMT directory. (E.g: .\USMT\X64)--> <USMTPathX64>.\USMT\X64</USMTPathX64> <USMTPathX86>.\USMT\X86</USMTPathX86> <!--Local path on source computer where Super Grate will run USMT from. (E.g: C:\SuperGrate)--> <SuperGratePayloadPath>C:\SuperGrate</SuperGratePayloadPath> <!--The UNC or Direct path to the USMT Migration Store (E.g: \\ba-share\s$ or .\STORE)--> <MigrationStorePath>.\STORE</MigrationStorePath> <!--ScanState.exe & LoadState.exe CLI Parameters. See: https://docs.microsoft.com/en-us/windows/deployment/usmt/usmt-command-line-syntax --> <ScanStateParameters>/config:Config_SettingsOnly.xml /i:MigUser.xml /c /r:3 /o</ScanStateParameters> <LoadStateParameters>/config:Config_SettingsOnly.xml /i:MigUser.xml /c /r:3 /lac /lae</LoadStateParameters> <!--Delete the user from the migration store after a restore? (store to destination)--> <AutoDeleteFromStore>false</AutoDeleteFromStore> <!--Delete the user from the source computer after a backup? (source to store)--> <AutoDeleteFromSource>false</AutoDeleteFromSource> <!--Prevent NT AUTHORITY & NT SERVICE accounts from being listed?--> <HideBuiltInAccounts>true</HideBuiltInAccounts> <!--Prevent unknown accounts from being listed?--> <HideUnknownSIDs>false</HideUnknownSIDs> <!--Write log to disk on exit. (Leave blank to disable) (E.g: \\ba-share\s$\Logs or .\Logs)--> <DumpLogHereOnExit></DumpLogHereOnExit> <!--List of columns to display for the Source or Store users.--> <ULSourceColumns>0,3,9</ULSourceColumns> <ULStoreColumns>0,1,5,6,4</ULStoreColumns> </SuperGrate>