ConfigMgr 2007 R3 is making a step in Green IT with Power Management

This post is not meant as a guide for installing or configuring the R3 feature pack and/ or Power Management. I will just show, in a few screenshots and a bit explanation, what the possibilities are regarding the Power Management feature in ConfigMgr 2007 R3.

PwrMngmntAgentAs we all already knew, one of the coolest new features of ConfigMgr 2007 R3 would be Power Management. Another step in the direction of Green IT.  The Power Management feature provides a new Client Agent which enables you to apply power settings to client computers in the organization and monitor the power usage of these computers.

How to Enable the Power Management Client Agent

  1. Open the Configuration Manager console and browse to System Center Configuration Manager > Site Database > Site Management > <YourSiteName> > Site Settings > Client Agents.
  2. Select the Power Management Client Agent and click in the Actions pane Properties (or right-click the Power Management Client Agent and click Properties) to open the Power Management Client Agent Properties.
  3. Select Enable power management on clients and click Ok.

After a policy refresh the Power Management Client Agent will be enabled on the client.

How to Enable Power Management settings PwrMngmntSettings

  1. Open the Configuration Manager console and browse to System Center Configuration Manager > Site Database > Computer Management > Collections.
  2. Select <YourCollectionName>, click in the Actions pane Modify Collection Settings (or right-click <YourCollectionName> and click Modify Collection Settings) and select the Power Management tab to open the Power Management Settings.
  3. Select Enable power management settings, specify the power management settings (like different power plans and wake up time) and click Ok.

Now you have this possibility to enable Power Management settings on a per collection base. These settings work in a same way as setting Maintenance Windows on a per collection base.

How to view the Power Settings/ Capabilities/ Costs and Consumption

During the installation of R3 a new cab-file (MicrosoftReportPack) will be placed in <ConfigMgrInstallationDir>\Reports\Power Management.  PwrMngmntReportsWithout importing this cab-file you will not be able to see the Power Management reports, so don’t forget to import these handy reports! 

  1. Open the Configuration Manager console and browse to System Center Configuration Manager > Site Database > Computer Management > Reporting Services > <ServerName> > Report Folders.
  2. Select Power Management.
  3. Select the report that your want and click in the Actions pane Run (or right-click the report that want and click Run).

In these reports you can see all the information about Power Management, from capabilities till costs and from settings till consumptions.

ConfigMgr 2007 and editing the registry during a Task Sequence on a 64-bit OS

Disable64bitTSOf course you know, deep down, that the ConfigMgr 2007 Client is 32-bit and that it will react a bit different on a 64-bit OS. The reason for this is of course the emulation layer, also know as Windows 32-bit On Windows 64-bit (WOW64), that enables a 32-bit application to run seamlessly on a 64-bit OS. 

As the ConfigMgr 2007 (RTM, SP1, SP2) Client is only available in a 32-bit version, you may run into some bumps on a 64-bit Operation System. One of these bumps is editing a registry key in HKEY_LOCAL_MACHINE\Software, because, for the ConfigMgr 2007 Client, this will get redirected to HKEY_LOCAL_MACHINE\Software\WOW6432Node.

Luckily there is an easy solution for this in a Task Sequence of ConfigMgr 2007. Just create a Task Sequence, add a Run Command Line –step and select Disable 64-bit file system redirection. This will makes sure that the use of the WOW64 file redirector will be disabled. 

Example UserName_on_ComputerName
An often used registry edit is to rename the Computer (on XP this is My Computer) to “Username on Computername”. To do this you need to edit the  HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\LocalizedString –key. Without disabling the 64-bit file system redirection, the ConfigMgr 2007 Client will only change the key under HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\LocalizedString. This will not make the change show in the menu or the explorer.

More information about the Run Command Line –step: http://technet.microsoft.com/en-us/library/bb632992.aspx
More information about WOW64, Registry (and File System) Redirection and Reflection: http://www.microsoft.com/whdc/system/platform/64bit/WoW64_bestprac.mspx

Configuration Manager 2007 R3 Beta has been released!

I would like to make a short note of the following announcement on the ConfigMgr Connect Site (https://connect.microsoft.com/site16)

System Center Configuration Manager 2007 R3 Beta has been released!

As a member of the Configuration Manager 2007 R3 Open Beta program you can download at this Connection via the downloads tab.

Feedback can be provided using the Feedback tool and also available is discussions via the Newsgroups where you can post comments and ask questions.

Thank you.

ConfigMgr Customer team

How to back up your ConfigMgr 2007 Site

This post is just meant to freshen up everyone’s memory, because I still see (and get) stories (and questions)about backing up a ConfigMgr 2007 Site (and then especially about Secondary Sites). Let’s start with the most important part, the only supported way to restore your site is to use the Site Repair Wizard. This wizard needs a backup that is created with the standard Backup ConfigMgr Site Server maintenance task.

How to back up a Primary Site BackupConfigMgrSiteServerProp

  1. Open the Configuration Manager console and browse to System Center Configuration Manager > Site Database > Site Management > <YourSiteName> > Site Settings > Site Maintenance > Tasks.
  2. Select the Backup ConfigMgr Site Server task and click in the Actions pane Properties (or right-click the Backup ConfigMgr Site Server task and click Properties) to open the Backup ConfigMgr Site Server Properties.
  3. Select Enable this task, specify the backup task properties (like backup destination, day and time) and click Ok.

How to back up a Secondary Site

As you might know there is also a task to create a backup of a Secondary Site. Just keep in mind that it has no use to enable it, because you cannot restore this backup by using the Site Repair Wizard. The only supported way to recreate your Secondary Site is to reinstall your Secondary Site! After reinstalling the Secondary Site, the Primary Site will replicate the site data to it.

More information about Tasks for Backing Up a Site: http://technet.microsoft.com/en-us/library/bb680862.aspx

Using USMTUtils.exe during a Task Sequence with ConfigMgr 2007

As I had a lot of questions about the use of USMTUtils, I decided to devote a new post to this. In my previous post I used USMTUtils to clean up the hard-link statestore location.

USMTUtils is needed to clean up a hard-link statestore, because otherwise the hard-link store cannot be deleted due to a sharing lock. The command-line provided by Technet to do this is usmtutils.exe /rd <storedirectory>. Only this is exactly where the problem starts when running a command like this during a Task Sequence, because this will make the Task Sequence “hang” on the point where it has to delete the hard-link statestore. Taking a look at the SMSTS.log, at this point, will show something similar to this:

<![LOG[Executing command line: Run command line]LOG]!><time="14:56:41.804+-60" date="03-23-2010" component="InstallSoftware" context="" type="1" thread="2904" file="commandline.cpp:805">
<![LOG[]LOG]!><time="14:56:42.148+-60" date="03-23-2010" component="InstallSoftware" context="" type="1" thread="2904" file="runcommandline.cpp:34">
<![LOG[WARNING: This command is going to delete the following list of path(s).]LOG]!><time="14:56:42.195+-60" date="03-23-2010" component="InstallSoftware" context="" type="1" thread="2904" file="runcommandline.cpp:34">
<![LOG[Please review before continuing …]LOG]!><time="14:56:42.195+-60" date="03-23-2010" component="InstallSoftware" context="" type="1" thread="2904" file="runcommandline.cpp:34">

After this I just tried running the command-line manually from a cmd in Windows and this showed the following information:

WARNING: This command is going to delete the following list of path(s).
Please review before continuing …

        C:\<storedirectory>

Are you sure you want to proceed (Y/N)?

The conclusion here is that running the command-line usmtutils.exe /rd <storedirectory> will need a confirmation. This is the point where we have to grab back to a batch-file, so we can pipeline a positive response to the question asked by the USMTUtils. This can be done by using echo y|. So the batch-file, that we need to run the USMTUtils from a Task Sequence (with ConfigMgr 2007), has to include the command-line echo y| usmtutils.exe /rd <storedirectory>.

I hope this post gives a bit more inside information of why it is needed to pipeline a confirmation with the use of USMTUTils.

Capture User Files and Settings in Offline Mode (WinPE) with ConfigMgr 2007

In a previous postI already showed how to do a Hard-Link migration, when started from FullOS. That part still exists in my Task Sequence, but it is now moved under the Group Capture User Files and Settings – FullOS. This part will now only run when the Task Sequence is started from FullOS.

In this post I will add a part to the Task Sequence that makes sure that the User State will also be captured,  HardLinkOfflineTS when the Task Sequence is started from WinPE (also called Offline Mode). The cool part is that it will also be done by/ with using Hard-Links!

Capture User Files and Settings

For creating a Task Sequence, that does an Offline Capture, my way, a few variables and locations need to be created. After that a command line has to be run to do the actual Capture. Under here I will sum up the steps I take to do an Offline Capture (also see the red rectangle in the picture):

  • Set Started in WinPE – Set Task Sequence Variable
    This step sets the Task Sequence Variable TSStartedInWinPE to YES. This Task Sequence Variable only gets set when _SMSTSInWinPE is TRUE.
  • Capture User Files and Settings – WinPE – Group
    This group Captures the User Files and Settings when the machine is started from WinPE. This is done by checking if the Task Sequence Variable TSStartedInWinPE is set to YES.
  • Set Architecture – Set Task Sequence Variable
    This step sets the Task Sequence Variable Architecture to amd64. This variable will be used for selecting the USMT 4.0 version for 64-bit systems.
  • Set Windows Partition – Set Task Sequence Variable
    This step sets the Task Sequence Variable WindowsPartition to C:. This variable will be used for selecting the Windows partition.
  • Set State Store Location – Set Task Sequence Variable
    This step sets the Task Sequence Variable OSDStateStorePath to %WindowsPartition%\StateStore. This variable will be used for creating and selecting the User State Location.
  • Create State Store Location – Run Command Line
    This step creates the directory %WindowsPartition%\StateStore by running the Command line: cmd /c MKDIR %OSDStateStorePath%.
  • Cache USMT Files and Scripts – Run Command Line
    This step caches the USMT Files and Scripts from the USMT Package to the directory %OSDStateStorePath%\USMTFiles\ by running the Command line: xcopy * %OSDStateStorePath%\USMTFiles\ /herciy
  • Capture User Files and Settings – Run Command Line
    This step does the actual Capture of the User Files and Settings by running the Command line RunScanState.BAT %OSDStateStorePath% %WindowsPartition% %Architecture% which has to start in the directory %OSDStateStorePath%\USMTFiles\.

These are all the steps I need, to do an Offline Capture with Hard-Links. Now let’s take a closer look at the batch-file which does most of the work.

REM ============================================================
REM VARIABLE -1- OSDStateStorePath = %1
REM VARIABLE -2- WindowsPartition = %2
REM VARIABLE -3- Architecture = %3
REM ============================================================

SET USMT_WORKING_DIR=%1\USMTFiles\%3

REM ============================================================
REM RUN Scanstate
REM ============================================================

“%1\USMTFiles\%3\Scanstate.exe” “%1” /o /hardlink /nocompress /i:%1\USMTFiles\%3\miguser.xml i:%1\USMTFiles\%3\migapp.xml /offilinewindir:%2\Windows\TEMP\SMSTSLog\Scanstate.log /v:5 /progress:%2\Windows\TEMP\SMSTSLog\Scanstateprogress.log /c /efs:hardlink

REM ============================================================
REM EXIT Errorlevel
REM ============================================================

EXIT /b %errorlevel%

In this batch-file I am using three variables which are being set during the Task Sequence (and explained in the batch). The Scanstate command line, that is being used, is completely based on the standard syntax. Under here I created a table in which can be seen what every part of my command line stands for.

Command What does it do…
%1\USMTFiles\%3\scanstate.exe Scanstate.exe
%1 Specifies the folder where files and settings will be saved
/o Enables the possibility to overwrite existing data in de Migration Store.
/hardlink Enables the creation of a Hard-Link Migration Store
/nocompress Disables the compression of data.
/i:%1\USMTFiles\%3\miguser.xml Specifies an .xml file that contains rules that define what user, application or system state to migrate
/i:%1\USMTFiles\%3\migapp.xml Specifies an .xml file that contains rules that define what user, application or system state to migrate
/offlinewindir:%2\windows Specifies the Offline Windows directory that the ScanState command gathers user state from
/l:%2\windows\TEMP\SMSTSLog\Scanstate.log Specifies the location and name of the ScanState log
/v:5 Enables the verbose output in the ScanState log file
/progress:%2\windows\TEMP\SMSTSLog\Scanstateprogress.log Specifies the location and name of the ScanState progress log
/c Enables the ScanState command to continue to run, even if non-fatal errors occur
/efs:hardlink Enables the migration of encrypted files by creating a Hard-Link to the EFS file instead of copying it

Restore User Files and Settings

After the User Files and Settings have been captured, they need to be restored again to the new OS. For this I use the default Restore User Files and Settings step from ConfigMgr 2007 and the variable OSDMigrateAdditionalRestoreOptions. This variable is filled with the options /nocompress /hardlink, see for this also my previous post. This default step will restore everything that is found in the State Store Location.

With the red arrow in the picture I point at another important step (which is often forgotten). This step is the Cleanup User State Location, a Run Command Line step from ConfigMgr 2007. This step cleans up the State Store Location by running the command line RunUSMTutils.BAT %OSDStateStorePath% %Architecture% from the USMT 4.0 Package.

Now let’s take a look at the batch-file which does most of the work here.

REM ============================================================
REM VARIABLE -1- OSDStateStorePath = %1
REM VARIABLE -2- Architecture = %2
REM ============================================================

REM ============================================================
REM RUN USMTUtils
REM ============================================================

echo y| “%~dp0%2\usmtutils.exe” /rd “%1”

REM ============================================================
REM EXIT Errorlevel
REM ============================================================

EXIT /b %errorlevel%

The important part in here is the echo y|, because only running umstutils.exe /rd will ask for a confirmation on the action. I have to say that I really missed this in the documentation! So just use echo y| to pipeline a positive response on the confirmation, asked by the usmtutils.

Note: The RunScanState.BAT and the RunUSMTutils.BAT have to be placed inside the USMT Package at the same level as the amd64- and the x86-folder.

More information about the Scanstate Syntax:
http://technet.microsoft.com/en-us/library/dd560781(WS.10).aspx
More information about the LoadState Syntax:
http://technet.microsoft.com/en-us/library/dd560804(WS.10).aspx
More information about the USMTUtils Syntax: http://technet.microsoft.com/en-us/library/dd560799(WS.10).aspx

Add ConfigMgr Console to (Desktop-)Right-Click Menu

Sometimes you get a request that is just fun when it works. This time that was whether it was possible to add a shortcut for the ConfigMgr Console to the (Desktop-)Right-Click Menu. Well… I can tell you that it is possible!

The easiest way to make this happen is to create a reg-file that will add an extra option for the ConfigMgr Console to the Right-Click Menu. To create a working reg-file for this situation, there are two locations that you need to know:

  1. The Icon Location: (In my case) C:\Program Files (x86)\Microsoft Configuration Manager Console\AdminUI\bin\SmsSnapInResources.dll
  2. The ConfigMgr Console Location: (In my case) C:\Program Files (x86)\Microsoft Configuration Manager Console\AdminUI\bin\adminconsole.msc

These two locations have to be used in the reg-file mentioned above. With these locations the reg-file that you need will look like this (also worth mentioning, it is not necessary to add the icon):
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\CMC]
@=”ConfigMgr Console”
“Icon”=”C:\\Program Files (x86)\\Microsoft Configuration Manager Console\\AdminUI\\bin\\SmsSnapInResources.dll”,-103
“Position”=”Bottom”

[HKEY_CLASSES_ROOT\Directory\Background\shell\CMC\command]
@=”C:\\Program Files (x86)\\Microsoft Configuration Manager Console\\AdminUI\\bin\\adminconsole.msc”

What does the user see when running an OS Deployment with “Modena”?

As a follow-up on my previous post about User Driven OS Deployment with “Modena”, I will show in this post what a user sees during a OS Deployment with Modena. Why am I writing this post? Well… because I got a lot of questions about this and for some reason not everybody has the time (like I still have) to test this their self…

Under here are all the different pages the user can see during the OSD Wizard. All these pages are editable with the ModenaDesigner. For how to change these pages, take a look at the links provided in my previous post.

Welcome Page 01_Modena Preflight Page 02_Modena
Computer Page 03_Modena User Config 04_Modena
Language Page 05_Modena Volume Page 06_Modena
Application Page 07_Modena Summary Page 08_Modena

During the actual installation and configuration of the computer, Modena also takes care of a better insight in what is happening. Under here are the different states that Modena shows during the installation.

System Backup    09_Modena_Background Install Image           10_Modena_Background
Windows Setup 11_Modena_Background Install Applications 12_Modena_Background
Restore Backup 13_Modena_Background Deployment Complete 14_Modena_End

User Driven OS Deployment with “Modena”

It took a while but this weekend it was finally time for some testing of, what’s code-named, “Modena”. Modena is a tool, developed by Microsoft IT, that enables the ability of an End-User Experience by using a powerful OSD Wizard.

ModWelcWhen you are searching for a way to get your users “involved” in an OS Deployment, then I would recommend you to take a look at Modena. The OSD Wizard of Modena (see picture) can be changed in a lot of different way’s. As an administrator you can select which settings can be done by a user and which are pre-set. By these customizable settings you can think about things like computername, domain, local administrators, language, time, image, backup (via USMT 4.0) and the applications. The nice thing about the applications is that you can first do a scan of the computer to see what applications are currently installed. Based on the results of this scan, applications can get pre-selected (or not). Besides al of these settings Modena also provides a better insight in what is happening with the computer during the Task Sequence.

To make a long story short, take a look at Microsoft Connect to get Modena: 
>> https://connect.microsoft.com/site868 <<

Also take a look at the following links for setting up Modena…
1. Getting started with Modena – Step 1 – Installing Modena: http://blogs.technet.com/osd/archive/2009/12/15/getting-started-with-modena-step-1-installing-modena-rc2.aspx
2. Getting started with Modena – Step 2 – Create OSD Packages: http://blogs.technet.com/osd/archive/2009/12/16/getting-started-with-modena-step-2-create-osd-packages.aspx
3. Getting started with Modena – Step 3 – Importing Task Sequences: http://blogs.technet.com/osd/archive/2009/12/17/getting-started-with-modena-step-3-importing-task-sequence.aspx
4. Getting started with Modena – Step 4 –Introduction to OSD Designer: http://blogs.technet.com/osd/archive/2009/12/17/getting-started-with-modena-step-4-introduction-to-osd-designer.aspx
5. Getting started with Modena – Step 5 – Using Modena Online Services: http://blogs.technet.com/osd/archive/2009/12/18/getting-started-with-modena-step-5-using-modena-online-services.aspx
6. Getting started with Modena – Step 6 – Setting Up Applications: http://blogs.technet.com/osd/archive/2009/12/28/getting-started-with-modena-step-6-setting-up-applications.aspx

…and take a look at these links for the story behind Modena.
General Cravings of OSD: http://blogs.technet.com/osd/
Windows 7 Deployment Guide: http://technet.microsoft.com/en-us/magazine/ee676738.aspx

Installing/ Deploying Windows Live Writer with ConfigMgr 2007

First of all, this post is not (meant as) a Step-By-Step. I will just show the big picture. As I like to install everything with ConfigMgr 2007, I also wanted to install my blogging tool with ConfigMgr 2007. My blogging tool is Windows Live Writer, nice, simple and easy. As it was kind of hard to find information about which command-line to use, the command-line will be part of this post.

To install/ deploy Windows Live Writer with ConfigMgr 2007, simply follow the next 4 steps:

  1. Download the full installer of Windows Live (WLSetup) here: http://download.live.com/*.
  2. Create a new Package in ConfigMgr 2007 (Site Database > Computer Management > Software Distribution > Packages) and point the Data Source to the location where you keep the installer.
  3. Create a new Program with the newly created package and use the command-line: wlsetup-all.exe /AppSelect:Writer /quiet. This command-line will only install the Windows Live Writer and is based on this article: http://technet.microsoft.com/en-us/library/dd550747.aspx.
  4. Create a new Advertisement of the newly created program and it is all ready to install/ deploy!

* Keep in mind that it will first start with downloading the web installer. Cancel this download and press “Try Again”, this time it will start to download the full installer.