A WordPress.com site dedicated to System Center and Cloud Management

Archive for the ‘SCCM (Configuration Manager)’ Category

Installing .NET Framework 3.5 on Windows Server 2012 R2 Fails with Error Code 0x800F0906


I encountered this issue while working on a project for a client, involving server build automation.

The client provided me with a copy of their Windows Server 2012 R2 ISO, which I was using in my SCCM Build and Capture task sequence. As you can see from the screenshot, the Task Sequence includes copying the SXS folder onto the local system, in order to be able to install .NET Framework 3.5 (using the -Source parameter).

Build And Capture TS - Scrubed

However, after the OS was installed, I noticed that the .NET Framework 3.5 and PowerShell options (which are also apart of the build) were not installed successfully. I checked, and confirmed that the SXS folder was still present (at the root of C:\). So, I attempted to run the PowerShell install command manually to see if/why it failed. I encountered the following error.

Install Error Results

This was odd, since it worked for my Build and Capture of Windows Server 2012. So, off to Google with the error code, and I came across this TechNet article which explained everything:

http://blogs.technet.com/b/askpfeplat/archive/2014/09/29/attempting-to-install-net-framework-3-5-on-windows-server-2012-r2-fails-with-error-code-0x800f0906-or-the-source-files-could-not-be-downloaded-even-when-supplying-source.aspx.

In a nutshell, there was a Security Update that was released that updated some of the .NET components (KB2966828). According to the TechNet article “If either of these updates are installed, you will run into the above issue if your server does not have access to the Internet to pull the updated components.”

The solution?

  1. Uninstalled the security update
  2. Install .Net Framework 3.5
  3. Reinstalled the update

Refer to the TechNet article for additional options/details. Hopefully this will help anyone that comes across this issue.

Advertisements

Using WDS to Deploy SCCM Images without PXE-Enabled DPs


I ran into this scenario recently while at a client’s site, working with SCCM to create a server build task sequence.

Let’s say you have SCCM installed, including a CAS, multiple Primary Sites and Secondary Sites, and many Distribution / Management Points. However, despite having Distribution Points in your environment, you do not have them PXE-enabled. Instead, you are using a standalone Windows Deployment Services (WDS) server to handle/manage the PXE-boot process.

Now, the second part of the scenario. In SCCM, we have MDT installed and integrated. Therefore, we are using not the “normal” Boot Images created by the installation of SCCM, but rather the MDT Boot Image.

So, to sum up: SCCM Distribution Points without PXE enabled, using the MDT Boot Image, and using WDS standalone.

So, here’s the issue. IF you take the MDT Boot Image from SCCM, and upload it into WDS as a Boot Image, you encounter an issue. When you system PXE Boots, everything seems to be OK, and the boot image starts to load. First it will show “Initializing hardware devices…”, then it will show “Windows is starting up…”. Finally, it will show “Preparing network connections…”, and then BAM! Nothing! And the system will restart, just to repeat the same process over again.

If you enable Command Line support in the Boot Image, you can press F8 and be able to check the Log files to see what’s going on. So, if you press F8, and navigate to X:\SMSTSLog\, you will see a .Log file called “SMSTS.log”. Open it in Notepad (by typing “notepad” in the command line, since we don’t have the CMTrace.exe utility available to us). In the Log file, scroll to the bottom, and you should see a entry that says: “Failed to download PXE variable file. Code(0x00000001).”

SMSTS

Now, if you search online for a solution, most posts will mention checking drivers (usually NIC drivers). But in my case my VM was getting an IP Address, therefore it’s not a NIC driver issue.

Well, thanks to some of my co-workers, they pointed me to the following website: http://www.deployvista.com/Blog/JohanArwidmark/tabid/78/EntryID/54/Default.aspx. This article refers to an older version of SCCM, but is still applicable with SCCM 2012. Additionally, for applicability/clarity, the information taken from the above listed article has been re-written/worded, and includes screenshots.

Background Information

When you add the Distribution Point (DP) role to a system managed by SCCM, and enable the “PXE support for client’s” option, SCCM will install (if not already installed as a Role/Feature) the Windows Deployment Services (WDS) server role. This makes is difficult to co-exist with other Boot Images, like the MDT Lite Touch boot image, on independent/standalone WDS servers.

With SCCM, you can generate WinPE Boot Images for Operating System Deployment (OSD). However, the issue is using a standalone WDS system which is not managed by SCCM to provide the PXE boot option on the network, with an SCCM DP server where the OSD content exists (and where the boot image refers to).

SCCM Boot Media Information

When an SCCM generated Boot Media is used, there are additional configuration files contained within the ISO, most importantly the TSMBootStrp.ini and Variables.dat files. These files are present within the SCCM generated boot media, but not actually contained within the .WIM file itself. The issue is further complicated due to the fact that you cannot add an ISO boot media file into WDS, but rather, require a .WIM file.

The solution is to extract the contents of the SCCM generated boot media ISO file, and add the missing configuration files into the Boot Image .WIM file. After these files have been added into the Boot Image, this .WIM file can be added into WDS, and thus made available to PXE boot.

Modifying a WinPE Boot Image (WIM) File to Include SCCM Boot Media Files for Standalone WDS

This section provides step-by-step instructions on how to extract SCCM Boot Media content, and insert/inject it into a Boot Image .WIM file.

Create SCCM Boot Media

Launch the SCCM Console, and navigate to Software Library > Operating Systems > Task Sequences.

Build TS - 01 - Task Sequences

Right-click on the Task Sequences section heading, and choose Create Task Sequence Media.

SCCM Boot Media - 02 - Create Task Sequence Media

On the Select Media Type page, choose Bootable Media, then click Next.

SCCM Boot Media - 03 - Select Media Type

On the Media Management page, choose Dynamic Media, then click Next.

SCCM Boot Media - 04 - Media Management

On the Media Type page, choose CD/DVD Set, provide a location and filename, then click Next.

Note: The path does not need to be a UNC patch, and can be a local drive (i.e. C:\). Also, the Filename provided must end with the “.ISO”.

SCCM Boot Media - 05 - Media Type

On the Security page, select the ‘Enable Unknown Computer Support’ option. You can also choose to password protect the media, but this is not required. Accept all other default selections as-is, then click Next.

SCCM Boot Media - 06 - Security

On the Boot Image page, click Browse and select the appropriate Boot Image, and Distribution Point. Then click Add and select an available Management Point. Once all 3 fields have been entered, click Next.

SCCM Boot Media - 07 - Boot Image

On the Customization page, accept the defaults, and click Next.

SCCM Boot Media - 08 - Customization

On the Summary page, review the selections made, and then click Next.

SCCM Boot Media - 09 - Summary

On the Completion page, click Close.

SCCM Boot Media - 10 - Completion

You should now have an .ISO file at the location you specified during step 5.

Extract SCCM Boot Media ISO Contents

At the location of your ISO file, use a ZIP program (i.e. 7zip), and extract the contents of the .ISO file. This should create a folder, with the same name of your ISO file, containing all the files (i.e. C:\SCCMBootMedia\).

Note: Ensure that you make note of where the ISO extracted folder contents is located, as this will be needed in the next section.

SCCMBootMediaExtract

Mount Boot Image WIM File and Inject SCCM Boot Media Files

To be able to complete this step of the process, you must have the Windows Automated Installation Kit (AIK) installed. It is important to note that this tool is not compatible with Windows XP, and therefore must be installed/used on a newer Operating System (i.e. Windows 7/8.x). This document will not detail on how to install the AIK, as this is a straightforward process.

Note: For Windows 8.x, the AIK has been changed/re-named to the “Windows Assessment and Deployment Kit (ADK)”.

Important: For simplicity, it is recommended to copy your Boot Image (.WIM) file to the same location that you extracted the SCCM Boot Media (.ISO) to.

Start this part of the process by launching the Deployment and Imaging Tools Environment.

Launch Deployment and Imaging Tools Environment

Within the command prompt, type the following command:

ImageX /MountRW <index#>

Example: ImageX /MountRW C:\BootImage.WIM 1 C:\BootImageMountLocation

This will now allow you to explore (and thus add) the content contained within the Boot Image WIM file, from the Mount Location you specified, via File Explorer.

MountBootImage

Navigate to the location that you extracted the SCCM Boot Media ISO file, and copy the \SMS\Data folder into the WIM Mount Location.

Example: C:\SCCMBootMedia\SMS\Data to C:\BootImageMountLocation\SMS\

SCCMBootMediaExtract

MountedBootImage(Pre)

MountedBootImage(Post)

Return to the Deployment and Imaging Tools Environment command prompt, and type the following command to unmounts the image (WIM) file, and commit the changes applied (i.e. the files copied into the directory).

ImageX /UnMount /Commit

Example: ImageX /UnMount /Commit C:\BootImageMountLocation

UnMountBootImage

Copy the updated Boot Image .WIM file (which should now have an updated timestamp) to the WDS server, launch the Windows Deployment Services console, select the Boot Images folder, and click Action > Add Boot Image.

WDS - Add Boot Image

On the Image File page, click Browse, and navigate to the modified .WIM file that was copied to the server, then click Next.

WDS - Add Boot Image - File Location

On the Image Metadata page, provide an Image Name and Image Description, then click Next.

WDS - Add Boot Image - Image Metadata

On the Summary page, review the information presented, then click Next.

WDS - Add Boot Image - Summary

On the Task Progress page, once the operation has completed, click Finish.

WDS - Add Boot Image - Task Progress

Back in the WDS console, under Boot Images, you will now see your Boot Image listed which will be used for PXE booting.

WDS - Add Boot Image (POST)

Now when you PXE boot your system, and boot into WinPE, your system will be able to communicate with SCCM, and continue the rest of the process (running Task Sequences).

 

As always, if this post helped you in any way, and you would like to show your appreciation, please rate it and comment on it. Also, feel free to contact me (via the About Me page) with requests for future articles.

Integrate App-V with SCCM 2012 R2 Using Virtual Environments


As requested by one of my readers, the following is an article on integrating App-V with SCCM 2012 R2 along with Virtual Environments.

For reference, here are some resources on the subject:

http://technet.microsoft.com/en-us/library/jj591609.aspx

http://blogs.technet.com/b/configmgrdogs/archive/2013/12/23/understanding-configmgr-2012-app-v-virtual-environments.aspx

http://www.virtualvibes.co.uk/virtual-environments-in-configuration-manager-2012-sp1-flexible-connection-groups/


The following steps are from the following TechNet article (http://technet.microsoft.com/en-us/library/jj591609.aspx), with the addition of screenshots by me.

How to Create App-V Virtual Environments in Configuration Manager

Microsoft Application Virtualization (App-V) virtual environments in Microsoft System Center 2012 Configuration Manager enable deployed virtual applications to share the same file system and registry on client computers. This means that unlike standard virtual applications, these applications can share data with each other. Virtual environments are created or modified on client computers when the application is installed or when clients next evaluate their installed applications. You can order these applications so that when multiple applications try to modify a file system or registry value, the application with the highest order takes priority.

To create an App-V virtual environment

In the Configuration Manager console, click Software Library.

SCCM - Software Library

In the Software Library workspace, expand Application Management and then click App-V Virtual Environments.

SCCM - Software Library - AppV Virtual Environments

In the Home tab, in the Create group, click Create Virtual Environment.

SCCM - Create Virtual Environment

In the Create Virtual Environment dialog box, specify the following information:

Name: Specify a unique name for the virtual environment with a maximum of 128 characters.

Description: Optionally specify a description for the virtual environment.

SCCM - Create Virtual Environment (Dialog)

Click Add to add a new deployment type to the virtual environment. You must add at least one deployment type.

In the Add Applications dialog box, specify a Group name of up to 128 characters that you will use to refer to this group of applications that you add to the virtual environment.

SCCM - Add Applications (Dialog)

Click Add, select the App-V 5 applications and deployment types that you want to add to the group and then click OK.

SCCM - Specify Application (Dialog)

In the Add Applications dialog box, you can click Increase Order or Decrease Order to specify which application will take priority if multiple applications attempt to modify file system or registry settings in the same virtual environment.

Click OK to return to the Create Virtual Environment dialog box.

When you have finished adding groups, click OK to create the virtual environment. The new virtual environment is displayed in the App-V Virtual Environments node of the Configuration Manager console. You can monitor the status of your virtual environments by using the report App-V Virtual Environment Status.

NOTE: The virtual environment will be added or modified on client computers when the application is installed or when the client next evaluates installed applications.

As always, if this post helped you in any way, and you would like to show your appreciation, please rate it and comment on it. Also, feel free to contact me (via the About Me page) with requests for future articles.

Tag Cloud

%d bloggers like this: