How to Use USMT in SCCM for User Migration (ScanState, LoadState, MigApp, MigUser, MigDocs)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

Hey Everyone!

Justin here from Patch My PC! Just posted a new video guide, it's a deep dive into USMT and all the options and scenario's for USMT in SCCM. Also, if anyone is at #MMSDE ping me if you see me! - Justin Chalfant

Overview

  • In this video guide, we will be covering how you can use the USMT tool within Microsoft SCCM. This will cover common options like scanstate.exe and loadstate.exe as well as the default XML files used for determining what data to backup and restore.

Topics in Video

Helpful Resources:

👍︎︎ 8 👤︎︎ u/PatchMyPCTeam 📅︎︎ Dec 03 2018 🗫︎ replies

O0o0o0o0o0o0 this is awesome dude! I wish I had this when I was setting up USMT with SCCM for my organization. Never went through more trial and error in my life.

👍︎︎ 5 👤︎︎ u/eb2292 📅︎︎ Dec 03 2018 🗫︎ replies

Awesome stuff Justin. Your Microsoft SCCM Guides is of massive use to me as I am very new to this stuff.

Thanks again.

👍︎︎ 3 👤︎︎ u/TheGift1973 📅︎︎ Dec 03 2018 🗫︎ replies

This is great. Just wondering. What if you want to capture a bunch of files on a machine, but you're not entirely sure of the new machine a person will be getting. We are in the process of replacing some of our fleet, but we don't know the 'new' computer a person will be getting just yet, until the day we install them. Can we store the captures and then restore later?

I'm asking this, because I wouldn't be able to create the 'computer association' properly with the source and the destination, in the User State Migration area of SCCM.

👍︎︎ 3 👤︎︎ u/maggoty 📅︎︎ Dec 03 2018 🗫︎ replies

I was only search for UMST materials this morning. Perfect timing, thank you

👍︎︎ 2 👤︎︎ u/project_me 📅︎︎ Dec 03 2018 🗫︎ replies

Excellent! Hope it helps.

👍︎︎ 1 👤︎︎ u/PatchMyPCTeam 📅︎︎ Dec 03 2018 🗫︎ replies

This is great, however it seems SCCM's State Migration Point doesn't seem to do any sanity checks for the permissions it requires and often fails if the permissions aren't set up appropriately. This post was a great help after months of frustration comparing easy textbook installs like the one in your video and the reality that nothing is ever that easy.

Nothing is quite as frustrating in our line of work than being stuck on the following step:

  1. Install the software.

Edit: Also, create your folder in the root of the drive.

👍︎︎ 1 👤︎︎ u/ianthenerd 📅︎︎ Dec 04 2018 🗫︎ replies
Captions
hi my name is Justin shop and I'm the founder and engineering lead at patch my PC we developed a third-party patch management solution that integrates into Microsoft configuration manager it's been a little longer than normal since my last video about a month so it's been pretty busy with the holidays as well as our second European user group tour in the Netherlands Belgium Germany and Switzerland that David James also attended from the product group and MVPs put on in the different countries so I was a great event we were happy to sponsor that but I'm excited to get back to my video tutorial series so in this video we're me covering a user state migration and this is actually directly based on your feedback from YouTube Reddit and Facebook so a lot of different posts they're asking about you SMT so that's what we're going to be covering today so user state migration tool with regards to config manager is a tool within the Windows ADK that allows you to capture and restore user data when you're doing different types of migrations so the key piece of you SMT is really a tool outside of SCCM now within us MT the two key components here are utilities call it scan state and load state XE so these are the actual tools that are used to save data and load data from a source and destination computer within scan state and load state we do have additional parameters that we can use to choose what you want to migrate with different xml's so there's three native ones Meg app make Doc's and make user now if any of these native ones don't have what you need to migrate you can always create your own custom XML to define different Reg keys files etc that you want to migrate from a source to destination computer now within the XML I kind of briefly go over what these different ones migrate for you so by default when SCCM does a save and restore using us MT it's going to use the MiG app and MiG Doc's XML file so the the first one that we'll look at here is the MiG app so I'll include a link to this documentation but by default Meg app when it's used it's got a known list of applications that it can migrate settings for so I'll include this link for sure but there's gonna be a few different things going on here see if I can find that here we go so here's the MiG app XML so there's a there's a few apps here so reader quick time there's about 30 different built-in apps now if you're using the latest version of you SMT it will also get the latest versions of office 2016 as well so it can migrate all your office settings when you migrate from one PC to the next so here's the list of kind of all the apps that are built in now the next one that we'll cover is Mick Docs so that's gonna be what's used within SCCM by default so Mick Docs is a little bit more inclusive meaning that it will copy more files in more locations as compared to the MiG user so for example Mick Docs here will also migrate things that are on the route of the C Drive for example there's a few directories that exclude so things like winter program files program data and users but all folders in the root of the drive will be copied all files in the root of any user profile along with anything within the user profile so things like documents downloads etc and there's a list of different common shared folders so common desktop favorite documents etc and of course any user folders now MiG Docs does actually include a few additional directories within the user profile that MiG user does not so for example the Downloads TV etc so if we compare all the data that's in Mick Docs to make user we can see that it's quite a bit more so for example if we look at mid user here we can see that it's getting just the music desktop a few of the common ones but for example it doesn't get downloads it's not going to get things on the root of C or the root of the profile and it will also migrate any files with known extension types as well here alright so I think that's a good overview of us MT and how it corresponds and how it's going to run to actually capture user state now within SCCM there's a few components that allow us to help manage where the data get stored when we're migrating from one PC to the next along with creating the associations from the source and destination computers so in the first example we're gonna cover going from a Windows 7 computer to a brand new Windows 10 device and in this case we need to store the data somewhere remote since it's a completely separate machine so the first thing with an SEM that we want to do is install our state migration point that's going to be a share that any user data from us MT that gets captured can be stored until it gets restored to the destination machine so on my site server you could of course add this to any distribution point or site system or create a new one depending on what you need so I'm going to go ahead and add this to my existing site server we're gonna add the state migration point and I have a folder on my local machine here so under the iDrive SMP share for state migration point share and that's where we're gonna create our user state path we're gonna say we want to save user State unless there's only 5 gigabyte left on this machine on that disk then we don't want to save it and a maximum of 100 captures can be stored here at one time we're gonna say we're gonna delete the data after it's restored after three days so once it goes to that destination machine that is restored to will retain that data for up to three additional days you can of course assign a boundary group so by default we're gonna just add our lap group because that's already associated with this site system but you can of course have multiple state migration points to make sure that clients use local DPS or local site systems where they're actually saving and restoring that content to so like many components if we go ahead and look at our site server logs these state migration points going to be installed from the site comp component all right so we can see that's currently installing the state migration point role so this shouldn't take but a minute or two there we go we can see that it's done now within our logs there's going to be this new SMP manager dot log so that's our state migration point manager and what we can see here is it went out and it created the share for us within that directory so if we come back here and refresh this folder we can see that it's created a hidden share that's going to be used to actually store the data all right so now that we have our state migration point and we have a general understanding about what US MT does and the two different components involved the first thing that we look at here is our US MT packets or user state migration tool package this is a package that gets automatically created when you install at CCM this is a part of the Windows 10 80k so this is one of the prerequisites that you would have to have that would be installed for SCCM so you should already have a default u.s. empty package and you can see that it's installed in whatever folder that you installed the ADK to that's where it's going to create the package from so what we're looking at first is just using the default migration with no custom options or XML so the first thing that we want to do is go under our assets and compliance user state migration and let me go ahead and delete one of these test ones that I had in here to begin with now if you're running through a scenario where you want to replace a machine so you want to migrate from one machine to another that's when we would have to use the migration point so the first thing that we would need to do in order to store that on the migration point we would need to create an association so here we go the first step or second step after adding our state migration point is to create the computer Association of the source device right and the destination device so if we come back to our console we're going to create an association the source computer is going to be a Windows 7 device so in this simulation we're going to be going from Windows 7 64 bit to a Windows 10 64 bit device so here we go under user accounts we'll just choose to capture and restore all user account here and then we'll do okay so we've got the migration or the association set up so next thing that we have to do is actually capture the data from the source so in order to do that we do need a new task sequence so if we look under operating systems cast sequences we're going to go ahead and create a new custom task sequence so we'll go ahead and do new here we're going to create a custom one and we'll call this us MT - capture do next here and then close so jumping back to our Doc's there's a few things that we have to do here for the capture so there's a request state store step so that's going to get your state migration point we then need to either capture or restore the user state and then we need to release the state store to let it know that it's done capturing or restoring so in this case this is going to be our capture task sequence so we're going to come back in here we're going to edit it and we're going to add a new step user state and we're going to request the state store now I have notice depending on your share permissions by default computers are not going to have access to that state migration point share so you can go ahead and enable access for the network access account in case you know if you didn't assign permission specifically to domain computers it would fail to connect to that now in this scenario we're going to be requesting the state for capturing the Machine right since this is the capture task sequence the next step that we need is to actually capture the data so we're gonna go ahead and do user state and then capture user state so there we go we're gonna browse out and we're going to choose that default u.s. MT package that was created when we installed our site we do okay on that we're gonna use the default options here so capture all user profiles using standard options now when you enable the standard options SCCM is going to use the MiG app in the mik doc so if we recall the MiG Doc's does include a few additional directories like the root of C the root of profile and all file extensions within those directories that are not specifically excluded so this is going to be more inclusive than what you would get if you did big user instead of make Doc's and then the final step we're gonna release the state store just to let it know that we're done with the capture so this all looks good and we'll go ahead and do okay on that now within here we're gonna go ahead and deploy this to our source machine so today I don't have a collection with that machine in it but I have pre staged an empty collection actually I think I think my capture machine is actually in this collection so we will target this us empty capture collection we're gonna make it available so if this was a required capture you could of course make it required and it would automatically kick off in our case for this demonstration we'll make it available and we'll manually kick off the capture through Software Center we'll leave all the defaults for user experience alerts and distribution points and then okay now within this collection if we look under here that I deployed it for the capture it's just a manual direct rule just for this simulation with that Windows 7 device now when I used to work with customers sometimes you know we would assign different scenarios for replacements by like organizational unit or maybe a security group with an ad and you could simply create your capture collection based on that type of criteria and then kind of target all of those to capture that data since we're only working with one machine here just for this demo we went ahead and just added that machine directly for the capture sure just to speed things up we'll see if we can go ahead and get this device to check-in so we're going to initiate a computer policy and then okay alright so over on that Windows 7 64 bit we just saw the notification come up so if we go and click on Software Center since this task sequence is assigned to just through us empty and there's no boot image it's actually going to show up in software Center as an application so if we go ahead and look here we can see that it's an app all right and then here's our cast sequence so there's going to go ahead and capture so let's go and click that and click install so that's going to get the capture running it's going to be a task sequence just like anything else so if we look in our CCM log folder we can see we have our SMS TS log folder where it's actually on logout our task sequence so if we go ahead and open that up we can see that what's going to happen it's going to request the state store so it found that we have a state migration point it can use to store the capture so that looks good now it's going out and downloading the u.s. empty package so that's going to contain the scan State the load State along with all the additional files that are required for us MT to run there we go so it's now just about to the capture step so we should see the command line kick off with the scan state here momentarily all right here we go so we can see that it's running scan State from the cache folder right and it's telling it where to save it to so it's saving it up to that state migration point share here we can see that it's using the MiG app and the MiG Doc's so we can see that this is really just config managers really just calling scan state to save the data and it's saving it up to that state migration point so as this runs let's go ahead and copy that share path I'm not sure if my account will have permissions go ahead and take a look let's go ahead and paste that in there we go it looks like it does so this is actually copying the files from the machine and if we look in that TS log we can actually see the scan state log as well so this is actually the component doing the capture of the data so we can see there's a lot of red in here that's just because it has it's not in a CM trace format so it's automatically highlighting any text within this log that says error or warning so that's why we're seeing quite a bit of stuff going on here even though things that are happening ok really what we're looking at is that we just returned with an exit code of zero and it's a successful test sequence but scan state will give you more details if you ever had a failure in the actual capture and while we wait for that to capture just showing you a few things so we have some documents in My Documents folder for the user Justin we have some desktop icons here and some files on the desktop we also have custom wallpaper there's just a system Center wallpaper here if we open up Internet Explorer we can see we have a home page currently set to patch my PC along with some favorite options right here in the favorites bar as well but it looks like that capture did complete so if we go ahead and look back at that share where it actually stored that we can see that it stored it in a dot MiG file for migration this is actually the same format that you would get if you're using the easi transfer wizard for example within Windows 7 or Windows 10 so just kind of like a compressed file that's encrypted based on the encryption key that SCCM automatically assigns when we made that Association so at this point we've got our capture done so this looks good so the next thing that we'll look at is our source computer so within there we want to create our restore cache sequence so we'll go ahead and create a new one we're going to do a new custom task sequence and we'll call it you SMT - restore we don't need a boot image and then we'll do ok here there we go so under your you SMT we're gonna request the state store but for here we want to make sure that we are restoring to an from another computer that captured will also choose the option to use the network access account we're then going to add the step to restore user state we're going to also use our default u.s. empty package here and then finally once that's done we're then going to release the state store to let us know that we have now restored the data and then it can delete it after those three days that we assigned now we're going to deploy this to a collection this is also a u.s. empty collection that contains the Windows 10 device I want to restore to so this is just the direct membership for this example so we'll deploy it we'll keep it available so we ought we manually launch it through Software Center you could of course have this required assuming that the capture was already performed you can make that required so it automatically restores it without any user interaction so we leave all the defaults on deployment and have that deployed all right so we'll come back to our collection here and let's go ahead and have this machine check in for policy to see if we can get this showing up a little faster now I do want to show a few things back on that Windows 7 device so I have a few documents that I saved on the root of C so we have the SCCM client installation directory and we also have this Java update that we are using for testing our patching so these are both on the root of C's since we're using the default options which will be make Doc's that should include any non-standard file within folders on the root of C also on our user profile under Justin we do have this installation file directly in the profile so that should get migrated since Mick Docs does everything even in the default profile and also in the Downloads folder it looks like that file might have actually been removed before I did the capture so just in the root of the profile as well as the root of C we have a couple things that should get migrated because we use the default options which would be MIG Docs which includes additional files as compared to MIG user so over here on the Windows 10 device let's see if we have this showing up in software Center yet not quite yet that policy must not have mapped in the database let's go ahead and request one more time all right so that policy request did get the restore task sequence so that looks good let's go ahead and kick this off before that gets running let's go ahead and look at what we currently have going on on this Windows 10 machine so I'm logged in just using the standard administrator account so we can see that we don't have any user name just in here so let's go ahead and look at our TS log there we go so we're now at the step to restore user state so it's downloading our us MT content and then instead of running scan state it's going to run the load State to actually restore the capture data from that Windows 7 device that's up on our state migration point all right so here we go we do a quick zoom on that I don't think I have zoom it but we can see that instead of running scan State or running load State we're pulling the Mik file from that UNC cher we're decrypting it or unencrypted it using our key file from SCC M we're using our default options which will be this MIG Doc's and MIG app XML we can see that we've already got some content pulling down if we look back in that SMS TS folder we can see instead of scan state that log the load state is actually what's going to be doing the restore here so if you had any failures during the restore the load State would probably give you more details than the generic error in the SMS TS log so we can see that we've got our profile coming in so that's looking pretty good if we look at my documents it looks like it's already starting to restore that if we look at the root of C let's see if it's got anything going down there we can see it's got that Java update file already restored it's r2 restored the client installation for the CCM setup that we copied on the root of C on that Windows 7 machine as well so there we go looks like the installation is complete so let me go ahead and log out of this Windows 10 machine as the administrator and then we'll go ahead and log in using my justin domain account here so in this scenario this would be going from a computer hardware running Windows 7 or even the same OS that would be fine and we're restoring it to a separate computer running a different hardware machine that's why we had to have the state migration point on the network for this scenario so if we look at things here it's looking pretty good so we have all our shortcuts showing up here we even have some of those pin custom icons that I had if I open up Internet Explorer we can see that it also has my home page to patch my PC it's also got some favorites in the favorites bar and it even has the favorites bar showing because that's an option that I set in IE we go ahead and take a look like you would expect that we saw when we were on the administrator we can see of course the Java file if we look at our documents we can see that we have our document showing up here if we look at the root of our profile we can also see that installation file that we had on the root of Justin see there we go because we used the make Docs which would include anything within that profile directory regardless of where it's located even in the root all right so I think that this looks good for this scenario so let's come back to our machine so this is our Windows 10 machine so I'm going to go ahead and revert this back to a state before I actually did that restore so we revert that back and we'll go ahead and power that back on now let's go back to our SCCM machine now looking back at the US mt so if we recall if we come back to our US mt default package that we installed within the ADK let's take a look at the amd64 and then look at our xml files there we go um so like I mentioned by default we're gonna use the MiG app in MIG Docs with an SCC M if you did not define any custom options in the restore but let's say we want to use mig user instead of mig doc so that's going to be more specific it's not going to include files that the root of drives or in the root of profile is it's going to be more selective if you didn't want to restore a lot of different locations that might just bring in stuff that you don't want so in this scenario we're going to come back to our capture and within our task sequence under the capture user state we're going to choose customize how user profiles are captured let me see if I can copy this so we're gonna do the MiG app so that's gonna include all the known applications like office etc but instead of MIG Doc's we're gonna do MIG user so we'll copy that paste that and then okay we'll apply that and then we also do the same settings within the restore so we'll customise we're gonna add the MiG user and then we will add Mick Docs and then okay and then okay alright so we'll let that sit in for a couple of seconds so that change can go into the database and then on the client side what will do is will refresh policy to make sure that it has those new settings when weary kick off this task sequence all right there we go so it didn't look like the first policy check had it in the database yet we kicked it off a few seconds later and now we can see all these different policy changes which should be corresponding that task sequence change so let's go ahead and click on reinstall and what we're gonna notice here is that when this task sequence kicks off let's go ahead and look at our logs so it's going out it's downloading that us MT package go so now we can see it's using scanned state but now it's using MiG user here in MiG app instead of make Doc's so what we're gonna notice in this capture is not going to capture all this stuff at the root of C so we're not going to have the Java file we're not going to have the client folder and we're not going to get the Installer on the root of the profile we're gonna be more selective and it's only gonna get things that are in like known directories within that documentation so things like the My Documents the my pictures wallpaper app settings from Meg app so it's gonna not get as much data because we're using MiG user instead of Mik Doc's all right so we can see the new capture just completed so that will overwrite the existing capture that happened for this different association between this win seven and this win 10 machine so we can come back to the Windows 10 machine that we've reverted we can see we're back to a clean state with no additional profiles for Justin and we'll go ahead and kick off this restore so we'll go ahead and look at that ts law SM STS and what we should see once the content all gets downloaded and gets to the restore step when it runs load State it's going to use mig user and mig app just like the scans they did on that source machine because we defined that custom XML path instead of using the default alright so here we go so we can see that our load State tool is now running it's using our MIG Docs oh let's see oh you know I don't know if I applied this change to the restore task sequence let's take a look oh yeah you know it looks like instead of the MIG app I actually typed in make Docs so let's go ahead and fix that in the restore so MIG app dot XML just make sure there we go okay so now that's fixed in the restore now let's just take a look so we did since we were using mig user we of course did get our restore of our profile let's just take a look at the root of C there we go so since the capture didn't actually use the MiG docks of course it wasn't able to restore any of that so this should be pretty similar so if we look at Justin we can see that we have our documents for example so let's go ahead and log back in as the justin account there we go so we can see that we do of course have our background we have our desktop stuff that was all included in the MiG user so that looks good let's take a look at internet explorer looks like internet explorer settings did in fact migrate over that must have been included in the MiG user so that all looks good I think that that should be good for this scenario there shouldn't be a need to go and rerun this it looks like that MIG user did in fact get most of that data that we had captured but you can see that since we use MIG user instead of McDow for the capture it did exclude all that stuff like at the root of C at the root of my profile we don't have that installer so that could be a good way to be more selective if you didn't want to just capture everything but you wanted to let your users know that hey these are the documents that will be migrated based on the document for TechNet that I include you could let them know only these folders if you wanted to be more selective than just migrating everything all right so I think that that looks good for that scenario now the next thing I want to cover is what if the default options included in the MiG app make Doc's or make user what if they don't include some custom app that you might need or a file location now there is a way that you can define your own custom XML file so there is an example that I'll include on TechNet that has an example of how you could copy different registry keys within here so i've already copied this and i pasted this into an xml on my desktop so we can see here that's just an example of how we can migrate a few different things under H key current user software my app toolbar just a few scenarios there now I have done some things in the past where I help users create custom ones for some in-house applications to migrate now directly working in the XML even though this is a good example it can be quite tedious and take a lot of time so there is an application I generally don't recommend anything third-party but this is a helpful tool it's called au SMT XML builder it is $50 I believe to purchase but there is a 7-day trial that I'm actually using in this scenario this is an easy way that you can modify you SMT XML templates so for example let's say that we wanted to open that sample on the desktop so here's the actual component so this is the application sample it looks like they just called it some application we can see that it has four registry settings that are set to migrate and if we actually take a click on that we can see that you get a much easier view to actually view that XML file so we can see that it's migrating the myapp toolbar it's doing any value within there and then within the default my app root folder is just migrating the tips value we can see that there's an exclude statement here under the my app where it's saying don't ever get the display value they don't want to migrate that for that application to the new machine so this can be quite helpful if you ever had that scenario where you wanted to make your own now I'm going to go through an example of how we could actually use this in real life so I'm gonna go ahead and delete the sample application in this template and we're gonna create a new one now on this Windows 7 machine under the Documents folder I have our home updater so the patch my PC home version that you can use to update third-party apps on your home devices so just because I wrote some of this code and our engineering team did this application I know exactly where we store the settings so if we look at regedit under HQ local machine software patch my pc options this is where any custom options that you define within this application or stores so we can see we have quite a few different values set here if we look at the options tab we can see that this is just the different options that are corresponding to those different reg keys so what we're going to do is we're going to come into our XML builder tool and we're gonna say I want to include this application so we're gonna create a new setting for an application we'll call it patch my PC Home updater and it's an application setting and we'll click Save so we'll go ahead and click on that and then we're gonna create a new registry key setting here so let's go ahead and click that and we're going to add a new registry value and on the server that we have this installed we do have some I did run the options just so we can use this as an example so we're gonna browse out to the key that we want to save so patch my PC options and we're gonna go ahead and click on the value tab here and instead of doing a specific value we're gonna say we want to migrate everything within this options key so we're gonna put a star there and then click OK so that of course is going to save everything there and then we'll click Save here now if you wanted to have any files maybe your application has like some ini files for example you could of course say hey let me migrate this application maybe you know it's within the Program Files for example say it's in Program Files and then you could add like the directory path within program files let's say you know 7-zip let's just say there's an ini file there you could browse out and say you know select the I and I and then we'll put the wild-card therefore the Program Files and then you could easily migrate things like I and I config files for different apps as well but for patch my PC home updater we'll just do the registry key and this should work fine so I'm gonna go ahead and save this template and I'll just put on the desktop and we'll call it custom XML now what we're going to do here since we're gonna add a custom XML I'm not going to add the XML directly into the you SMT install folder just because if you SMT was to get updated it's possible that it might overwrite that so what I'm going to do is I've already copied that you SMT package and I've stored it on my network source for my share so I've got a new folder here called you SMT and I named it you SMT with options and of course I put the version number there so that we can know if you SMT gets updated on the server we what might want to copy over the new files and then include our XML within here now since we're working with the 64 bit machine we're gonna include that custom XML directly in the root of 64 bit now if you were doing a 32-bit OS you would also want to include it in the 32 bit here as well so we'll go ahead and include that and then okay so now what we're gonna do we're going to copy our source path you can see that it's just the same source as what you got with the default install with the exception that we added that XML so what we're going to do we're going to come into our packages create a new package we're gonna call this us MT with custom XML we're gonna point out to that source path I'll go ahead and copy that version number that will be helpful with to include within the name so we can know if the version gets updated within the ADK so that we can update this custom package as well we do not need a program this is just going to store the files that are going to get called within our tasks sequence all right so that looks good we're gonna go ahead and distribute this out to our DPS there we go and just all the defaults here and that's gonna get the content going now what we're going to do back in our cast sequence we're going to go ahead and edit our capture and edit our restore and instead of using the default packages for the capture and restore step we're gonna go ahead and use our custom package that we created within our XML we do have to add custom here so we're going to do custom XML I mean just browse out here I do want to make sure [Music] that I type this corrects let's do dot XML go ahead and copy that directly just to make sure that's right and then add so that looks good so we have our custom package and our custom XML defined and our capture and we're gonna repeat that process for the restore task sequence as well there we go and then we'll add the file and then okay so we'll give that a few seconds for the policy and that task sequence change to kick in and then we'll go ahead and refresh the policy on our capture machine here so that it can pick up that new change but before we do that let's look back on this Windows 10 machine that we've restored using the default options if we go ahead and click on patch my PC the home update or what we're going to notice here is that we're not going to have any of those options that migrate it over because that wouldn't have been included in the MiG app or the McDiarmid user so let's go ahead and revert this Windows 10 back to a clean state all right so the wind 10 machine is back up and powered on back to our windows 7 capture machine I did refresh policy and we validated that it got that change so we're gonna go ahead and click on reinstall to run an additional capture we'll come back to our log files and what we're going to see here is that when the TS log kicks off is going to run our scan state but it's also going to include that custom XML that we create it within our package if we look at our task sequence folder and our packages we're going to also notice that the package is going to include the custom dot XML here that we created right so here's our file that's being used in this custom u.s. empty package alright so here we go if we look at it we can see we're running scan State we can see we have our custom XML our MiG app and our MIG user so we have these three files that we defined here so this should include just the profile document is going to exclude anything on the root of C because we're not using Nick Docs it's also going to include that custom patch my PC reg key that we generated all right so the capture just completed with the new XML so let's go over to our win 10 machine and we can see we're back to a clean state with no profile for Justin take a quick look at regedit we can see under local machine software we don't currently have any patch my PC key installed so we'll go ahead and restore this go ahead and look at CCM logs right so we're gonna see that us empty package getting downloaded and then we'll see load state running with our custom xml's that we added alright so here we go we can see load state running it's running with the custom XML along with MiG user and Meg app so that should get our data restored we should start to see some profiles coming in here so here's our user for just then it's looking good alright so we can see the restore is complete let's go ahead and refresh that reg key before logging off there we go so we can see the options key does look like it migrated so let's go ahead and log off this admin account and we will log in this Windows 10 machine with our just an account which should have been the one that migrated over all right so here we go if we take a quick look since we use MiG user we don't have any of that data on the desktop we don't have the installer under my profile but we will of course have our documents so let's go ahead and launch that patch my PC app will also go ahead and open up Internet Explorer that should of course have our home page along with our custom tabs here so that all looks good if we look at the options we can now see that the options for this custom app that we migrated came over just fine alright so I think that covers the replaced scenario where you're going from one hardware machine to a completely separate one now there might be a few other scenarios where you might want to reimage with the existing machine so that's what we're covered next so for to do that let's go ahead and come back to our task sequences and we're gonna go ahead and create a new task sequence now this is going to be let's say that you have a machine that's not running well and you just want to reformat it and reinstall the operating system either Windows 7 to Windows 7 for example or even going from like Windows 7 to Windows 10 so we're going to install an existing image package we'll call it I'll call it Windows 10 1809 x64 with you SMT since this is reimaging we do need a boot image so we're gonna do the 64 bit boot image we're gonna choose our image package for our 18:09 110 I'm not going to use BitLocker since this is a VM I am gonna give it a local admin password in case something goes wrong we can still log in and look at what happened we're gonna join a domain all right there we go I'll leave the o you blank since this is reimaging an existing device it should map back to the same o you and computer object that it was now this is where we can choose whether we want to migrate user state alright so we have our user state now it's gonna by default choose the default package but let's say we want to use our custom one so you SMT with custom and there we go so we'll save it on the state migration point because we want to format this and start completely fresh we will be covering save locally here in a few minutes as well though now within this screen we did not get the option to use custom XML we're gonna have to come back to our tasks sequence so we're not going to do any updates or any apps so that looks good so let's go back to our task sequence and now under the capture step so capture user files let's go ahead and do our custom options here so we have custom XML let's do big App big app XML and then MiG user XML okay we'll go ahead and apply that we can validate we're using our custom u.s. MT and then let's do the same for the restore so we've got big user custom XML and then MIG MIG app XML pretty sure I got that type correctly okay so now just showing you what this task sequence does we're going to migrate the username we're gonna request the state store let's go ahead and enable that option if the computer account fellows use the network access and we're also do that for the release or I'm sorry the request state store for the restore option down here as well we'll include that for both it's then going to capture the user State on the state migration point release the state we're then gonna reboot into winpe so we're gonna deploy this into the client in the full operating system it's then gonna format the disk apply the image and then restore the user state since this is a VM I'm just gonna disable with the driver step for now alright that looks good now before we can re image a device I want to make sure I delete that association so that it doesn't capture it and have the Windows 10 machine as the destination now if there's no Association created at all it's going to create one with itself automatically now one thing I don't think I talked about for the destination computer you it does need to exist in SCCM so in order to create that association if you did want to go to a new machine you do have an option here where you can import a computer based on the MAC address so if you needed to get that destination computer in so you could make that association you could come through here and create it before the machine even gets to you if you don't have the new machine already imaged now I would like to see I'm probably gonna make a user voice I would like to see where maybe you could run the capture it creates the association with its own computer object and then you could change the destination after the fact I think that would be quite helpful for when the new computer doesn't exist and you maybe don't know the Mac that doesn't exist today but I'll put in a user voice and if you think that would be helpful be sure to vote that up in the description below so there we go so we've got the object deleted for the Association so let's go ahead and target this deployment to our capture collection and this is go ahead and reimage our windows 7 device so we're going to target this to the capture it's going to capture the user state format the disk install Windows 10 and then restore it now we do need to make sure that this is running in the full operating system so we're gonna keep this as available but we're gonna only run this for config manager clients meaning that it has to be how with the agent in the full operating system so that we can run the capture now this is where you have to be careful I'm going to just leave it available so we can manually do it in software center if you made this require this is where you would really want to make sure that you're only targeting a collection that you actually want to reimage so you know that can be a risky scenario if you accidentally deployed this and reimaged a collection that you weren't intentionally targeting for reimaging and formatting so we're going to go ahead and just keep that available so we have to manually launch it in software center on the capture collection that contains our one Windows 7 device alright so let's go ahead and launch the policy refresh see if we can get this task sequence showing up here see if that policies kicked in yet it doesn't look like it's got it quite yet and let's try once more there we go we can see the policy downloading so we should get notified here in a second there we go so we have our new operating system image task sequence so we're gonna go ahead and kick this off so what's gonna happen in this scenario is it's gonna go from windows 7 to Windows 10 it's going to capture the user state in the full operating system so we can see it just requested the state store it's now going to capture it just like we did with all the other ones the only difference is when this one releases the state when it's done it's then gonna reboot and reimage the device in winpe and go through a full imaging scenario now of course if you were going from windows 7 to Windows 10 you can of course use the in-place upgrade task sequence and just have the native Windows 10 setup do all the migration for you which is even a little bit more complete with migrating everything but if you ever wanted to start fresh this could be a scenario where you go from windows 7 to Windows 10 or maybe windows 7 to Windows 7 if you're not ready for 10 yet and so here we go we can see that we're using our mig user and all our options here all right so the capture is done it's now downloading the boot image and go ahead and reboot into winpe and that's going to go ahead and start upgrading us to Windows 10 along with formatting the disk so there we go we're now going to restart into PE so we lost our RDP connection if we look back here through hyper-v we'll kind of see this imaging process start to kick off on this machine alright so there's our partitioning so it's going to format the disk but that's alright we've already got our state captured up to the state migration point on the share all right so while we wait for this machine to reimage I do want to cover the final scenario that we'll be looking at now this one's going to be if your reimaging an existing device when you're using the same machine you had you do have the ability where you can capture user state and you can actually store that locally on the machine so you don't have to save it up to the network using the state migration point so I'll show you what that looks like so we're gonna create a new task sequence Windows 10 1809 x64 and we'll call it you SMT offline choose our boot image do next here install our packaged Windows 10 1809 won't do BitLocker and able to look go alright so we've got her domain join that looks good now for this one when we do our state migration point let's go ahead and choose our custom package we're gonna choose to save it locally so what happens here is that instead of saving it up to the network using the state migration point it actually creates a hard link and it stores it all locally and instead of formatting the disk it's gonna wipe all the data around the user data that we back up instead of formatting the drive so that makes it so you don't have to store it remotely to your you your state migration point share you can just have it locally during this so to take a look at what this looks like let's go ahead and edit our sequence so we can see it's pretty similar we're gonna start with the username but instead of here we have it to set the local state location so that's gonna store it locally on the hard drive now when it gets to the format step it's gonna say hey we're not going to format the disk because we have it set to store the data locally so instead it's going to go ahead and wipe all the data around those contents of things like the windows directory the Program Files it's gonna wipe all that content but it's not going to actually format it because we're still going to have the data that exists on that disk so let's go ahead and add our file so we have custom XML let's do MiG app dot XML and then let's do big user XML here I do okay on that we'll come back to the restore and we'll also add that there so custom XML make a packs ml and then big user XML do OK on that and then apply and we should be good here alright so we'll go ahead and do the same thing with targeting our capture collection so once the windows 10 machine gets done doing the reimaging using the state migration point will revert it back and then we'll go ahead and run the offline version to upgrade to Windows 10 saving everything locally so same options here this does have to initially run in the full operating system to capture the data we're gonna keep it available and for config manager clients and we'll leave all the defaults here alright so jumping back to our machine it looks like it just applied the image so it's going to go through now go through OB install the client and then we should get to the restore step within a few minutes so at this point we're now restoring the user state so the task sequence has installed Windows 10 it's now in the full operating system it's going to go ahead and download and restore the user state from the state migration point just like the previous task sequences did that weren't OSD all right the imaging is now done let's go ahead and see if we can log into this machine all right so we're now logged in we can see that we went from windows 7 to Windows 10 formatting the disk capturing and restoring data so everything looks about the same so this looks good so let's go ahead and like a document well looks good let's go ahead and launch this will launch ie go we can see all the options came over we have our home page our favorites bar this all looks good so let's go ahead and revert back and then we're gonna do the offline version all right so we're back to a clean state it looks like we're just getting policy refreshed so we should see that there we go new changes oh not yet we should get our notification any minute now that we have our new operating system deployment available all right there we go so we'll go ahead and kick off that USM T offline task sequence and I'll show you what that looks like all right so we can now see these migration is now happening but if we look at the scan state we can see instead of saving it to our state migration point we are saving it locally on this hard drive we can also see that we use the local only option and hard link to actually do the capture so that looks good so it's currently saving that all locally to the SMS task sequence folder on the root of C so it's creating a mapping to all the files that you SMT is determining that we need to back up here so we'll let that finish all right so the capture is now done it's now going to restart into winpe all right now we're going to notice here that the format step is going to be completely skipped because we have data saved locally and it's going to go directly to the apply operating system step there we go now just to show you what actually happened in the background if we open up command prompt what we're gonna see happening during the apply operating system is it's gonna wipe the disk instead of format so it's gonna wipe all the non-save data so things like Windows program file is client all these things will get wiped but what's actually going to get retained is the USM T State that's saved locally so within that user state folder we can see all the data that is actually pointing to the backup where things happened all that data is gonna get retained so here's for example our documents that's are all going to get retained and restored once the new image is applied and we get to the restore step so everything else is going to be exactly the same but instead of storing it all locally since we're using the same hardware it's going to store it all on this device and it's gonna simply wipe it instead of format so here we go we can see the wiping happening now so on that D windows drive it's gonna start wiping all the non backed up data so we can see that it's wiped everything so far except the windows directory so once it's done wiping it's then gonna start applying the image to that wipe D Drive now if you wanted to move from bias through UEFI this might not be a good scenario because generally it's where you would want to make additional partition so it's UEFI compatible so this could maybe be just Windows 7 to Windows 7 or went into win 10 if you just wanted to re image and store data locally you may not want to use this if you want to go from legacy bias to UEFI for example during a win 7 to win 10 upgrade so now we can see we're applying the event so it's going to start applying the image to that wiped disc but we can of course see that all our data of course was unaffected where it created the hard links to where that data actually exists on the hard drive so this will all get restored once the image is applied when we get to the restore step all right so I do have to run and catch a plane to MMS desert Edition plane leaves in about under two hours now I still have to drive to the airport but really the only difference going forward here is that when it does the restore instead of getting it from that state migration point is just going to restore it all from that local mapping that it did on the hard drive since we didn't format that everything else with the restore is going to be exactly the same is going to use load state it's going to point to that SM STS user state folder to actually pull that back and direct it back into the profile directory and have all my data back where it was I hope this video was helpful
Info
Channel: Patch My PC
Views: 50,825
Rating: 4.9509802 out of 5
Keywords: USMT, SCCM, ConfigMgr, User State Migration, User-State Migration, USMT in SCCM, SCCM USMT Migration
Id: f7_8B0TCLuI
Channel Id: undefined
Length: 58min 19sec (3499 seconds)
Published: Mon Dec 03 2018
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.