Installing IIS 7.0 from the Command Line

  • Author: iisteam
  • Published on November 22, 2007 by saad
  • Updated on March 12, 2008 by saad

Introduction

Pkgmgr.exe is a new command tool in Windows Vista® / Windows Server® 2008 for installing Windows Optional Features:

  • Replaces sysocmgr.exe for installing Windows Optional Features
  • Allows you to install / uninstall Windows Vista Optional Features directly from command prompt or from scripts

Pkgmgr can take a list of windows features to install on the command line or take an xml file name as a parameter for unattend installs.  This lab will illustrate the use of pkgmgr command line parameters for installing optional features.

Prerequisites

Windows Vista/Windows Server 2008 Editions Supported

This walkthrough is for the following editions of Windows Vista / Windows Server 2008:

  • Windows Vista Home Premium Edition
  • Windows Vista Professional Edition
  • Windows Vista Ultimate Edition
  • Windows Server 2008 Editions

Make sure you have installed one of the supported editions of Windows Vista/Windows Server 2008 before proceeding. For more information on IIS 7.0 on Windows Vista, please review the article IIS 7.0 Features and Vista Editions before continuing.

Local User Administrator (LUA) Security

Make sure you have administrative privileges on the machine: By default, you do not have them if you are logged on as a user other than the built-in Administrator account, even if this user was added to the local Administrators group on the machine (this is a new security feature in Windows Server 2008, called LUA, which is beyond the scope of this article). Make sure to either log-on as the built-in Administrator account, or explicitly invoke applications as the built-in Administrator, as needed, using the "runas" cmd-line tool.

For example, to launch notepad.exe you could run this command: "runas /user:administrator notepad.exe". You will be prompted for the password of the Administrator account. It is useful to have a cmd-box shell that's already elevated, by running "runas /user:administrator cmd.exe". Every application you run from that cmd-box will be elevated as well, and you will not need to use the "runas" syntax from that cmd-box. 

If you are logged on to an account other than the built in local administrator account you may see the following security alert dialog. Click Allow to continue running setup steps in this walkthrough.

Windows Security Dialog – LUA

If you are logged on to an account other than the built in local administrator account you may see the following security alert dialog box.

Figure 1: Windows Security Dialog

Click Allow to continue running the setup steps in this walkthrough.

Procedure  

Step 1: Pkgmgr.exe Overview

Windows Optional features in Vista/Windows Server 2008 can be installed using a new command tool called Pkgmgr. The command line syntax using pkgmgr.exe is:

Start /w pkgmgr.exe /iu:update1;update2

Pkgmgr.exe Commands

/iu:{update name};

Specifies updates to install by update name. Takes a semicolon separated name of updates to install.

/uu:{update name};

Specifies the updates to uninstall. Takes a semicolon separated list of selectable updates to be uninstalled from the system. At least one update name must be specified.

/n:{unattend XML}

Specifies file name of the unattend XML file.

Note: If you run pkgmgr without the "start /w" prefix, the pkgmgr cmd will return immediately and you will not know when the optional feature install has completed.

Step 2: Open Command Window

Follow the instructions in the Prerequisites section above for starting a cmd window running as the local Administrator account.

Step 3: Enter Command to Install IIS 7 Default Features

To install only the IIS 7.0 default features from the command line, copy the following text into your command window and then proceed to Step 5.

Note: Make sure you are pasting ascii text from a Web page: To make sure you are not getting any non-ascii text you may want to past content into notepad.exe first. The entire block below is one command.

IIS 7.0 setup via pkgmgr.exe should take 1 to 5 minutes. When the command prompt returns, IIS 7.0 setup is complete.


start /w pkgmgr /iu:IIS-WebServerRole;WAS-WindowsActivationService;WAS-ProcessModel;

WAS-NetFxEnvironment;WAS-ConfigurationAPI

  

Step 4: Command to Install All IIS 7 Features

If you want to install all IIS 7.0 features, use these command lines.

If you are installing IIS 7.0 on Windows Vista Professional, Windows Vista Ultimate, or Windows Server 2008 Editions, copy and paste the following text into the command window:


start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;

IIS-ApplicationDevelopment;IIS-ASPNET;IIS-NetFxExtensibility;IIS-ASP;IIS-CGI;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-ODBCLogging;IIS-Security;IIS-BasicAuthentication;

IIS-WindowsAuthentication;IIS-DigestAuthentication;IIS-ClientCertificateMappingAuthentication;IIS-IISCertificateMappingAuthentication;IIS-URLAuthorization;IIS-RequestFiltering;IIS-IPSecurity;

IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;IIS-WebServerManagementTools;IIS-ManagementConsole;IIS-ManagementScriptingTools;IIS-ManagementService;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-LegacyScripts;IIS-LegacySnapIn;IIS-FTPPublishingService;IIS-FTPServer;IIS-FTPManagement;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI

       

If you are installing IIS 7.0 on Windows Vista Home Premium, copy and paste the following text into the command window:

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;IIS-ApplicationDevelopment;

IIS-ASPNET;IIS-NetFxExtensibility;IIS-ASP;IIS-CGI;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-Security;IIS-BasicAuthentication;IIS-URLAuthorization;IIS-RequestFiltering;IIS-IPSecurity;IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;IIS-WebServerManagementTools;IIS-ManagementConsole;IIS-ManagementScriptingTools;IIS-ManagementService;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-LegacyScripts;IIS-LegacySnapIn;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI

Step 5: Check Error Code

At the command prompt type:


echo %errorlevel%

    

An error code of 0 indicates success.

Step 6: Check IIS 7.0 Install

You can now perform a quick check to verify that IIS 7.0 is installed:

  • Start Internet Explorer web browser and enter the address http://localhost.
  • You should see the default IIS 7.0 "Welcome" page.

Summary

In this article we examined how to use the pkgmgr.exe command line tool for installing IIS 7.0.

Related Links

See the following resources for further information:


Comments

i tried the script and response was following:
'IIS-Performance' is not recognised as an internal or external command,operable program or batch file

and when i typed %errorlevel%, the response was:
9009
so wat can be the possible bug
please help me as i m really stuck in this
Kindly Reply and oblige.
Regards
Arjun

Jul 21 2008 by arjunmanhas

when i typed half the script ie:

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;

the error this time was 1060

so tell me what to do please

Jul 21 2008 by arjunmanhas

Unfortunately, pkgmgr does NOT handle dependencies automatically. In this case, I believe you're missing the dependency on Windows Process Activation Service (WAS) in your command line setup.

Please try the following:
start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;WAS-WindowsActivationService;WAS-ProcessModel;

Let me know if this doesn't work for you.

Jul 21 2008 by SaadL

How can you determine what the dependencies are? I submitted this command:

pkgmgr /iu:IIS-WebServerRole;IIS-WebServerManagementTools;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-ManagementConsole;IIS-ManagementScriptingTools;IIS-WebServer;IIS-ApplicationDevelopment;IIS-ASP;IIS-ASPNET;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-NetFxExtensibility;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-HttpTracing;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-Performance;IIS-HttpCompressionStatic;IIS-Security;IIS-RequestFiltering;IIS-WindowsAuthentication

and none of the sub-options under World Wide Web Services were installed. Also, the IIS Management Console was not installed. The other options were installed. Any assistance is appreciated. Thank you.

Nov 18 2008 by brennca

There is no easy way to determine dependencies using the command line. The UI handles that for you behind the scene.

In the above command, you are missing a number of updates, that's why you didn't get the World Wide Web Services and the IIS management console. You can try the following (I added all the World Wide Web Services and the Windows Process Activation components that you were missing):

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServerManagementTools;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-ManagementConsole;IIS-ManagementScriptingTools;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;IIS-ApplicationDevelopment;IIS-ASP;IIS-ASPNET;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-NetFxExtensibility;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-HttpTracing;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-Performance;IIS-HttpCompressionStatic;IIS-Security;IIS-RequestFiltering;IIS-WindowsAuthentication;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI

Nov 19 2008 by SaadL

I have Vista Home Premium and am trying to install IIS. I have tried to do this through the control panel but upon restart an error occurs stating "An error has occurred. Not all of the features were successfully changed" and the updates are rolled back. I have tried using using the following cmd lines.

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;WAS-WindowsActivationService;WAS-ProcessModel;

then

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServerManagementTools;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-ManagementConsole;IIS-ManagementScriptingTools;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;IIS-ApplicationDevelopment;IIS-ASP;IIS-ASPNET;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-NetFxExtensibility;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-HttpTracing;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-Performance;IIS-HttpCompressionStatic;IIS-Security;IIS-RequestFiltering;IIS-WindowsAuthentication;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI

I then run echo %errorlevel% and receive error 3010

Any suggestions?

Jan 21 2009 by jmycr

Sorry the error I am getting on restart is "Updates were not configured correctly. Reverting changes"

Jan 21 2009 by jmycr


I too have the same problem but if I run echo %errorlevel% receive the error 14081. Why? Any suggestions?
Thanks

Feb 15 2009 by TigreVikinga

Let's try to debug the problem. Can you please share out the contents of your %windir%\iis7.log. This should help us identify any IIS setup issues. Thanks.

Feb 18 2009 by saadl

I have run start /w pkgmgr /l:c:\outiis.log. Were generate 3 files.
1-outiis.log
2-outiss.log.dpx
3-outiss.log.perf
This files are incomprehensible. The unique line that I can read are:
tzres.dll, -322 tzres-dll, -321
package-manager-CBS2 772 c:\outiis.log
For the other I not can read. HELP ME!!!
Thanks

Feb 22 2009 by TigreVikinga

Submit a Comment

You must Log In to comment.

Microsoft Communities