Deploy A Windows 10 Image Using MDT
Deploy A Windows 10 Image Using MDT
10/16/2017
26 minutes to read
Applies to
Windows 10
This topic will show you how to take your reference image for Windows 10, and
deploy that image to your environment using the Microsoft Deployment Toolkit
(MDT). You will prepare for this by creating a MDT deployment share that is used
solely for image deployment. Separating the processes of creating reference images
from the processes used to deploy them in production allows greater control of on
both processes. You will then configure the deployment share, create a new task
sequence, add applications, add drivers, add rules, and configure Active Directory
permissions for deployment.
For the purposes of this topic, we will use three machines: DC01, MDT01, and
PC0005. DC01 is a domain controller, MDT01 is a Windows Server 2012 R2 standard
server, and PC0005 is a blank machine to which you deploy Windows 10. MDT01 and
PC0005 are members of the domain contoso.com for the fictitious Contoso
Corporation.
Note
For important details about the setup for the steps outlined in this article, please
see Deploy Windows 10 with the Microsoft Deployment Toolkit.
In these steps, we assume that you have completed the steps in the Create a
Windows 10 reference image topic, so you have a Windows 10 reference image in
the E:\MDTBuildLab\Captures folder on MDT01.
1. Using the Deployment Workbench, expand the Deployment Shares node, and
then expand MDT Production; select the Operating Systems node, and create
a folder named Windows 10.
2. Right-click the Windows 10 folder and select Import Operating System.
3. On the OS Type page, select Custom image file and click Next.
4. On the Image page, in the Source file text box, browse
to E:\MDTBuildLab\Captures\REFW10X64-001.wim and click Next.
5. On the Setup page, select the Copy Windows 7, Windows Server 2008 R2, or
later setup files from the specified path option; in the Setup source
directory text box, browse to E:\MDTBuildLab\Operating
Systems\W10EX64RTM and click Next.
6. On the Destination page, in the Destination directory name text box,
type W10EX64RTM, click Next twice, and then click Finish.
7. After adding the operating system, double-click the added operating system
name in the Operating Systems / Windows 10 node and change the name to
match the following: Windows 10 Enterprise x64 RTM Custom Image.
Note
The reason for adding the setup files has changed since earlier versions of MDT. MDT
2010 used the setup files to install Windows. MDT uses DISM to apply the image;
however, you still need the setup files because some components in roles and
features are stored outside the main image.
In this example, we assume that you have downloaded the Adobe Reader XI
installation file (AdbeRdr11000_eu_ES.msi) to E:\Setup\Adobe Reader on MDT01.
1. Using the Deployment Workbench, expand the MDT Production node and
navigate to the Applications node.
2. Right-click the Applications node, and create a new folder named Adobe.
3. In the Applications node, right-click the Adobe folder and select New
Application.
4. On the Application Type page, select the Application with source
files option and click Next.
5. On the Details page, in the Application name text box, type Install - Adobe
Reader XI - x86 and click Next.
6. On the Source page, in the Source Directory text box, browse
to E:\Setup\Adobe Reader XI and click Next.
7. On the Destination page, in the Specify the name of the directory that
should be created text box, type Install - Adobe Reader XI - x86 and
click Next.
8. On the Command Details page, in the Command Line text box, type msiexec
/i AdbeRdr11000_eu_ES.msi /q, click Next twice, and then click Finish.
Note
You should only add drivers to the Windows PE images if the default drivers don't
work. Adding drivers that are not necessary will only make the boot image larger and
potentially delay the download time.
Create the driver source structure in the file system
The key to successful management of drivers for MDT, as well as for any other
deployment solution, is to have a really good driver repository. From this repository,
you import drivers into MDT for deployment, but you should always maintain the
repository for future use.
Note
Even if you are not going to use both x86 and x64 boot images, we still recommend
that you add the support structure for future use.
Create the logical driver structure in MDT
When you import drivers to the MDT driver repository, MDT creates a single instance
folder structure based on driver class names. However, you can, and should, mimic
the driver structure of your driver source repository in the Deployment Workbench.
This is done by creating logical folders in the Deployment Workbench.
The preceding folder names are selected because they match the actual make and
model values that MDT reads from the machines during deployment. You can find
out the model values for your machines via the following command in Windows
PowerShell:
syntaxCopy
Get-WmiObject -Class:Win32_ComputerSystem
If you want a more standardized naming convention, try the ModelAliasExit.vbs script
from the Deployment Guys blog post entitled Using and Extending Model Aliases for
Hardware Specific Application Installation.
Figure 4. The Out-of-Box Drivers structure in Deployment Workbench.
Create the selection profiles for boot image drivers
By default, MDT adds any storage and network drivers that you import to the boot
images. However, you should add only the drivers that are necessary to the boot
image. You can control which drivers are added by using selection profiles. The
drivers that are used for the boot images (Windows PE) are Windows 10 drivers. If
you can’t locate Windows 10 drivers for your device, a Windows 7 or Windows 8.1
driver will most likely work, but Windows 10 drivers should be your first choice.
Windows PE supports all the hardware models that we have, but here you learn to
add boot image drivers to accommodate any new hardware that might require
additional drivers. In this example, you add the latest Intel network drivers to the x64
boot image. In these steps, we assume you have downloaded PROWinx64.exe from
Intel.com and saved it to a temporary folder.
For the Lenovo T420 model, you use the Lenovo ThinkVantage Update Retriever
software to download the drivers. With Update Retriever, you need to specify the
correct Lenovo Machine Type for the actual hardware (the first four characters of the
model name). As an example, the Lenovo T420 model has the 4178B9G model name,
meaning the Machine Type is 4178.
To get the updates, you download the drivers from the Lenovo ThinkVantage Update
Retriever using its export function. You can download the drivers from the Lenovo
website.
In these steps, we assume you have downloaded and extracted the drivers using
ThinkVantage Update Retriever v5.0 to the E:\Drivers\Lenovo\ThinkPad T420 (4178)
folder.
For the Dell Latitude E6440 model, you use the Dell Driver CAB file, which is
accessible via the Dell TechCenter website.
In these steps, we assume you have downloaded and extracted the CAB file for the
Latitude E6440 model to the E:\Drivers\Dell\Latitude E6440 folder.
For the HP EliteBook 8560w, you use HP SoftPaq Download Manager to get the
drivers. The HP SoftPaq Download Manager can be accessed on the HP Support site.
In these steps, we assume you have downloaded and extracted the drivers for the HP
EliteBook 8650w model to the E:\Drivers\Windows 10 x64\HP\HP EliteBook 8560w
folder.
For the Microsoft Surface Pro model, you find the drivers on the Microsoft website. In
these steps we assume you have downloaded and extracted the Surface Pro 3 drivers
to the E:\Drivers\Windows 10 x64\Microsoft\Surface Pro 3 folder.
syntaxCopy
[Settings]
Priority=Default
[Default]
_SMSTSORGNAME=Contoso
OSInstall=YES
UserDataLocation=AUTO
TimeZoneName=Pacific Standard Time
AdminPassword=P@ssw0rd
JoinDomain=contoso.com
DomainAdmin=CONTOSO\MDT_JD
DomainAdminPassword=P@ssw0rd
MachineObjectOU=OU=Workstations,OU=Computers,OU=Contoso,DC=contoso,DC=
com
SLShare=\\MDT01\Logs$
ScanStateArgs=/ue:*\* /ui:CONTOSO\*
USMTMigFiles001=MigApp.xml
USMTMigFiles002=MigUser.xml
HideShell=YES
ApplyGPOPack=NO
WSUSServer=mdt01.contoso.com:8530
SkipAppsOnUpgrade=NO
SkipAdminPassword=YES
SkipProductKey=YES
SkipComputerName=NO
SkipDomainMembership=YES
SkipUserData=YES
SkipLocaleSelection=YES
SkipTaskSequence=NO
SkipTimeZone=YES
SkipApplications=NO
SkipBitLocker=YES
SkipSummary=YES
SkipCapture=YES
SkipFinalSummary=NO
[Settings]
Priority=Default
[Default]
DeployRoot=\\MDT01\MDTProduction$
UserDomain=CONTOSO
UserID=MDT_BA
SkipBDDWelcome=YES
5. In the Windows PE tab, in the Platform drop-down list, make sure x86 is
selected.
6. In the General sub tab, configure the following settings:
In the Lite Touch Boot Image Settings area:
a. Image description: MDT Production x86
b. ISO file name: MDT Production x86.iso Note
Because you are going to use Pre-Boot Execution Environment (PXE)
later to deploy the machines, you do not need the ISO file; however, we
recommend creating ISO files because they are useful when
troubleshooting deployments and for quick tests.
7. In the Drivers and Patches sub tab, select the WinPE x86 selection profile and
select the Include all drivers from the selection profile option.
8. In the Windows PE tab, in the Platform drop-down list, select x64.
9. In the General sub tab, configure the following settings:
In the Lite Touch Boot Image Settings area:
. Image description: MDT Production x64
a. ISO file name: MDT Production x64.iso
10. In the Drivers and Patches sub tab, select the WinPE x64 selection profile and
select the Include all drivers from the selection profile option.
11. In the Monitoring tab, select the Enable monitoring for this deployment
share check box.
12. Click OK.
Note
It will take a while for the Deployment Workbench to create the monitoring database
and web service.
Figure 7. The Windows PE tab for the x64 boot image.
The rules explained
The rules for the MDT Production deployment share are somewhat different from
those for the MDT Build Lab deployment share. The biggest differences are that you
deploy the machines into a domain instead of a workgroup and that you do not
automate the logon.
The Bootstrap.ini file
This is the MDT Production Bootstrap.ini without the user credentials (except domain
information):
syntaxCopy
[Settings]
Priority=Default
[Default]
DeployRoot=\\MDT01\MDTProduction$
UserDomain=CONTOSO
UserID=MDT_BA
SkipBDDWelcome=YES
This is the CustomSettings.ini file with the new join domain information:
syntaxCopy
[Settings]
Priority=Default
[Default]
_SMSTSORGNAME=Contoso
OSInstall=Y
UserDataLocation=AUTO
TimeZoneName=Pacific Standard Time
AdminPassword=P@ssw0rd
JoinDomain=contoso.com
DomainAdmin=CONTOSO\MDT_JD
DomainAdminPassword=P@ssw0rd
MachineObjectOU=OU=Workstations,OU=Computers,OU=Contoso,DC=contoso,DC=com
SLShare=\\MDT01\Logs$
ScanStateArgs=/ue:*\* /ui:CONTOSO\*
USMTMigFiles001=MigApp.xml
USMTMigFiles002=MigUser.xml
HideShell=YES
ApplyGPOPack=NO
WSUSServer=http://mdt01.contoso.com:8530
SkipAppsOnUpgrade=NO
SkipAdminPassword=YES
SkipProductKey=YES
SkipComputerName=NO
SkipDomainMembership=YES
SkipUserData=YES
SkipLocaleSelection=YES
SkipTaskSequence=NO
SkipTimeZone=YES
SkipApplications=NO
SkipBitLocker=YES
SkipSummary=YES
SkipCapture=YES
SkipFinalSummary=NO
EventService=http://MDT01:9800
The additional properties to use in the MDT Production rules file are as follows:
If your organization has a Microsoft Software Assurance agreement, you also can
subscribe to the additional Microsoft Desktop Optimization Package (MDOP) license
(at an additional cost). Included in MDOP is Microsoft Diagnostics and Recovery
Toolkit (DaRT), which contains tools that can help you troubleshoot MDT
deployments, as well as troubleshoot Windows itself.
Add DaRT 10 to the boot images
If you have licensing for MDOP and DaRT, you can add DaRT to the boot images
using the steps in this section. If you do not have DaRT licensing, or don't want to
use it, simply skip to the next section, Update the Deployment Share. To enable the
remote connection feature in MDT, you need to do the following:
Like the MDT Build Lab deployment share, the MDT Production deployment share
needs to be updated after it has been configured. This is the process during which
the Windows PE boot images are created.
You need to add the MDT Production Lite Touch x64 Boot image to WDS in
preparation for the deployment. For the following steps, we assume that Windows
Deployment Services has already been installed on MDT01.
1. Using the WDS console, right-click Boot Images and select Add Boot Image.
2. Browse to the E:\MDTProduction\Boot\LiteTouchPE_x64.wim file and add the
image with the default settings.
At this point, you should have a solution ready for deploying the Windows 10 client.
We recommend starting by trying a few deployments at a time until you are
confident that your configuration works as expected. We find it useful to try some
initial tests on virtual machines before testing on physical hardware. This helps rule
out hardware issues when testing or troubleshooting. Here are the steps to deploy
your Windows 10 image to a virtual machine:
1. Create a virtual machine with the following settings:
a. Name: PC0005
b. Location: C:\VMs
c. Generation: 2
d. Memory: 2048 MB
e. Hard disk: 60 GB (dynamic disk)
2. Start the PC0005 virtual machine, and press Enter to start the PXE boot. The
machine will now load the Windows PE boot image from the WDS server.
Now that you have enabled the monitoring on the MDT Production deployment
share, you can follow your deployment of PC0005 via the monitoring node.
Figure 11. The Monitoring node, showing the deployment progress of PC0005.
Use information in the Event Viewer
When monitoring is enabled, MDT also writes information to the event viewer on
MDT01. This information can be used to trigger notifications via scheduled tasks
when deployment is completed. For example, you can configure scheduled tasks to
send an email when a certain event is created in the event log.
Figure 12. The Event Viewer showing a successful deployment of PC0005.
Multicast deployments
Multicast deployment allows for image deployment with reduced network load
during simultaneous deployments. Multicast is a useful operating system
deployment feature in MDT deployments, however it is important to ensure that your
network supports it and is designed for it.
Requirements
Offline media are useful not only when you do not have network connectivity to the
deployment share, but also when you have limited connection to the deployment
share and do not want to copy 5 GB of data over the wire. Offline media can still join
the domain, but you save the transfer of operating system images, drivers, and
applications over the wire.
Create the offline media selection profile
To filter what is being added to the media, you create a selection profile. When
creating selection profiles, you quickly realize the benefits of having created a good
logical folder structure in the Deployment Workbench.
In these steps, you generate offline media from the MDT Production deployment
share. To filter what is being added to the media, you use the previously created
selection profile.
Offline media has its own rules, its own Bootstrap.ini and CustomSettings.ini files.
These files are stored in the Control folder of the offline media; they also can be
accessed via properties of the offline media in the Deployment Workbench.
You have now configured the offline media deployment share however the share has
not yet been populated with the files required for deployment. Now everything is
ready you populate the deployment share content folder and generate the offline
media ISO.
The ISO that you got when updating the offline media item can be burned to a DVD
and used directly (it will be bootable), but it is often more efficient to use USB sticks
instead since they are faster and can hold more data. (A dual-layer DVD is limited to
8.5 GB.) Follow these steps to create a bootable USB stick from the offline media
content:
1. On a physical machine running Windows 7 or later, insert the USB stick you
want to use.
2. Copy the content of the MDTOfflineMedia\Content folder to the root of the
USB stick.
3. Start an elevated command prompt (run as Administrator), and start the
Diskpart utility by typing Diskpart and pressing Enter.
4. In the Diskpart utility, you can type list volume (or the shorter list vol) to list
the volumes, but you really only need to remember the drive letter of the USB
stick to which you copied the content. In our example, the USB stick had the
drive letter F.
5. In the Diskpart utility, type select volume F (replace F with your USB stick drive
letter).
6. In the Diskpart utility, type active, and then type exit.