Windows 10 Unattend file issues
Hello! I’m currently facing an puzzling issue… I have attempted to build a base image then run the sysprep /generalize /oobe /shutdown (and sysprep /generalize /oobe /unattend:C\Users\admin\Documents\unattend.xml /shutdown) and my system seems to not run the unattend files after reboot. During the sysprep preparations it passes all of the unattend file and makes changes before reboot. After the shutdown I’ll capture the image and during deployments it seems as if the unattend file is ignored. (It skips the setup but doesn’t implement the changes that I put in with sed)
An example is during the specialize pass I have the <ComputerName> tag set to TECH and the postdownload script does change it to what I want it to, but for some reason windows is naming the computers WIN-(random characters)
@sherder For me I had similar troubles with Windows 7. I came to 2 conclusions. sysprep + unattend is very finicky. If things are not perfect you get all kinds of odd behavior. The other was that many parts of it seem to not function as they should, the computer name being one of them. The CD key is another, many sites/articles say to use 00000… or XXXXX… repeated, but mine would fail unless I put a valid key in (ended up using the Windows generic install key that MS provides on their site, doesnt activate just gets install done).
Are you making your unattend by hand or using a tool to generate it?
It skips the setup but doesn’t implement the changes that I put in with sed
Not clear on the above, could you elaborate what you mean here?
When the syspreped image boots back up, are there some things that have been applied by unattend and some that have not, or does it appear to not have applied any changes specified?
@george1421 I was only utilizing one unattend.xml file. I went to my root and did a scan for my whole drive and the only unattend was in C:\Windows\Panther. And yes, after logging into windows I saw that the unattend.xml was in fact changed to what I had the postinstall script do, but my computer name was not what was in that file.
Should I inject a new one to that location, or modify the old one?
I’m not sure I understand. You do need to ensure that there is only one unattend.xml file. Windows will always search c:\windows\panther for its file. Once it finds it it will stop looking. Also I found that with each new release of win10 sysprep is working less and less. But what I posted did work.
So if you say you make changes to the unattend file, and it is located in panther and you used the sysprep command like I showed, windows ignores the settings?
Also it sounds like you are using a post install script to set the system name in the unattend file. If you review the unattend.xml file after you login into windows is the system name set correctly in the unattend.xml file? (even if the system name is still not set correctly). Its not clear in my mind if OOBE is just ignoring parts of the unattend.xml or completely not seeing the file.
Should I inject a new one to that location, or modify the old one? Because if it’s just modify the old one, that’s where my problems mainly were. I originally followed your posts to do this.
My original steps were:
Created the unattend.xml in C:\Windows\Panther
Ran sysprep with /unattend pointed to the one I created
Would capture image after shutdown with sysprep
When deploying image I would use the postdownload script to modify the ComputerName
Upon login, none of the unattend file changes were there
I would start out by only placing the unattend.xml file in c:\windows\panther (period), no other locations also ensure you don’t have 2 unattend.xml files for some reason.
Also reference this post for my (sanitized) unattend.xml and sysprep invocation stanza. https://forums.fogproject.org/topic/11920/windows-10-1803-sysprep-problem/7
I can say they both work perfectly on windows 10 1803.