in windows 7 and vista, you only need to add <CopyProfile>true</CopyProfile> in your sysprep. The administrator account that you use will become the default profile
In the Windows System Image Manager, it would be under specialize pass in x86_Microsoft-Windows-Shell-Setup_neutral. CopyProfile=true
That is the best known method to create your default profile.
Thanks for the help EMiranda
Wow. I just found this post on Google and I've been struggling with the exact same problem. This should be posted in the Win7 Deployment BKM document. It would have saved me a lot of time and headache trying to work through my Default Profile issues.
When I created my HII reference image for WinXP I installed everything as the administrator account, created a temporary account to transfer the administrator account's profile to the default user profile, then deleted the temporary account and profile prior to capturing the image.
We are preparing to roll out Win7 and in building our reference image I did something very similar: install Win7 (did not use Audit mode as it seems to use the same administrator account regardless), install apps, create all my profile settings etc., but when I went to transfer the administrator account profile to the Default User profile, I was not allowed to do so.
If this information is correct, from my reference image (again which was not built using Audit mode) I should be able to run "sysprep -generalize -oobe -reboot", and capture the image, so long as I add the ProfileCopy=true line item above?
The reason to enter audit mode when creating an image is to bypass a local account creation and take you right into the Administrator account. This is where you make all your configurations to your profile and when ProfileCopy=true is used in sysprep, will copy the contents of that Administrator account to a Default Profile
When you don't enter audit mode in Windows 7, you will be creating your own local account. The default Administrator account is disabled by default when you enter Windows for the first time from a flat load. So the new local account that you created will be transfered over to Default Profile during sysprep using the ProfileCopy=true command when you run sysprep from that account.
"Setting CopyProfile=true - Specifies that the currently logged-on user profile is copied. Set to true only if there are customizations made to the logged-on user profile that you need to apply to all new users. "
Here is more info on the command:
Hope that helps!
Thanks EMiranda ,
I'm actually going to go back and do it properly using Audit Mode. Might as well start with the basics.
I have one more question though. I noticed that if I create a Win7 Sysprepped Deploy script in OSD, LANDesk creates the Unattend.XML file for me (named after the OSD script of course), just like it used to create a basic Sysprep.INF file that I modified and used as a template in XP. One of the components included in the LANDesk-generated XML file was:
<Path>c:\windows\System32\sysprep\sysprep.exe /oobe /generalize /reboot </Path>
Isn't this the command that you want to use before capturing the image, not after deploying it? Or am I underestimating Win7? Since this is a Deploy script I did not expect to see the Sysprep command line. I'm asking this because in order to facilitate the Profile copy using the commands you mentioned, I planned to create a very basic Unattend.XML on the root of C: prior to running the Sysprep -generalize against the machine while in audit mode, then capture the box. Does my timing sound correct or could the ProfileCopy=true command simply be inserted into the Deploy Script Unattend.XML and be done after laying down the image?
I guess what I'm looking for is some guidance on when certain commands should be available to Sysprep. In the XP HII world, I don't even include a Sysprep.INF file prior to capture. There's nothing I need it to do that is not done after the image is laid down and the machine boots to Mini-setup. If I'm understanding correctly, I would think the only thing I need in the c:\Unattend.xml file prior to capture would be the Profilecopy=true commands. Is this accurate?
Thanks for your help. The Windows System Image Manager (WAIK) wouldn't even load the LANDesk XML file until I changed the header information. Made it hard to troubleshoot.
If you do it LANDesk way according to their Best Known Methods doc, they want you to seal the image in Audit mode, this is where they use their application HIICLIENT.exe to do WMI call and driver injection for Hardware Independent Imagining, after it does that, then it seals the image into /oobe to launch the sysprep process.
I however, do not do that method, so i just use a straight /oobe command and inject drivers myself with 3rd party driver utilities,
see this thread for more details:
The goal is to get from point A to B, there are usually more than one way to get there, as long as you get there is what matters
Makes perfect sense, thanks for sharing. I worked out my own HII implementation back in LD8 and veered a bit from the typically published methods so nothing new there.
The only thing I'm still trying to work out is the ProfileCopy portion. I prefer to let LANDesk inject the "unattend.xml" file during OSD, that way I can manage any changes there without modifying the image directly (whenever possible). In this case, do I need two XML files, one to be resident when I run Sysprep -generalize -oobe -shutdown and the one injected during OSD? Or will the ProfileCopy=true section know to run during initial setup? In my mind, it seems like I need two if I want to allow LD to inject the unattend.xml after the fact, not before I capture the image.
I'm not super familiar with win7 sysprep, it is a new beast that I have been learning myself. But when you do Sysprep /generalize /oobe /unattend:unattend.xml
and specify the unattend file yourself, you are only making a copy of the .xml and placing it in c:\windows\panther\unattend.xml
so not specifying an unattend file and "injecting" the unattend file to c:\windows\panther\unattend.xml should produce the same results because when sysprep is ran it uses the one that is in c:\windows\panther\unattend.xml
I may be wrong, but in all my recent testing, deployments...c:\windows\panther\unattend.xml is what was always used no matter where other .xmls were.
If you are doing it the LANDesk way, which is how I do it, then there is no need to have an unattend.xml file on the machine prior to pullling the image. When the machine is in Audit mode and all configuration has been done, all that needs to be done is shutdown the machine and pull the image to the server. When the image is scripted it will place an unattend.xml file in the proper location and it will use that one.
Yeah, I'm in the same boat. WAIK and Win7 Sysprep are new. I'm gonna try a few things and will post back my findings.
The more I read up on the CopyProfile action, I believe I'll need an XML file present, PRIOR to capture, for Sysprep to read from and perform that action. You can run Sysprep without delcaring an Unattend.XML file, but it has to be there on first boot or you just get the Welcome Screen. This is why I like to separate the XML and have LD inject it after laying the image down. The only thing I don't think I can do after boot, though, is the CopyProfile action. I'll find out soon enough.
When you push back the image to a machine it will autologon to the machine and run the sysprep command using the xml file that it copied down to the machine. If the copy profile command is in that file then it will work just fine.
That's what I was looking for. Thanks Wizrd. I didn't know if Win7 would pick up that action at first logon. If so, I'm all set with my injected unattend.xml. Beauty.