none
WDS deploy XP with sysprep.inf as the answer file and what is the WDSSysprepTemplate.inf doing?

    Question

  •  

    I've got the WDS server set up with default installation to c:\RemoteInstall\ and already have the capture boot image and the boot.wim from the Vista DVD loaded.  Here's the plan to deploy windows XP and provide an answer file sysprep.inf.  Let me know if you see anything wrong:

     

    1.  Prepare a bench XP computer with all apps.  Create c:\sysprep\ folder.  Copy the contents from the deploy.cab on the CD to c:\sysprep\.  run sysprep -mini -reseal.  The computer is ready to capture.

    2.  Boot to PXE and select the capture boot image I created in WDS.  Save as c:\xp.wim and upload to the WDS server as "XP".  After capture, an XP.wim is created in the images folder in WDS.

    3.  Create an answer file for XP.  I wish to have the computername set for each deployment so this will not be a completely unattended answer file.  The answer file will include answers except the computername (left blank) and has the information to join to the domain.  I save it as c:\RemoteInstall\Images\XP\$OEM$\$1\sysprep\sysprep.inf.  Note:  The instructions say c:\RemoteInstall\Images\<imagename>\$OEM$\$1\sysprep\sysprep.inf so I have replaced <imagename> with XP.  I edit it to include the DoOldStyleDomainJoin=Yes statement.

    4.  I wipe the C drive on the bench XP computer to create a clean installation.  I boot to PXE and select the boot image that loads boot.wim from the Vista DVD.  I select the XP image to install.  On reboot, the computer should use the sysprep.inf file to fill in the XP setup menus.

     

    Here's some things I'm not too sure about:

     

    1.  When I load the XP image... If the c:\RemoteInstall\Images\XP\$OEM$\$1\sysprep\sysprep.inf file does not exist, then will WDS default to loading c:\RemoteInstall\Templates\WDSSysprepTemplate.inf into the c:\sysprep folder on the bench XP computer in step 4 to use as the answer file? 

     

    2.  If c:\RemoteInstall\Images\XP\$OEM$\$1\sysprep\sysprep.inf  does exist, does the client still get loaded with the WDSSysprepTemplate.inf as c:\sysprep\sysprep.inf or will it load c:\RemoteInstall\Images\XP\$OEM$\$1\sysprep\sysprep.inf as c:\sysprep\sysprep.inf and then include the the settings it has?  If yes, how would I go about only using the one I create?  I've heard a reference to using the WDSUtil command to use "per device" settings.  If I need to do this, what is the procedure?  Is there any harm in editing the WDSSysprepTemplate.inf to remove the settings it contains?  Documentation on what WDSSysprepTemplate.inf does is slim to none in technet.

     

    Reference post:  http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=1415238&SiteID=17

    "For Windows XP and Windows Server 2003 images, a template Sysprep.inf file is placed in the \RemoteInstall\Templates folder of the server when the server was first initialized.  After the image is applied, the Windows Deployment Services client will copy the template unattend into the offline image and then edit it as appropriate.  The Template unattend file is copied from the server into the offline image as C:\Sysprep\Sysprep.inf."

     

    Reference post:  http://www.techtalkz.com/windows-deployment/194512-sysprep-inf-location-wds-legacy-images.html

    "Mike Lewis (MS) wrote:  Try using per device settings using wdsutil cmd line. You can assign many
    > attriburews per device including specific files and images."

     

     

     

     

    Wednesday, April 09, 2008 5:03 PM

Answers

  •  

    From trial and error, I've discovered a few additionals that seemed to be of interest.

     

    The original dell OEM XP version did not work well with sysprep.inf.  We would have liked to use that.  I did a bench test with the corporate XP volume license and it did work well.  We are going with the option not to use the mini setup to avoid this issue for now.  There is a WDSUtil command setting that will override the sysprep.inf stored on the WDS server to use the one stored with the image. 

     

    What I seem to see happening is the following with a default config:

     

    1.  Create c:\sysprep\ on client and load all tools from deploy.cab.  Run c:\sysprep\setupmgr.exe and create a sysprep.inf file.  MOVE the sysprep.inf file to the WDS server for later use (you don't need it on the client).  Config PC and run c:\sysprep\sysprep.exe -mini -reseal. 

    2.  Upload image to WDS.  Create folder c:\remoteinstall\images\<imagegroupname>\<imagename>\$oem$\$1\sysprep\.  Note:  replace <imagegroupname> and <imagename> with real values.  Copy your sysprep.inf into this folder.  Edit sysprep.inf to include the DoOldSyleDomainJoin=yes statement in the section where you specify join domain and save it.

    3.  Format c: on the bench client or WDS will save the old install as windows.old (default).  I actually like this because you can reinstall an OS on a blue screen PC and migrate user data if you don't format.  Download the image.  Go.

     

    Here's what I see:  The sysprep.inf from your ...\$oem$\$1\sysprep\ folder gets copied to the c:\sysprep\ folder on the client.  WDS opens the WDSSysprepTemplate.inf in your templates folder and MIGRATES the settings into your c:\sysprep\sysprep.inf folder (doesn't rewrite the entire sysprep.inf, it just migrates its settings into it).

     

    That's observation is based on the sysprep.inf listing the domain as the netbios name "xyz" and the WDSSysprep.inf listing the domain as the fqdn "xyzcorp.com"  The computer joined xyzcorp.com. 

     

    This can give you neat option...  Edit the .\templates\WDSSysprepTemplate.inf to include all the "global" information for your images.  For individual images, you can edit the sysprep.inf in the $oem$ structure.  Note that global settings in WDSSysprepTemplate.inf seem to be overwriting the individual settings. 

    Friday, April 11, 2008 3:35 PM

All replies

  • We are moving from ris on server 2003 to WDS on 2008, I just got the standard capture and deploy of images working yesterday.

    As it is now we have our answer file in our Sysprep folder so when we run the prep mini and reseal when the image comes down it boots and asks for a PC name and then it joins the domain with credentials already in the answer file, no need fo rit to be on the WDS server.

    My question (hopefully my explanation above helps with your delima) is, is there a way to get it to ask for a computer name before it starts to download the image?  basicly i want to go through the installation of the image it reboot, run the minisetup (entering the PC name I specify during the PE boot) and then reboot again and be on the domain with the apropriate name... so all I have to do is the PXE boot, enter my credentials, select the image, select where to put it, enter a name, and walk away
    Thursday, April 10, 2008 2:23 PM
  • Hello,

     

    To James,

    ========

     

    This WdsSysprepTemplate.inf file is only used when you deploy images earlier than Windows Vista and you don't have an unattend file associated with  the image.

     

    So, the first answer is yes and the second is no.

     

    If you want to use the per-device unattend file by using the WDSUtil command, then this specified unattend file will be used. This is because the per-device policy has a higher priority than the per-server policy.

     

    For more details, please refer to:

     

    Automating the Domain Join and Computer Naming:

    http://technet2.microsoft.com/windowsserver2008/en/library/6636ff28-4dd4-4b7a-aba6-387655b602711033.mspx?mfr=true

     

    To Chris,

    =========

     

    I am sorry to say there is no such setting for the computer naming.

     

    However, if you want to specify a name for a computer in the Active Directory before the computer downloading the install image, you can prestage the computer account in the Active Directory (meaning creating a computer account in the ADUC). You can specify the computer account with the GUID of the computer so that after the computer boots from the network, you don't need to specify a name during the installation.

     

    For more details, please take a look at the following article:

     

    How to Manage Client Computers:

     

    Best regards,

    Chang Yin

    Friday, April 11, 2008 10:13 AM
  •  

    From trial and error, I've discovered a few additionals that seemed to be of interest.

     

    The original dell OEM XP version did not work well with sysprep.inf.  We would have liked to use that.  I did a bench test with the corporate XP volume license and it did work well.  We are going with the option not to use the mini setup to avoid this issue for now.  There is a WDSUtil command setting that will override the sysprep.inf stored on the WDS server to use the one stored with the image. 

     

    What I seem to see happening is the following with a default config:

     

    1.  Create c:\sysprep\ on client and load all tools from deploy.cab.  Run c:\sysprep\setupmgr.exe and create a sysprep.inf file.  MOVE the sysprep.inf file to the WDS server for later use (you don't need it on the client).  Config PC and run c:\sysprep\sysprep.exe -mini -reseal. 

    2.  Upload image to WDS.  Create folder c:\remoteinstall\images\<imagegroupname>\<imagename>\$oem$\$1\sysprep\.  Note:  replace <imagegroupname> and <imagename> with real values.  Copy your sysprep.inf into this folder.  Edit sysprep.inf to include the DoOldSyleDomainJoin=yes statement in the section where you specify join domain and save it.

    3.  Format c: on the bench client or WDS will save the old install as windows.old (default).  I actually like this because you can reinstall an OS on a blue screen PC and migrate user data if you don't format.  Download the image.  Go.

     

    Here's what I see:  The sysprep.inf from your ...\$oem$\$1\sysprep\ folder gets copied to the c:\sysprep\ folder on the client.  WDS opens the WDSSysprepTemplate.inf in your templates folder and MIGRATES the settings into your c:\sysprep\sysprep.inf folder (doesn't rewrite the entire sysprep.inf, it just migrates its settings into it).

     

    That's observation is based on the sysprep.inf listing the domain as the netbios name "xyz" and the WDSSysprep.inf listing the domain as the fqdn "xyzcorp.com"  The computer joined xyzcorp.com. 

     

    This can give you neat option...  Edit the .\templates\WDSSysprepTemplate.inf to include all the "global" information for your images.  For individual images, you can edit the sysprep.inf in the $oem$ structure.  Note that global settings in WDSSysprepTemplate.inf seem to be overwriting the individual settings. 

    Friday, April 11, 2008 3:35 PM