MDT Installation - CustomSettings.ini and BootStrap.ini (Part 4) 

Part 1, WDS and DHCP network dependencies for installing Windows systems over the network were installed and configured. 

Part 2, MDT, ADK and PE for ADK were downloaded and installed.

Part 3, the service account and share permissions are configured.

MDT uses two .ini files to apply and control deployments and captures during Windows installation, CustomSettings.ini and BootStrap.ini. These files can be accessed in the 'Control' folder under the root of the MDT Share. The files are also graphically accessible from the MDT Workbench as 'Rules' and 'Edit Bootstrap.ini'.

 

In the example below the 'Rules' aka CustomSettings.ini assign hostnames based on type of architecture, whether a VM, Desktop or Laptop.

 

You will also notice that Bitlocker (BDE) is rem'd out, despite some suggesting the in-built functions should be used, over time I've moved away from this approach and now personally prefer using Powershell scripts and setting local policy with LGPO.exe (this explains how). This is the same for adding clients to the Domain. 

To edit the 'Rules' and 'Bootstrap.ini' via the MDT console, open the 'Deployment Workbench' right click on the Deployment Share and Properties. 

The 'Rules' and 'Bootstrap.ini' tabs represents the files 'CustomSettings.ini' and 'Bootstrap.ini' in the Control folder under the root of the Deployment Share.

Below is the CustomSettings.ini I've used as a baseline reference for MDT installations. It demonstrates in-built variables such as Product, Model, ByVMType and DefaultGateway that are queried with the 'Gather' process during deployments and some of the common options used.

The MDT content and script etc could contain accounts, passwords or config its sensitive information. So keep it safe from others follow the instructions here to ensure the 'svc_mdtuser' account has only the required permissions and MDT Shares are configured correctly. 

The reason I mention this is that the standard approach is that %deployRoot%\Logs or %deployRoot%\Capture are used within the CustomSettings.ini, the example below references separate shares for %deployRoot%, Captures and Logs. Using the example below without updating either the shares or the settings, captures and logging wont work.

 

Click and download CustomSettings.txt and rename to .ini

CustomSettings.ini

[Settings]
Priority=Product,Model,ByVMType,ByLaptopType,ByDesktopType,DefaultGateway,Default
Properties=MyCustomProperty

' // Product

[Product]
Product=NUC6i5SYB

[NUC6i5SYB]
OSDComputerName=NUC6-001
BitsPerPel=32
VRefresh=60
XResolution=1920
YResolution=1080

[Model]
Model=XPS 15 9550

[XPS 15 9550]
'//Bit Locker
'//BDEInstall=TPM
'//BdeInstallSuppress=NO
'//BDeWaitForEncryption=TRUE
'//BDEDriveSize=2000
'//BDEDriveLetter=S:
'//BDEKeyLocation=C:
'//BDERecoveryKey=AD
'//BDEPin=12345
'//BDEAllowAlphaNumericPin=YES
'//TPMOwnerPassword=Password5555

[ByVMType]
Subsection=VM-%IsVM%

[VM-True]
OSDComputerName=VM#right("%SerialNumber%",10)#

'//BDEInstall=TPM
'//BdeInstallSuppress=YES

[ByLaptopType]
Subsection=Laptop-%IsLaptop%

[Laptop-True]
OSDComputerName=LP#right("%SerialNumber%",10)#

[ByDesktopType]
Subsection=Desktop-%IsDesktop%

[Desktop-True]
OSDComputerName=DT#right("%SerialNumber%",10)#

[DefaultGateway]
10.1.1.1=UK
192.168.2.1=USA

[UK]
TimeZoneName=GMT Standard Time
UILanguage=en-us
UserLocale=en-GB
Systemlocale=en-GB
KeyboardLocale=en-GB;0809:00000809
KeyboardLocalePE=en-GB;0809:00000809

[USA]
TimeZoneName=Pacific Standard Time
UILanguage=en-US
UserLocale=en-US
Systemlocale=en-US
KeyboardLocale=en-us;0409:00000409
KeyboardLocalePE=en-us;0409:00000409

[Default]
_SMSTSOrgName=Tenaka: %TaskSequenceID%


' // Wizard Pages
SkipWizard=NO
SkipAppsOnUpgrade=YES
SkipDeploymentType=YES
SkipCapture=NO
SkipComputerName=NO
SkipDomainMembership=YES
SkipUserData=YES
SkipComputerBackup=YES
SkipTaskSequence=NO
SkipProductKey=YES
SkipPackageDisplay=YES
SkipLocaleSelection=YES
SkipTimeZone=YES
SkipApplications=YES
SkipAdminPassword=YES
SkipBitLocker=YES
SkipSummary=YES
SkipFinalSummary=YES
SkipCredentials=YES
SkipRoles=YES

'// Build Settings - MDT Image Engineering
OSInstall=Y
SLShare=\\10.1.1.2\Logs$
DeploymentType=NEWCOMPUTER
'//JoinWorkgroup=WORK99
BackupFile = %TaskSequenceID%-#day(date)&"-"&month(date)&"-"&year(date)#.wim
ComputerBackupLocation=\\10.1.1.2\Captures$
DoCapture=NO
HideShell=NO
TaskSequenceID=WIN10ENT_1.0
FinishAction=REBOOT


OrgName=Tenaka Plc
AdminPassword=Password12345
AreaCode=020
CountryCode=44
Dialing=TONE
LongDistanceAccess=1
BitsPerPel=32
VRefresh=60
XResolution=1
YResolution=1

'//Capture Credentials
'//UserID=sh\svc_mdtuser

UserID=svc_mdtuser
UserPassword=Password1234

' // MDT Monitoring and Update Server
EventService=http://10.1.1.2:9800
WSUSServer=http://10.1.1.3:8530

Click and download BootStrap.txt and rename to .ini

Bootstrap.ini

Any changes to the Bootstrap.ini will require a new WinPE image being generated.

The 'SkipBDDWelcome=YES' is required for zero touch deployments.

[Settings]
Priority=Default

[Default]
SkipBDDWelcome=YES
DeployRoot=\\10.1.1.2\DeploymentShare$
UserDomain=.
UserID=svc_mdtuser
UserPassword=Password1234

Part 5, Importing OS and Application media.