The Deployment Bunny

Subscribe to The Deployment Bunny feed The Deployment Bunny
OS Deployment, Virtualization, Microsoft based Infrastructure...
Updated: 21 min 49 sec ago

Back to Basic: .NET Framework 4.5.2 deployment in MDT using a VB Script wrapper

Fri, 06/27/2014 - 01:48

I got a tweet, it said “Why doing 4.5.1 when 4.5.2 is out”. So, this is just an update of the 4.5.1 post you can see here. http://deploymentbunny.com/2014/06/24/back-to-basic-net-framework-4-5-1-deployment-in-mdt-using-a-vb-script-wrapper/

How to Use it

Step 1: Download it

Download it from here: http://1drv.ms/TDbKJC

Step 2: Import it as an Application

Using the Deployment Workbench, import the application with the following options:

  • Application Type:
    • Application with source files
  • Details:
    • Application Name: Install – Microsoft .NET Framework 4.5.2
  • Source:
    • Source Directory: The location where you unzipped the files
  • Destination:
    • Directory Name: Install – Microsoft .NET Framework 4.5.2
  • Command Details:
    • Command Line: cscript.exe Install-NetFramework452.wsf

If you prefer PowerShell to import the application, here is an example POSH Snippet:

Import-Module "C:\Program Files\Microsoft Deployment Toolkit\bin\MicrosoftDeploymentToolkit.psd1"

New-PSDrive -Name "DS001" `
-PSProvider MDTProvider `
-Root "E:\MDTBuildLab"

import-MDTApplication `
-path "DS001:\Applications\Install" `
-enable "True" `
-Name "Install – Microsoft .NET Framework 4.5.2" `
-ShortName "Install – Microsoft .NET Framework 4.5.2" -Version "" `
-Publisher "" `
-Language "" `
-CommandLine "cscript.exe Install-NetFramework452.wsf" `
-WorkingDirectory ".\Applications\Install – Microsoft .NET Framework 4.5.2" `
-ApplicationSourcePath "C:\Users\Administrator\Desktop\Install – Microsoft .NET Framework 4.5.2" `
-DestinationFolder "Install – Microsoft .NET Framework 4.5.2" `
-Verbose

Step 3: Download .NET framework 4.5.2 exe file and save it in the Application\Source folder

Download from http://www.microsoft.com/en-us/download/details.aspx?id=42642

Step 4: Modify the Task Sequence

Open your task sequence and add the application like this:

Sample of a Windows 7 task sequence with .NET Framework 4.5.2


Sample of a Windows 8.1 task sequence with .NET Framework 4.5.2

Note: You might need to add a reboot before and one after, since .Net Framework might feel better, my sequence does not need it, but yours might depending on what you add before this.

Note: For Windows 8/8.1 (Server 2012/2012 R2) I always add .NET 2/3 as Roles BEFORE adding 4.5.2, just to make sure nothing is messed up.

Step 5: Create your Ref Image

/mike


Categories: MDT

Back to Basic: .NET Framework 4.5.1 deployment in MDT using a VB Script wrapper

Tue, 06/24/2014 - 02:25

Yesterday an OS Deployment friend (you know who you are…) asked around for a way to install .NET Framework 4.5.1 as a part of the reference image creation and I told him I would post it today, so here it is. The reason I do this with VB script wrappers (not only me, most of the people I know and works with OSD does that) is logging and full control, but also the fact that I have a bunch of VBscripts that are very similar and the fact that MDT has a very nice module called ZTIUtility that connects external scripts built in functions make this a very easy choice.

How to Use it Step 1: Download it

Download it from here: http://1drv.ms/TqAqVD

Step 2: Import it as an Application

Using the Deployment Workbench, import the application with the following options:

  • Application Type:
    • Application with source files
  • Details:
    • Application Name: Install – Microsoft .NET Framework 4.5.1
  • Source:
    • Source Directory: The location where you unzipped the files
  • Destination:
    • Directory Name: Install – Microsoft .NET Framework 4.5.1
  • Command Details:
    • Command Line: cscript.exe Install-NetFramework451.wsf

If you prefer PowerShell to import the application, here is an example POSH Snippet:

Import-Module "C:\Program Files\Microsoft Deployment Toolkit\bin\MicrosoftDeploymentToolkit.psd1"

New-PSDrive -Name "DS001" `
-PSProvider MDTProvider `
-Root "E:\MDTBuildLab"

import-MDTApplication `
-path "DS001:\Applications\Install" `
-enable "True" `
-Name "Install – Microsoft .NET Framework 4.5.1" `
-ShortName "Install – Microsoft .NET Framework 4.5.1" -Version "" `
-Publisher "" `
-Language "" `
-CommandLine "cscript.exe Install-NetFramework451.wsf" `
-WorkingDirectory ".\Applications\Install – Microsoft .NET Framework 4.5.1" `
-ApplicationSourcePath "C:\Users\Administrator\Desktop\Install – Microsoft .NET Framework 4.5.1" `
-DestinationFolder "Install – Microsoft .NET Framework 4.5.1" `
-Verbose

Step 3: Download .NET framework 4.5.1 and save it in the application folder

Download from http://www.microsoft.com/en-us/download/details.aspx?id=40779

Step 4: Modify the Task Sequence

Open your task sequence and add the application like this:

Sample of a Windows 7 task sequence with .NET Framework 4.5.1


Sample of a Windows 8.1 task sequence with .NET Framework 4.5.1

Note: You might need to add a reboot before and one after, since .Net Framework might feel better, my sequence does not need it, but yours might depending on what you add before this.

Note: For Windows 8/8.1 (Server 2012/2012 R2) I always add .NET 2/3 as Roles BEFORE adding 4.5.1, just to make sure nothing is messed up.

Step 5: Create your Ref Image

/mike


Categories: MDT

Nice to Know–After a long time, Emulex now finally admit that there is an issue in the firmware and help is soon to appear

Sun, 06/22/2014 - 11:28

The combo of Hyper-V, VMQ, Emulex and lost network connectivity has been a nightmare for a long time. We have tried it all and the ONLY solution that works has been to disable VMQ, which sucks. Just a couple of days ago Emulex posted a note where they state that “some customers” (that is BS!) have reported loss of network connectivity. But there is light in the tunnel, they are working on new firmware so stay tuned for that. The new firmware is about to released mid-July 2014.

You should read the entire story and you can do that here:

http://blogs.emulex.com/implementers/2014/06/19/microsoft-windows-20122012-r2-hyper-vms-losing-network-connectivity-workaround/

/mike


Categories: MDT

Nice to Know–Implementing Internet Explorer Enterprise Mode with central logging to .ASP page

Sat, 06/21/2014 - 20:13

Recently I was working at a customer (you know how your are…) and the discussion on IE 11 popped up, we talked about the new Enterprise Mode (which is great). It ended up with one question…

So, how to implement this in the real world then?

I have to admit, that is a very valid question, but before we dive into the nitty-gritty stuff, what is Internet Explorer Enterprise Mode (if I’m wrong Fred at Microsoft is going to give me a hard time next we see each other). To make a very long story short, it is a way to present Internet Explorer in an old style for the web server, so instead of being “like Gecko”, it present it self as “MSIE” (like old IE version would do) and and the same time the rendering engine is working more or less the same way as Internet Explorer 8. The purpose is to be able to access old style internal websites, making business and users happy. Download for all the scripts IF you know this stuff – http://1drv.ms/1rkSxrN

If you want to read more about this and see other solutions around this:

Step 1 – Deploy Internet Explorer in the Reference Image using IEAK

Installing IE 11 can be installed manually, but please that is for consumers and non IT Pros, just don’t do that. It is also possible to deploy using Windows Update, but that is not correct way IMHO. Using IEAK is by far the best way. Download IEAK, create a package including all the settings you should have, try them out and include that as an app in the reference image.

Step 2 – Install/Configure a Website to host the global response file and the global host list

This is very easy, you just need a web server that has the “feature” of running an .ASP site. That means basically ANY webserver with .ASP install and enabled.

- Create a folder structure, in this example we will use E:\IEEM, E:\IEEM\Root and E:\IEEM\Logs

- Add support for .ASP in IIS in Windows Server 2012 R2


Support for .ASP is added to IIS.

- Create a new site that uses a port 8000 (or something else or even a hostname, as long as you can reach it..) in a folder (I’m using E:\IEEM\Root), like this.


The IEEM site is using E:\IEEM\Root as root folder and an application pool called IEEM(It will be created for you when you create the site).


The IEEM site created using port 8000.

Step 3 – Create the .ASP page to let users automatically post when Enterprise Mode is used

- Open your favorite text file creator and create the reportieem.asp file like this (You can download this from: http://1drv.ms/1rkSxrN )

————————————————

<% @ LANGUAGE=javascript %>

<%
var objFSO, objTextFile;
var DateTime, URL, EnterpriseMode, REMOTE_ADDR;
var ForReading = 1, ForWriting = 2, ForAppending = 8;

objFSO = new ActiveXObject("Scripting.FileSystemObject");
objTextFile =objFSO.OpenTextFile("E:\\IEEM\\Logs\\UserSelectedIEMode.log", ForAppending, true);

objTextFile.WriteLine("IE Mode Change," + (new Date()) + "," + Request.Form("URL") + "," + Request.Form("EnterpriseMode") + "," + Request.ServerVariables("REMOTE_ADDR"));

objTextFile.Close();
%>

———————————————–

- Save the file in E:\IEEM\Root as reportieem.asp

- Note: If you have another folder structure, you need to modify reportieem.asp accordingly.

- Modify the permissions in the E:\IEEM\Logs for IUSR, since that is the process that will create AND update the log file. The Modify permissions should be enough.


Permissions for the Logs folder modified.

- Test it before you continue, by browsing to that page. If everything is correct you should se NOTHING in your web browser, but if you open the log file (E:\IEEM\Logs\UserSelectedIEMode.log) you should see something very similar to this:


Reading the log file to test the web servers capability to execute .ASP pages as well as testing the permissions for the webserver to write in the log folder.

Step 4 – Install the Enterprise List Manager

The Enterprise List Manager is a editing/import/export tool from Microsoft that has the ability to import lists of website that should be in Enterprise mode and save that to an XML file that Internet Explorer 11 will read and use to set each URL in the correct mode that we have defined as either Default or Enterprise Mode. You download it from here: http://www.microsoft.com/en-us/download/details.aspx?id=42501

- Install the Enterprise List Manager using the “next-next” method.


The Enterprise List Manager installed and started.

Step 5 – Create a Group Policy to configure Enterprise Mode

- Create a Group Policy that will affect users/computers (I prefer users for this kind of policy) that you would like to configure. As a best practices you should a a small pilot group that you test on first. Enable the following policy’s:

- Enable: Turn on menu bar by default (since the Enterprise Mode selection is on the menu bar it make sense to have it enabled…)


Turn on menu bar by default – Enabled.

- Enable: Let users turn on and use Enterprise Mode from the Tools menu (They really need to see it.) and type in the URL to the webpage you created in step number 3. In my demo case it is: http://srvmgt01.network.local:8000/reportieem.asp


Let users turn on and use Enterprise Mode from the Tools menu – Enabled.

- Enable: Use the Enterprise IE website list (this XML file will be read by IE, stored locally and used as a global list for all URL’s that needs to run in Enterprise mode). In my case that is: http://srvmgt01.network.local:8000/ieem.xml

- Note: This file is empty, but you will soon add content to it using the Enterprise List Manager.


Use the Enterprise IE website list – Enabled.

Step 6 – Run GPUpdate /force (or wait until it runs automatically) and verify that you can see the menu bar and the Enterprise Mode settings in Internet Explorer 11

- Test browsing to http://www.bing.com and on the tools bar you should now be able to switch into Enterprise Mode


Running Bing.com in Enterprise Mode.

Step 7 – Read the E:\IEEM\Logs\UserSelectedIEMode.log using CMTrace.

Since you selected to run Bing.com in Enterprise Mode, that was POST:ed to the ASP webpage and therefore recored in the UserSelectedIEMode.log file.

- Open the UserSelectedIEMode.log using CMtrace.exe (or Notepad.exe) and you will see something like this:


The UserSelectedIEMode.log opened in CMtrace.exe.

Step 8a – Examine the log file using PowerShell

Using PowerShell we can make the log file a bit better by removing duplicates and such. So, if you open an elevated PowerShell prompt or PowerShell Integrated Environment you can run this PowerShell commands to get a better output.

IIEM-LogAnalyzer.ps1 (You can download this from: http://1drv.ms/1rkSxrN )

——————————————-

$IEEMFileSource = "E:\IEEM\Logs\UserSelectedIEMode.log"
$IEEMData = Import-Csv -Delimiter "," -Path $IEEMFileSource -Header Event,Time,URL,Mode,Client

$IEEMDataSorted = $IEEMData | Group-Object URL,Mode | ForEach-Object {$_.group | Sort-Object Mode | Select-Object -last 1}
$IEEMDataSorted | Sort-Object Time | Format-Table Time,URL,Mode

——————————————-


Running IIEM-LogAnalyzer.ps1 to get a better understanding what is needed to be running in Enterprise Mode.

Step 8b – Convert the log file to a csv file so that we can Bulk import to the Enterprise List Manager.

Using PowerShell we can convert the log file into a CSV so we can import that into the Enterprise List manager and then Create the XML file with the central configuration for Internet Explorer to read in. Use the same PowerShell prompt or Integrated Scripting Environment and execute this:

IIEM-LogToCSVConverter.ps1 (You can download this from: http://1drv.ms/1rkSxrN )

——————————————-

$IEEMFileSource = "E:\IEEM\Logs\UserSelectedIEMode.log"
$IEEMUrlSource = "E:\IEEM\Logs\UserSelectedIEMode.csv"
$IEEMData = Import-Csv -Delimiter "," -Path $IEEMFileSource -Header Event,Time,URL,Mode,Client

$UrlList = foreach ($Item in $IEEMData){If ($Item.Mode = "On"){$Item.URL}}
$UrlList | Select-Object -Unique | Out-File $IEEMUrlSource

——————————————-


Running IIEM-LogToCSVConverter.ps1 to get a CSV for import to Enterprise List Manager.

Step 9 – Import the CSV file into the Enterprise List Manager and save to the XML file

- Start the Enterprise Mode Site List Manager and select to “Bulk add from file”. Browse to E:\IEEM\Logs\UserSelectedIEMode.csv and follow the instructions (You can read more on how to perform a bulk import here http://technet.microsoft.com/en-us/library/dn640696.aspx)


Performing an Bulk Import.

- View, edit, modify and play around.


Editing a entry in the Enterprise Mode List Manager.

- Save the XML file as E:\IEEM\Root\ieem.xml

Step 10 – The Final Test

- Logon to a machine that is affected by the policy and have Internet Explorer 11, restart IE (just to make sure) and the net result should be this if you visit www.bing.com


As you can see, Enterprise is now pre-selected and cannot be changed, since the Super Cool IT Pro has discovered that many users have selected Enterprise mode to solve an issue and therefore the Super Cool IT Pro decided to help the rest of the organization and therefore he/she will be the employee of the months and wins a new Ferrari.

Step – Drive the Ferrari

Congratulations!

/mike


Categories: MDT

Nice to Know–Combine multiple application for multiple OS versions into one Bundle

Wed, 06/18/2014 - 12:49

A customer asked me:

“Mike, I’m deploying Windows 7 and Windows 8.1 and in some cases there is different versions of applications for different versions of the OS, but I would like to use Mandatory Applications in customsettings.ini based that is tied to model?”

That is a scenario that is rather easy to fix, however it can be fix in many different ways. Scripting is one, rerunning the gather step and use conditions based on other way, using OSVersionNumber is another. It could also be the situation that you for a reason is running Windows 7 x86 and Windows 8.1 x64 as your two different operating system and therefor you have different applications, but you would like to be able to have only “one” application. That way you can still use rules to deploy the application or you would make it easier for the technician that performs the deployment of the client. But here is one other trick:

Using Bundles with conditions

Let us assume that you are deploying Windows 7 and Windows 8.1 to a certain hardware model and that hardware requires a certain software and that the software comes in two different versions then you can do the following:

  • Import the Windows 7 and Windows 8 application.


    My two applications imported into Deployment Workbench.

  • Set the conditions for each application


    Conditions for the Windows 7 x86 application.


    Conditions for the Windows 8.1 x64 application.

  • Hide the Applications


    The “Install – Software for Model X – Windows 8.1 x64” has been hidden, repeat for the Windows 7 x86 application.

  • Create a bundle application
  • Add the both applications as dependences.


    Both applications have been added to the bundle.

If you install the bundle only one of the applications will be installed, since the dependences have conditions that does not overlap.

Using Customsettings.ini and MandatoryApplications to install each application for the correct operating system.

If you modify the rules in LiteTouch (customsettings.ini) you can now based on model use the bundle GUID instead of having to use two applications


Using MandatoryApplications001 with the GUID from the Bundle and installing it based on Model.

/mike


Categories: MDT

Nice to Know – A Geeks Guide for upgrading to ConfigMgr 2012 R2 and MDT 2013

Tue, 06/17/2014 - 18:48

Upgrading to ConfigMgr 2012 R2 is not a pain, but it could be. You really need to read and understand before you begin your journey.

The basic story is that you do an in-place upgrade and then fix “some” post items.

Just follow this fellow MVP and you should be good

Deployment Research (Johan Arwirdmark) http://www.deploymentresearch.com/Research/tabid/62/EntryId/117/A-Geeks-Guide-for-upgrading-to-ConfigMgr-2012-R2-and-MDT-2013.aspx

/mike


Categories: MDT

Nice to Know – How to speed up PXE boot in WDS and SCCM

Tue, 06/17/2014 - 18:08

“I feel the need, the need for more speed” does make sense to me.

By changing the the TFTP package size between the client and the PXE server you could achieve that.

So, if you really like speed and performance you might want to read a post that could help you.

How to speed up PXE boot in WDS and SCCM

During a PXE boot, when the boot image file is being loaded in the client, it should not take any longer than a few minutes time depending on the size of the boot.wim and your network. If it seems that your PXE boot times are extremely slow, you may be able to speed up the process by increasing the TFTP block size. This article will show you how to speed up PXE boot in WDS and SCCM.

Trivial File Transfer Protocol (TFTP) is the network protocol used for downloading all files during network boots. TFTP is an inherently slow protocol because it requires one ACK (acknowledgment) packet for each block of data that is sent. The server will not send the next block in the sequence until the ACK packet for the previous block is received. As a result, on a slow network, the round-trip time can be very long.

Follow the steps below to increase the TFTP block size in both a WDS and SCCM 2007 environment.

Read rest of the blog here


Categories: MDT

OSD–Using ZTISendMail to send email in a LTI/ZTI task sequence

Fri, 06/13/2014 - 09:33

Long time ago I had a need to send email an email in the end of the task sequence to notify the technician that the OS deployment was done, therefore creating a script which then ended up as a blog post at Deployment Research about two years ago. This week I’m running a Mastering Windows 7 and 8.1 OS Deployment using Lite Touch and Zero Touch in Minnesota and there where some requests on the subject so I decided to create a new version of the script and this time it is a PowerShell script instead. One of the request was to be able to send and email to the administrator that does the deployment (in Lite Touch) using the login name, so that need to to be taken under considerations to.

The script is tested in MDT 2013 but should work perfect in MDT 2012 Update 1 as well and it works when deploying Windows 8 and above.

Lite Touch

First you need to download the script and sample customsettings.ini  from here http://1drv.ms/1kvmobn and store the PowerShell it in the MDT Scripts folder.

Option Number One: Using the UserID directly

Update the CustomSettings like this. (you can copy and paste from the sample customsettings.ini files)

The name used to login to the LTI Wizard is defined as UserID and that is then used as a part of the email address to send it to.

Option Number Two: Using the UserID with translation.

In this case we create a section for every user account that should have an email an can logon. As an example, if you login as Administrator (don’t use that account!) an email would be sent to administartor@viamonstra.com, but you can have any other setting for that userID if you liketo.

Update the CustomSettings like this. (you can copy and paste from the sample customsettings.ini files)

Add a step in the TaskSequence.

Zero Touch

First you need to download the script and sample customsettings.ini  from here http://1drv.ms/1kvmobn and store the PowerShell it in the MDT Package Scripts folder.

In the ZTI we don’t really have a UserID and therefore we just send the email to a predefined email address and cc to an other.

Update the CustomSettings like this. (you can copy and paste from the sample customsettings.ini files)

Add a step in the Task Sequence like this.

Update the settings package and the MDT Package.

If you need a SMTP server to test against, read this http://deploymentbunny.com/2014/06/12/nice-to-knowa-simple-and-small-smtp-mailserver-fr-devlabtest-smtp4dev/

/mike


Categories: MDT

Nice to Know–A simple and small SMTP Mailserver för Dev/Lab/Test (SMTP4DEV)

Thu, 06/12/2014 - 01:51

In the field, at hotel rooms, in VM environments, Demo setups and many other situations your are in the situation that something needs to be able to send an email and installing an Exchange Server at that time might be very wrong. So I have been using a really nice SMTP server that basically accepts anything, with any kind of settings and that has the ability to present all these mails in a single view. Extremely “handy” to have. Download it from http://smtp4dev.codeplex.com/

I use it to test OSD scripts, Orchestrator runbook jobs and things like that.

Snapshot of the UI

there are others to, but this one seems to be stable and fairly simple to use. Don’t forget to make sure that port 25 is open.

/mike


Categories: MDT

Nice to Know – Get rid of all junk before Sysprep and Capture when creating a reference image in MDT

Thu, 06/05/2014 - 10:06

When you create a reference Image it will in most cases it will be updated with patches and some more patches and then some… That will make the image bigger and therefore the deployment of that image will take longer and consume more network resources. That can be corrected by getting rid of superseded patches, junk, temp files and much more. MDT does take care of much using the wimscript.ini during the capture process, but not all, not the old updates among other things.

The Solution

Since MDT is the preferred method to create reference images you can download the script, import it as an application and then run the application just before the Sysprep and Capture step. The Script works for the following versions of Windows:

  • Windows 7 SP1
  • Windows 8
  • Windows 8.1 Update
  • Windows Server 2008 2 SP1
  • Windows Server 2012
  • Windows Server 2012 R2

However, to make this work in Windows 7 and Windows Server 2008 R2 you need to add a hotfix to Packages in MDT. http://support.microsoft.com/kb/2852386

The script will use clenmgr.exe in all client versions of Windows. In Windows Server 2008 R2 it also uses clenmgr.exe, but it is never installed, instead it is copied from the SXS folder, that way we don’t need to install Desktop Experience. On Windows 8 and Server 2012 the script also runs the dism /online /clenup-image /startcomponentclenup and on 8.1 and server 2012 R2 the script adds the /Resetbase to make it impossible to remove patches.

Step By Step (kind of) Download the script

Download the script from here http://1drv.ms/ThvLFE

Import it in MDT

Open the Deployment Workbench and browse to the Application node and import the folder you downloaded, giver it a name and as command line you type:

cscript.exe Action-CleanupBeforeSysprep.wsf 

 

Modify the Task Sequence

Open your task sequence and before the Sysprep and capture step, something like this works fine.

 

Add the HotFix (only for Windows 7 SP1 and Windows Server 2008 R2)

You need to add the patches in the deployment workbench. If you would like the deployment of the reference image to a bit faster, create three folders put the correct patch in each folder and then create corresponding Selection Profiles and modify the Task Sequence to use them. You download the update here http://support.microsoft.com/kb/2852386

Here you can see the patches imported in the Deployment Workbench.


The patches you need.

 

Here you can see the Selection Profiles and the selection in one of them.


The Selection Profiles.

Here you can see how the modification in the Task Sequence.


The Task Sequence modification to inject the the correct patch to the correct OS.

/mike


Categories: MDT

TechEd NA 2014 – Here is my sessions on Channel 9

Sun, 05/25/2014 - 07:36
Top OS Deployment Issues with Answers from Experts

Bare Metal OS Deployment in Microsoft System Center 2012 R2 Virtual Machine Manager: This Is How It Is Done!

Building the Perfect Windows 8.1 Image


Categories: MDT

Back to Basic – CustomSettings.ini – Sample 3 and a bunch more

Mon, 05/19/2014 - 10:59

Customsettings.ini is one of those text files in MDT/ConfigMgr that has a major impact on the solution, badly written the solution is a pain in the… correctly written and it works like magic…

A while back I created sample package, but I only published 2 of the samples in the package and now it is time for the rest of them:

  • Disable OSInstall.ini
  • Setting based on Computer type and location.ini
  • Settings based on Computer type.ini
  • Settings based on Default Gateway.ini
  • Settings based on MAC for servers.ini
  • Settings based on MAC.ini
  • Settings based on Model.ini
  • Settings based on TaskSequenceID.ini
  • Settings based on UserExit-Alias.ini
  • Settings based on VB Calculation.ini
  • Settings based on Virtual Machines.ini
  • Settings for UDI.ini
  • Using the SMSTSOrg.ini

To try them out in your environment you can just run:

cscript.exe “Path to your MDT folder”:\Scripts\ZTIGather.wsf /Inifile:”The Path to the .ini file you would like to test”

You can download the samples here: http://1drv.ms/1qPkg7l

(Note all these files has been made upon request from customers, so if you need one that I down have, ask me…)

/mike


Categories: MDT

Nice to Know – Switch from ImageX to DISM in MDT

Mon, 05/19/2014 - 09:09

Be default the capture process in MDT 2013 uses ImageX to capture the image, there is nothing wrong with that, well, it takes time since Imagex takes about 15 minutes or more just to scan the file system before it starts to capture the image and maybe you would like to get rid of that time. That is possible by doing some modification to one of the scripts in MDT so that it starts to use DISM.exe instead

The script that needs to be modified is ZTIBackup.wsf and you can download the updated version here. (Please make sure you have a copy of the previous version so that you can go back for any reason.)

As a bonus this also fixes the problem to append the wim file to an existing wim file.

How-to?
  1. Download the file from here: http://1drv.ms/1gZICln
  2. Rename the Scripts\ZTIBackup.wsf to ZTIBackup.old
  3. Clear the Internet download flag from the new ZTIBackup.wsf.
  4. Copy the new ZTIBackup.wsf to the Scripts folder.

Done.

/mike


Categories: MDT

Nice to Know – MPIO “may” need to be configured correctly to increase performance when using Storage Spaces in Windows Server 2012 R2

Mon, 05/19/2014 - 08:15

This happens currently once a week, someone calls me and say “I’m using Storage Spaces with or without Scale Out file server and the performance is #”"!&%%&##”

There is many reasons but a very common is that MPIO be default is set to Round Robin and that is worse then bad.

Change the setting for all disks and for new disks as well by running the following command from en elevated PowerShell prompt:

Set-MSDSMGlobalDefaultLoadBalancePolicy LB

Read more here: http://support.microsoft.com/kb/2744261

Also read the blog from Jose:

http://blogs.technet.com/b/josebda/archive/2013/04/17/file-server-tip-how-to-rebalance-a-scale-out-file-server-using-a-little-powershell.aspx

http://blogs.technet.com/b/josebda/archive/2014/04/01/step-by-step-for-mirrored-storage-spaces-resiliency-using-powershell.aspx

http://blogs.technet.com/b/josebda/archive/2013/10/30/automatic-smb-scale-out-rebalancing-in-windows-server-2012-r2.aspx


Categories: MDT

TechEd NA 2014 – The Scripts from my session – DCIM-B309 – Bare Metal OS Deployment in Microsoft System Center 2012 R2 Virtual Machine Manager

Thu, 05/15/2014 - 08:30

Here is the sample scripts from my session at TechEd NA 2014 (DCIM-B309 – Bare Metal OS Deployment in Microsoft System Center 2012 R2 Virtual Machine Manager: This Is How It Is Done!)

SkyDrive: http://1drv.ms/1n0vTm2

Channel 9: http://channel9.msdn.com/Events/TechEd/NorthAmerica/2014/DCIM-B309

/mike


Categories: MDT

Nice to Know – OS Deployment on TechNet – Check This out!!!

Mon, 05/12/2014 - 10:34

For many years TechNet has been the source of information for IT Pro’s, but in many cases it has been “This is what you could do”, leaving a lot of IT profs in a guessing game. For OS Deployment that has now changed, it is changing into “This is how you should do!” and that is VERY nice!

Go to http://technet.microsoft.com/en-us/windows/hh974336

And check this out ASAP

(And yes, they hired external resources the help them get the best content ever…)

/mike


Categories: MDT

TechEd NA 2014 – PRC06 Deploying and Managing Windows in the Real World – Slides

Mon, 05/12/2014 - 09:15

You asked for the slides after our session, here they are

http://1drv.ms/1mRiD2R

 

If you are looking for all the deployment links we talked about, you will find the here

http://blogs.technet.com/b/mniehaus/archive/2014/05/12/useful-deployment-links.aspx

 

/mike


Categories: MDT

Nice to Know–Bare metal deployment in SCVMM using Custom script and Custom resources could fail

Sun, 05/04/2014 - 10:05

The bare metal OS deployment function in SCVMM has the ability to be customized by adding custom scripts (also know as GCE). Basically there is two ways to do this, you either make sure the  script is in the WinPE image or you add it using recourses in the SCVMM Library. There are two locations for those scripts, Pre and Post and the problem seems to be true when we are doing Pre OSD GCE’s. So how do I know it fails then?, well that is not that hard. It will give you a very informative message in the job log like this:

Error (2941)
VMM is unable to complete the request. The connection to the agent on machine SCVMM01.network.local has been lost.
Unknown error (0x80072efe)

Recommended Action
Ensure that the WS-Management service and the agent are installed and running and that a firewall is not blocking HTTPS traffic.

And if you open the vmmAgentPE.exe.log file on the host you are deploying you will se this:

058C.05C4::05/04-12:23:13.425#00:OSDDownloadFileFromUrl.cpp(88)[000000000306EB: ThrowOnWin32Failure : 80072efe. Operation attempted WinHttpReceiveResponse(m_hRequest, NULL)
058C.05C4::05/04-12:23:13.425#00:exceptions.cpp(97)[000000000306EB: CarmineException::CarmineException: CarmineError: 1051488,  hr: 0x80072efe

If you look at the last file it tries to download you will see that it is trying to download the SCVMMCRTag.cr file and if you check the size of the file you will se that the size is 0 bytes and “carmine” does not like to transfer 0 size files in WinPE.

Solution:

Modify the SCVMMCRTag.cr in notepad.exe and type whatever you like, close it, done. If you try once more it should work.

/mike


Categories: MDT

Hands-On LAB at LabCenter–Mastering Hyper-V 5-7 May 2014

Mon, 04/21/2014 - 10:58

Friend, I have an upcoming lab on Hyper-V 2012 R2, so if you would like to know what you really need to know about Hyper-V including management by PowerShell, VMQ, RSS, Architecture, Installation, Configuration, Migration and much, much more you should sign up for the class.

/mike


Categories: MDT

PowerShell is King – HP Scripting Tools for Windows PowerShell v1.1 is released

Mon, 04/21/2014 - 08:02

The 1.1 version supports PowerShell v3 and v4 and that means you can install it on Windows 8.1 and Windows Server 2012 R2. There is also some added CMDlets plus some minor changes.

Download it from http://www8.hp.com/us/en/products/server-software/product-detail.html?oid=5440657#!tab=features

Release notes is here (read them) http://h20564.www2.hp.com/portal/site/hpsc/public/kb/docDisplay/?docId=c04141539

/mike


Categories: MDT

Pages