none
MDT 2012 - Add updates to Windows 7 SP1 is Build 6.1.7601.17514

    Question

  • Hi

    I installed  WIK for Windows 7 SP1 and MST 2012 on Windows server 2008 R2.

    I configured WDS, AD and DHCP. Added  Windows 7 SP1 Build 6.1.7601.17514 as Operating system and 96 windows 7 updates under package.

    when I update deployment share I get following error

    Deployment Image Servicing and Management tool
    Version: 6.1.7600.16385

    Image Version: 6.1.7600.16385 (6.1.7601.17514)

    Processing 1 of 1 - Adding package Package_for_KB2647753~31bf3856ad364e35~amd64~~6.1.4.0

    Error: 0x800f081e

    The specified package is not applicable to this image.

    The DISM log file can be found at C:\Windows\Logs\DISM\dism.log

    Exit code = -2146498530

    DISM /Add-Package failed, rc = -2146498530.
    Injected package Package_for_KB2647753 neutral amd64 6.1.4.0 KB2647753

    Previously I used RT7 Lite to inject all 96 updates to same windows 7 build. If I use this image to deploy windows 7 in a workstation, I can see only 35 updates are added to the windows 7 installation.

     can some one suggest a solution

    Jijo

    Wednesday, February 27, 2013 1:58 PM

Answers

  • In CustomSettings.ini you can set:
        WSUSServer=http://<yourwsusserver>

    Then, either in a Capture or a Deploy Task Sequence, if you have the Windows Update step, it will use whatever has been Approved in WSUS and apply it to the running Operating System.  As the number of patches grows (96 as you said), people like to create an updated WIM with the updates already applied.  Here's a brief walk-through of how I'd handle your situation...

    Create "Gold" Image

    1. Add ComputerBackupLocation=%DeployRoot%\Captures to CustomSettings.ini if it doesn't exist already.
    2. Create a new Task Sequence (Standard Client Task Sequence) called "Windows 7 SP1 - Capture" and select the original Microsoft WIM that you originally imported from disk during creation.
    3. Edit the new Task Sequence and enable one of the "Windows Update (xxx)" jobs under the "State Restore" group.  You may also want to disable the "Apply Local GPO Package" in the same group.
    4. Re-generate boot disk to get changes to CustomSettings.ini to be sure.
    5. Create a new Virtual Machine (Hyper-V, Virtual PC, vmware, VirtualBox, whatever) and boot from the boot disk.
    6. Select the "Windows 7 SP1 - Capture" Task Sequence.  In the windows, ensure to select to Sysprep and Capture an image.  Let it run then shut the VM down.
    7. Import the completed WIM from %DeployRoot%\Captures and name it something significant so you know it's update with patches.

    Create Deploy Image

    1. Create a new Task Sequence (Standard Client Task Sequence) called "Windows 7 SP1 - Deploy" and select the WIM you imported from step 7 in the previous steps.
    2. Edit the new Task Sequence and enable the "Windows Update (xxx)" jobs under the "State Restore" group.  This will ensure that any patches Approved in WSUS after creating your "Gold Image" will still be applied to the machine, but hopefully the count will be less.
    3. Edit the new Task Sequence and add any applications and configuration that must be on every machine.  (Alternatively, you can create a "thick" image and do this after Step 3 in the previous steps.  It will make a larger WIM, but it will also reduce Deployment time as applications are already installed in the WIM being delivered to a workstation.)
    4. (Optional)  Add drivers for each of your 20 laptop models.  (See this blog: http://adminnexus.blogspot.com/2012/08/yet-another-approach-to-driver.html.  It will guide you to importing drivers, creating groups and profiles, and how to use WMI queries to identify each model you have so the appropriate drivers get applied during Deployment.)
    5. Deploy to a workstation and voila, all patches are there, and only a few applied during actual Deployment.

    This is a very simplistic list of steps and there is more involved.  There are many many many blogs around with great guides on how to accomplish this, just do a few searches.  If you have issues with any step, just ask. : )


    David Coulter | http://DCtheGeek.blogspot.com | @DCtheGeek

    • Marked as answer by Jijo_Jose Sunday, March 10, 2013 1:05 PM
    Thursday, February 28, 2013 2:09 PM

All replies

  • It looks like somehow you tried to put the package into WinPE, which is what is rebuilt when you update the deployment share, and the patches are for a full Windows OS, not for WinPE.  How did you create a package with your 96 Windows 7 updates?  It should be applied as an "Application" during a Deploy Task Sequence, or you could just point CustomSettings.ini at your WSUS server and run a WSUS update step; then you don't have to manage patch packages inside MDT.

    David Coulter | http://DCtheGeek.blogspot.com | @DCtheGeek

    Wednesday, February 27, 2013 2:49 PM
  • Hi David

    Thanks for your replay. I have to deploy 5 - 10 Win 7 laptops with SOE / week. I was using Acronis to create images and deployment. I have 20 different laptop model and it became difficult to upto date images for deployment. As an alternate solution I used RT 7 Lite to slipstream windows 7 updates to OEM disk and it worked well. This way I added 96 updates to windows 7 installation disk. As microsoft release new updates every week, it became difficult to keep an updated windows7 installation disk with all updates. Again I have to run scripts to install other packages.

    As an alternate solution, I choose MDT 2012 with server 2008 R2 WDS. After configuring deployment share, I added the windows 7 OS. when I right click on the packages, it allows to add windows updates, service packs etc. The error comes while updating the deployment share. I think the updates can not install as application. Application can install files with MSI or EXE extensions.

    I don't know whether I am doing any mistakes. What is the best way to install all windows 7 updates as part of deployment.

    what changes need to be made in customsettings.ini to pick all required updates from WSUS server while installing windows 7.

    Thanks in advance

    Jijo

    Thursday, February 28, 2013 12:39 PM
  • In CustomSettings.ini you can set:
        WSUSServer=http://<yourwsusserver>

    Then, either in a Capture or a Deploy Task Sequence, if you have the Windows Update step, it will use whatever has been Approved in WSUS and apply it to the running Operating System.  As the number of patches grows (96 as you said), people like to create an updated WIM with the updates already applied.  Here's a brief walk-through of how I'd handle your situation...

    Create "Gold" Image

    1. Add ComputerBackupLocation=%DeployRoot%\Captures to CustomSettings.ini if it doesn't exist already.
    2. Create a new Task Sequence (Standard Client Task Sequence) called "Windows 7 SP1 - Capture" and select the original Microsoft WIM that you originally imported from disk during creation.
    3. Edit the new Task Sequence and enable one of the "Windows Update (xxx)" jobs under the "State Restore" group.  You may also want to disable the "Apply Local GPO Package" in the same group.
    4. Re-generate boot disk to get changes to CustomSettings.ini to be sure.
    5. Create a new Virtual Machine (Hyper-V, Virtual PC, vmware, VirtualBox, whatever) and boot from the boot disk.
    6. Select the "Windows 7 SP1 - Capture" Task Sequence.  In the windows, ensure to select to Sysprep and Capture an image.  Let it run then shut the VM down.
    7. Import the completed WIM from %DeployRoot%\Captures and name it something significant so you know it's update with patches.

    Create Deploy Image

    1. Create a new Task Sequence (Standard Client Task Sequence) called "Windows 7 SP1 - Deploy" and select the WIM you imported from step 7 in the previous steps.
    2. Edit the new Task Sequence and enable the "Windows Update (xxx)" jobs under the "State Restore" group.  This will ensure that any patches Approved in WSUS after creating your "Gold Image" will still be applied to the machine, but hopefully the count will be less.
    3. Edit the new Task Sequence and add any applications and configuration that must be on every machine.  (Alternatively, you can create a "thick" image and do this after Step 3 in the previous steps.  It will make a larger WIM, but it will also reduce Deployment time as applications are already installed in the WIM being delivered to a workstation.)
    4. (Optional)  Add drivers for each of your 20 laptop models.  (See this blog: http://adminnexus.blogspot.com/2012/08/yet-another-approach-to-driver.html.  It will guide you to importing drivers, creating groups and profiles, and how to use WMI queries to identify each model you have so the appropriate drivers get applied during Deployment.)
    5. Deploy to a workstation and voila, all patches are there, and only a few applied during actual Deployment.

    This is a very simplistic list of steps and there is more involved.  There are many many many blogs around with great guides on how to accomplish this, just do a few searches.  If you have issues with any step, just ask. : )


    David Coulter | http://DCtheGeek.blogspot.com | @DCtheGeek

    • Marked as answer by Jijo_Jose Sunday, March 10, 2013 1:05 PM
    Thursday, February 28, 2013 2:09 PM
  • Hi David

    The process looks good. I have to try this some time this week.

    In MDT 2012, there is an option to add packages like service packs, KB updates and patches. when we update deployment share, where this files are updating?.

    I belive, it update in install.wim file not WinPE. Is it right? Is there a way I can create s slipsteam boot image with all current updates without capturing a Windows 7 VM workstation?.  I am happy to use WSUS for future updates. Just intrested to see the reason of this error.

    Thaks

    Jijo

    Sunday, March 03, 2013 1:13 PM
  • When you add Packages, you'll point to a folder and it will import valid .CAB and .MSU files.  These files are physicallyed stored under your %DeploymentRoot% in a folder called "Packages" (much the way Applications are copied into the Application folder when imported).  This allows MDT to have access to them during the imaging since it maps the DeploymentShare during LTI.  So you'll add the Package, but you don't need to update your Deployment Share for them to be available, since they aren't part of WinPE.  You will need to utilize the "Install Offline Patches" Step in order to apply your custom Packages, however.

    I'm not sure what you mean "slipstream boot image" without capturing a Windows workstation?  If you want to create and use an image that has all the patches you've approved or imported already present as part of the base image, doing a capture is the best way.  Otherwise, you can use the "vanilla" image and apply them during the Deployment Task Sequence, but that will take more time.

    Not sure I answered your question as I'm not 100% sure what you were asking. : )


    David Coulter | http://DCtheGeek.blogspot.com | @DCtheGeek

    Monday, March 04, 2013 5:57 PM
  • Hi David

    Thanks for your replay. "Slipstream" is not a term used in MDT. This is basically adding all service packs and patches to Win 7 OEM DVD and use the same DVD to install windows 7. So the windows 7 will have all updates up to the time of DVD creation.

    I am still in the process of making the Gold image. I will let you know the updates.

    I was updating the  deployment share after importing all .CAB files to package folder. This was the reason's for the original error message. I was assuming after any changes in deployment share, an update deploymemt share is required to use this for LTI.

    Hope fully by end of the week I will let you know the success.

    Thanks

    Jijo

    Wednesday, March 06, 2013 12:05 PM
  • Hi David

    I noticed few issues with sysprep. I created a Lenovo T420 as reference computer and tried to capture WIM file in MDT. My Task

    sequence does Sysprep and Capture of the reference computer. I noticed many of the drivers are missing in T 420 reference computer after sysprep.

    where should I add PersistAllDeviceInstalls>true</PersistAllDeviceInstalls> command to keep all the current drivers in the reference computer?

    I saw an unattend.xml generated while creating the task sequence under the name of the task ID. where this file will be used.

    what is the best practice in sysprep while capture image for deployment. I do not want to install drivers again after deploying this image of the same type machine.

    Regards

    Jijo

    Wednesday, April 24, 2013 1:59 PM
  • See this (http://technet.microsoft.com/en-us/library/ee832798(v=ws.10).aspx) for info on keeping the drivers, but basically the setting is Microsoft-Windows-PnpSysPrep\PersistAllDeviceInstalls (edit your Unattend with WSIM).  Once you've created your Unattend for sysprep capture (don't use the default one for your Task Sequence generated by MDT), you can copy it into %DeployRoot%\Control\<TSID>\ as Unattend.TXT.  If Unattend.txt is found, LTISysprep (through ZTIUtility and the FindUnattendAnswerFile Function) will copy it into place and run the sysprep capture against it.

    You could also manually copy the Unattend for sysprep capture into the right folder and then manually run sysprep if you want, but doing it the way outlined above lets you automate it. : )


    David Coulter | http://DCtheGeek.blogspot.com | @DCtheGeek

    Wednesday, April 24, 2013 2:34 PM
  • Hi David

    Sorry to bother you again....

    I have a new problem now. I need to sysprep and capture  Windows 7 reference image. I made changes in Unattend.xml file in DeployRoot%\Control\<TSID>  folder to Persist all device drivers and enable auto login. But after sysprep and capture I can not login to Administrator account. It seems disabled. This is why I can not log back to my original reference image. I removed the hard disk of the reference computer and read it on another computer.  I compared unattend.xml file in the TSID folder and Panther folder of the reference computer. The Unattend file is not pushed properly to  Panther folder of reference image. Following Autologon part was missing on the Panther folder unextend file. Any idea why this happens?.

    How the unattend.xml file works when we sysprep and capture fully configured reference computer?.

    I tried to disable Sysprep part in Task sequence and image captured with out any problem. I need to make this process completely automated before I add this to production environment.

    <AutoLogon>
                    <Enabled>true</Enabled>
                    <Username>Administrator</Username>
                    <Domain>.</Domain>
                    <Password>
                        <Value>MyPassword</Value>
                        <PlainText>true</PlainText>
                    </Password>
                    <LogonCount>999</LogonCount>
                </AutoLogon>

    Regards

    Jijo

    Thursday, August 08, 2013 2:05 PM
  • Hello again.  Firstly, it's best if completely new issues are new posts.  You can reference other posts if there is related history, but it helps make things easier to read and find for others.

    That said, the AutoLogon stuff is part of oobeSystem pass in Sysprep, so it's not something that's used when you are doing a Capture (only Generalize is used).  The Specialize and oobeSystem are used when you apply the image to a machine.  So you probably need to look at the Unattend.xml used for your Deploy, not your Capture.  Also note that ZTIConfigure will take MDT variables and inject it into the Unattend.xml before it's applied during a Deploy, so it may not look exactly as the file you have after it's updated.


    David Coulter | http://DCtheGeek.blogspot.com | @DCtheGeek

    Thursday, August 08, 2013 3:14 PM