62
Published: March 2007 Office Communications Server 2007 (Public Beta) Command-Line Reference Guide

OCS CommandLine

Embed Size (px)

Citation preview

Page 1: OCS CommandLine

Published: March 2007

Office Communications Server 2007 (Public Beta) Command-Line Reference Guide

Page 2: OCS CommandLine

This document supports a preliminary release of a software product that may be changed substantially prior to final commercial release.

This document is provided for informational purposes only and Microsoft makes no warranties, either express or implied, in this document.

Information in this document, including URL and other Internet Web site references, is subject to change without notice. The entire risk of

the use or the results from the use of this document remains with the user. Unless otherwise noted, the companies, organizations, products,

domain names, e-mail addresses, logos, people, places, and events depicted in examples herein are fictitious. No association with any real

company, organization, product, domain name, e-mail address, logo, person, place, or event is intended or should be inferred. Complying

with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document

may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical,

photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation.

Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this

document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give

you any license to these patents, trademarks, copyrights, or other intellectual property.

© 2007 Microsoft Corporation. All rights reserved.

Microsoft, MS-DOS, Windows, Windows NT, Windows Server, Active Directory, and SQL Server are either registered trademarks or

trademarks of Microsoft Corporation in the United States and/or other countries.

All other trademarks are property of their respective owners.

Page 3: OCS CommandLine

ContentsContents..............................................................................................................................................3

Introduction.........................................................................................................................................1

Overview.............................................................................................................................................1

Active Directory..................................................................................................................................1

Using LCSCmd.exe........................................................................................................................2

Forest Actions............................................................................................................................3

Domain Actions.........................................................................................................................4

Server Actions...........................................................................................................................4

Preparing the Schema.....................................................................................................................4

SchemaPrep...............................................................................................................................5

CheckSchemaPrepState.............................................................................................................5

Preparing the Forest.......................................................................................................................6

ForestPrep..................................................................................................................................6

CheckForestPrepState................................................................................................................6

ForestUnprep.............................................................................................................................6

CheckAllDomainsPrepState......................................................................................................7

Preparing Domains.........................................................................................................................7

DomainPrep...............................................................................................................................7

CheckDomainPrepState.............................................................................................................8

DomainUnPrep..........................................................................................................................8

Delegating in a Domain..................................................................................................................8

CreateDelegation.......................................................................................................................8

CheckDelegation.......................................................................................................................9

RemoveDelegation..................................................................................................................10

Managing Permissions on a Domain............................................................................................11

Create Permissions..................................................................................................................11

Check Permissions...................................................................................................................12

Remove Permissions...............................................................................................................12

Using Configuration Actions on a Domain..................................................................................12

Pools..................................................................................................................................................13

Page 4: OCS CommandLine

Preparing Pools............................................................................................................................15

Create Pools.............................................................................................................................15

Check a Single Pool.................................................................................................................15

Check All Pools.......................................................................................................................16

Remove Pools..........................................................................................................................16

Update Pools/Backend.............................................................................................................16

Servers...............................................................................................................................................17

Installing Servers with MSI Files.................................................................................................17

MSI Instructions, Parameters, and Switches...........................................................................17

Server.msi................................................................................................................................20

Audiovideomcu.msi.................................................................................................................20

Datamcu.msi............................................................................................................................20

Archservice.msi.......................................................................................................................20

Admintools.msi.......................................................................................................................21

Activate Servers.................................................................................................................................21

Activating Standard Edition Server..............................................................................................22

Activating Audio/Video Conferencing Server.............................................................................23

Activating Web Conferencing......................................................................................................24

Activating Archiving....................................................................................................................25

Activating Other Communications Servers..................................................................................26

Enterprise Edition Server........................................................................................................26

Front-End Servers....................................................................................................................27

Proxy Server............................................................................................................................28

WorkGroupProxy Server.........................................................................................................29

Edge Servers............................................................................................................................30

Other Server Actions.........................................................................................................................31

Deactivating Servers....................................................................................................................32

Using Web Component Actions...................................................................................................33

Using CheckServerState...............................................................................................................34

Performing Server Diagnostics....................................................................................................35

Exporting, Importing, and Updating Settings..............................................................................36

Export......................................................................................................................................36

Import......................................................................................................................................37

Page 5: OCS CommandLine

Update......................................................................................................................................37

Install Databases and Certificates....................................................................................................38

Installing SQL Server, Express Edition, on an Standard Edition Server.....................................38

Installing Certificates...................................................................................................................38

The Cert Action.......................................................................................................................38

Appendix............................................................................................................................................40

Delegating Setup, Deployment, and Administration Tasks.........................................................40

Communications Server 2007 Usage Instructions, Parameters, and Switches............................41

Page 6: OCS CommandLine

IntroductionThis document outlines the command-line (CL) process for performing tasks related to deployments of the Active Directory® Domain Services in a complex Microsoft® Office Communications Server 2007 environment, as well as when performing remote installations.

OverviewCommand-line usage within a Communications Server 2007 provides for Active Directory deployments in a complex Microsoft Office Communications Server 2007 environment primarily through the LCSCmd.exe application. LCSCmd.exe performs server-related command-line actions that will prepare Active Directory, create pools, as well as install, activate, check the status of, or deactivate:

Standard Edition (SE) Servers

Enterprise Edition (EE) Servers

Front End Servers role

Audio/Video Conferencing Server role

Web Conferencing Server role

Archiving Servers

Proxy Servers

Edge Servers

LCSCmd.exe also provides the means to perform XML-based logging, manage permissions, and create pools. Besides LCSCmd.exe, several other applications are available that will augment command-line operations through GUI wizards. These include:

Audiovideomcu.msi – Installs A/V Conferencing Server on an SE or EE server

Datamcu.msi – Installs Web Conferencing Server on an SE or EE

Archservice.msi – Installs Archiving Service

Admintools.msi – Installs Admin tools

SQLExpr.exe – Installs a Microsoft SQL Server™ 2005, Express Edition, database

Of these, the most common command line task is preparing the Office Communications Server extensions to the Active Directory schema. The process employs LCSCmd.exe to extend the Active Directory schema and create the necessary objects, groups, and permissions required to deploy, and operate, Office Communications Server 2007.

Active DirectoryLCSCmd.exe is the principal CL application used throughout the Active Directory preparation and deployment, through actions in one or all of the following contexts:

Page 7: OCS CommandLine

2   Office Communications Server 2007 Command-Line Reference Guide

Forest – Initial deployment procedures. Domains prepared for Communications Server, the schema naming context, and the configuration naming context.

Domain – Prepares and creates permissions for a domain, or several domains, to host Communications Server and check the validity of those actions.

Server – Activates, checks, deactivates or performs diagnostics on a computer or server acting in a Communications Server role.

Using LCSCmd.exeLCSCmd.exe is copied to %programfiles%\Common Files\Microsoft Communications Server 2007 during installation. Syntax for using LCSCmd.exe to prepare Active Directory for a Communications Server deployment includes:

Forest-related actions:

LCSCmd.exe /Forest[:{forest FQDN}] /Action:{action name} [Parameter 1]…[Parameter N]

Domain-related actions:

LCSCmd.exe /Domain[:{domain FQDN}] /Action:{action name} [Parameter 1]…[Parameter N]

Server-related actions

LCSCmd.exe /Server[:{server FQDN}] /Action:{action name} [Parameter 1]…[Parameter N]

Command Line help is available at any point through a series of nested directories. For instance, typing LCSCmd.exe, the relative context, and then /?, will provide help for the respective action:

LCSCmd.exe /Forest /?

or:

LCSCmd.exe /Domain /?

Brackets [ ] indicate optionally-supplied information. The syntax indicates the action, and the parameters for the action. The executed command defaults to the local context unless a Fully Qualified Domain Name (FQDN) parameter value is provided. Thus, specifying the syntax, /Forest, /Domain, or /Server, without a FQDN parameter value will assume a local forest, domain, or server.

When the FQDN domain or server is supplied, such as /Forest: <forest FQDN>, /Domain:<domain FQDN>, or /Server:<server FQDN>, the action occurs on the remote forest, domain, or server indicated.

To log any action, specify the file path and format of the log as follows:

/l:<full path file name>

Successful, LCSCmd.exe-related actions are logged to %temp% as <ActionName>_<timestamp>.html. To save the log as an XML file specify the file path and format as follows:

Page 8: OCS CommandLine

Appendix   3

/XML

The log default path is displayed at the end of each action. Using /l:<full path log file name> and /XML will override defaults for the file path of the log and the format of the logs, respectively.

For a list of the most commonly used command-line parameters and actions see Communications Server 2007 Usage Instructions, Parameters, and Switches in the document appendix.

Run LCSCmd.exe from a command prompt on either Standard Edition or Enterprise Edition CDs; from a shared installation folder, or any existing local deployment folder such as <local drive>:Program Files\Common Files\Microsoft Communications Server 2007 during installation.

To open a command prompt and access LCSCmd.exe1. Click Start, click Run, type CMD, and then press ENTER.

2. Navigate to the relevant folder containing LCSCmd.exe, and then type LCSCmd.exe.

Forest ActionsForest actions are used for initial deployment procedures and generally impact more than one domain in an Active Directory forest, including domains in the forest, domains prepared for Communications Server 2007, the schema naming context, and the configuration naming context.

Forest actions require the /Forest switch with LCSCmd.exe and the /Forest parameter defaults to the local forest unless a remote one is specified. It is recommended that all procedures run from the local forest to reduce administrator workload. To run the action on another forest, specify a remote forest FQDN, (/Forest:<forest FQDN>). A common best practice is to obtain all relevant permissions and authorizations before starting this action.

Forest preparation includes the following actions:

SchemaPrep – Prepares schema by uploading Communications Server schema extensions.

CheckSchemaPrepState – Checks Active Directory schema state.

ForestPrep – Prepares the forest to host Communications Server.

CheckForestPrepState – Checks whether the forest has been prepared for Communications Server.

ForestUnprep – Removes the preparation from the forest to host Communications Server.

CheckAllDomainsPrepState – Checks all domains in the forest whether they were prepared to host Communications Server.

CheckAllPoolsState – Lists all pools in a forest together with their states.

CheckPoolState – Checks the pool's state.

CreatePool – Creates a pool for Communications Server Enterprise Edition servers in the forest.

RemovePool – Removes a pool from the forest.

UpdatePoolBackend – Updates the backend for a pool.

Page 9: OCS CommandLine

4   Office Communications Server 2007 Command-Line Reference Guide

All Forest-related pool actions are detailed in a separate section on Pools.

Domain ActionsDomain actions prepare a domain or several domains to host Communications Server and check the validity of those actions. Domain actions require the /Domain switch with LCSCmd.exe and help manage the Communications Server domain.

As with forest actions, the /Domain parameter defaults to the local domain unless a FQDN remote domain is specified, such as /Domain:< domain FQDN>. Domain preparation includes the following actions:

DomainPrep – Prepares the domain to host Communications Server.

CheckDomainPrepState – Checks whether the domain has been prepared to host Communications Server.

DomainUnPrep – Removes the preparation from the domain to host Communications Server.

CreateLcsOuPermissions – Creates permissions for Communications Server groups on the specified container for User, Contact, InetOrgPerson or Computer type objects.

CheckLcsOuPermissions – Checks whether permissions for Communications Server groups were set on the specified container for User, Contact, InetOrgPerson, or Computer type objects

RemoveLcsOuPermissions – Removes permissions for Communications Server groups on the specified container for User, Contact, InetOrgPerson or Computer type objects

CreateDelegation – Creates Read-Only, Server, User, or Setup Admins credentials on the domain

CheckDelegation – Checks Read-Only, Server, User, or Setup Admins credentials on the domain

RemoveDelegation – Removes Read-Only, Server, User, or Setup Admins credentials on the domain

Server ActionsServer actions using LCSCmd.exe activate, check, deactivate, or perform diagnostic functions on a computer or server acting in a Communications Server role as follows:

Activate – Activates a computer as a Communications Server role.

CheckLCServerState – Checks a server's state and role as a Communications Server.

Deactivate – Deactivates a server activated as a Communications Server role in its domain.

Diag – Performs extensive diagnostic analysis

Most of these actions are performed once the server or servers have been installed. See Installing Servers with MSI Files for information on installing servers with the various, Office Communications Server-supplied, Microsoft Windows® Installer server-installation files. See LCSCmd.exe Server Actions for more information on using LSCCmd.exe in a command-line environment.

Page 10: OCS CommandLine

Appendix   5

Preparing the SchemaBefore beginning this procedure, review all Active Directory extensions that will be modified for Communications Server using a text editor such as Windows Notepad. The Schema.ldf file is located in the \Setup\I386 folder of the installation CD. Communications Server schema extensions are replicated across all child domains, which impacts network bandwidth.

SchemaPrepRun SchemaPrep at a time when network utilization is low. SchemaPrep must access the Schema Master, which requires that the remote registry service is running with the remote registry key enabled. To prepare the schema of the current forest log on to a computer in the Active Directory domain with Schema Admins credentials and administrator credentials on the Schema Master as follows:

LCSCmd.exe /Forest /Action:SchemaPrep /ldf:<folder where the .ldf file is located>

such as:

LCSCmd.exe /Forest /Action:SchemaPrep

Use the following command to verify that Schema Prep completed successfully.

LCSCmd.exe /Forest /Action:CheckSchemaPrepState

The following is an example of a successful SchemaPrep action:

Figure 1. Example of successful CL SchemaPrep action showing LCSCmd.exe and log file directory paths

CheckSchemaPrepStateUse the CheckSchemaPrepState action to check Active Directory schema state. The syntax for the CheckSchemaPrepState action is:

LCSCmd.exe /Forest[:{forest FQDN}] /Action:CheckSchemaPrepState

such as:

LCSCmd.exe /Forest /Action:CheckSchemaPrepState

A successful CheckSchemaPrepState action will produce a result similar to the one depicted in the following figure:

Figure3. Example of Successful CheckSchemaPrepState

Open the indicated log file for further details on the CheckSchemaPrepState action.

Page 11: OCS CommandLine

6   Office Communications Server 2007 Command-Line Reference Guide

Preparing the ForestPreparing the Active Directory forest for Communications Server in a command-line environment provides the following actions:

ForestPrep – Prepare a forest through the creation of objects, containers, extended property rights and so forth

CheckForestPrepState – Check those actions to ensure the forest is properly prepared

ForestUnprep – Remove the actions back to the forest’s original state

CheckAllDomainsPrepState – Check an entire domain after several domains have been prepared for a Communications Server deployment

All actions require forest root domain Enterprise Admins or Domain Admins credentials. The SchemaPrep actions should be successfully completed before beginning this task.

ForestPrepThe following command runs the ForestPrep action. If the /GroupDomain parameter is not specified, the value will default to the local domain:

LCSCmd.exe /Forest[:{forest FQDN}] /Action:ForestPrep

such as:

LCSCmd.exe /Forest /Action:ForestPrep

Use the same command, but with the /Global syntax, to specify global settings as follows:

LCSCmd.exe /Forest /Action:ForestPrep/Global:[system |configuration]] [/GroupDomain :<FQDN of the domain to create the universal groups in>]

such as:

LCSCmd.exe /Forest /Action:ForestPrep /Global:system

A successful ForestPrep action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

CheckForestPrepStateMaintaining the same forest root domain Enterprise Admins or Domain Admins credentials used in the previous task, check that the ForestPrep action was successful by running the following action:

LCSCmd.exe /Forest[:{forest FQDN}] /Action:CheckForestPrepState

such as:

LCSCmd.exe /Forest /Action:CheckForestPrepState

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

ForestUnprepForestUnprep removes prior, Communications Server forest preparations such as objects, containers, extended property rights, and so forth. The following command runs the ForestUnprep action:

Page 12: OCS CommandLine

Appendix   7

LCSCmd.exe /Forest[:{forest FQDN}] /Action:ForestUnprep

such as:

LCSCmd.exe /Forest:contoso.com /Action:ForestUnprep

ForestUnprep will not proceed if any previously prepared child domain exists on the forest root. Using the /Force switch will make ForestUnprep proceed; however all deployed Communications Servers will stop functioning. Use the following syntax and parameters to force a ForestUnprep action:

LCSCmd.exe /Forest[:{forest FQDN}] /Action:ForestUnprep [/Force:{0|1|true|false}]

such as:

LCSCmd.exe /Forest:contoso.com /Action:ForestUnprep /Force

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

For more information on forest actions, such as adding pools or creating global settings, see the section on Creating Pools.

CheckAllDomainsPrepStateThe CheckAllDomainsPrepState verify that all Domains and their respective connections, objects, groups, permissions and so forth, were successfully prepared. Run the LCSCmd.exe action as follows:

LCSCmd.exe /Forest[:{forest FQDN}] /Action:CheckAllDomainsPrepState

such as:

LCSCmd.exe /Forest /Action:CheckAllDomainsPrepState

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Preparing DomainsPreparing the Communications Server Active Directory domain in a command-line environment provides the following actions:

DomainPrep – Prepare a domain by creating groups and permissions necessary for a successful Communications Server deployment.

CheckDomainPrepState – Check those actions to ensure the domain is properly prepared.

DomainUnPrep – Remove the actions back to the forest’s original state.

This procedure requires Domain Admins credentials in the proposed Communications Server domain and that ForestPrep has been successfully completed. Using /Domain without the parameter value defaults the local domain.

DomainPrepThe DomainPrep action prepares a domain to host Communications Server 2007 by creating the Active Directory groups and permissions necessary for a successful deployment. The syntax for the DomainPrep action is:

Page 13: OCS CommandLine

8   Office Communications Server 2007 Command-Line Reference Guide

LCSCmd.exe /Domain[:{FQDN}] /Action:DomainPrep

such as:

LCSCmd.exe /Domain:contoso.com /Action:DomainPrep

By default, DomainPrep uses the primary domain controller. However the /PDCs can be used as an optional parameter to specify a primary domain controller in a different domain when the root primary domain controller is not available, as follows:

LCSCmd.exe /Domain [:{domain FQDN}] /Action:DomainPrep [/PDCs:<name of primary domain controller]

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

CheckDomainPrepStateVerify that DomainPrep was successful by using the LCSCmd.exe action as follows:

LCSCmd.exe /Domain[:{domain FQDN}] /Action:CheckDomainPrepState

such as:

LCSCmd.exe /Domain:contoso.com /Action:CheckDomainPrepState

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

DomainUnPrepDomainUnPrep reverses all actions initiated by the DomainPrep command and is useful in environments that have orphaned entries/settings. It is important that all activated Enterprise Edition (EE) or Standard Edition (SE) Communications Servers in the domain are deactivated before running this action. The following command runs the DomainUnPrep action:

LCSCmd.exe /Domain[:{FQDN}] /Action:DomainUnPrep

such as:

LCSCmd.exe /Domain:contoso.com /Action:DomainUnPrep

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

For more information domain actions, such as creating, checking, or removing permissions, see the section on Managing Permissions.

Delegating in a Domain Assign, check, or remove credentials from a domain through the following actions:

CreateDelegation – Creates Read-Only, Server, User, or Setup credentials on the domain

CheckDelegation – Checks Read-Only, Server, User, or Setup credentials on the domain

RemoveDelegation – Removes Read-Only, Server, User, or Setup credentials on the domain

CreateDelegationThe following command runs the CreateDelegation action:

Page 14: OCS CommandLine

Appendix   9

LCSCmd.exe /Domain:<Domain FQDN> /Action:<action name> /Delegation:<ReadOnlyAdmin | ServerAdmin | UserAdmin | SetupAdmin> /TrusteeGroup:<Trustee group name> /TrusteeDomain:<domain FQDN of the trustee> /ComputerOU:<ComputerOU DN> /ServiceAccount:<RTC service account name> /ComponentServiceAccount:<RTC component service account name>

such as:

LCSCmd.exe /Domain /Action:CreateDelegation /Delegation:ServerAdmin /TrusteeGroup:MyDomainGroup /TrusteeDomain:MyDomainName /ComputerOU:MyComputerOUDomain /ServiceAccount:MyRTCServiceAccount /ComponentServiceAccount:MyRCTComponentServiceAccount

The following optional parameters exist to augment the /TrusteeGroup action:

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/ApplyGlobalSettingsACE – Specifies whether to grant ACE on Global Settings container. It defaults to "FALSE"

/UserOU – Specifies UserOU DN. It defaults to ""

/UserType – Specifies the type of the user object on which to create, check or remove delegations. It defaults to ""

/PoolName – Specifies the name of the pool. It defaults to ""

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

CheckDelegationThe following command runs the CheckDelegation action:

LCSCmd.exe /Domain:<Domain FQDN> /Action:<action name> /TrusteeGroup:<Trustee group name>

such as:

LCSCmd.exe /Domain /Action:CheckDelegation /TrusteeGroup:MyDomainGroup

The following optional parameters exist to augment the /TrusteeGroup action:

Page 15: OCS CommandLine

10   Office Communications Server 2007 Command-Line Reference Guide

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/TrusteeDomain – Specifies domain FQDN of the trustee. It defaults to ""

/ApplyGlobalSettingsACE – Specifies whether to grant ACE on Global Settings container. It defaults to "FALSE"

/ComputerOU – Specifies ComputerOU DN. It defaults to ""

/UserOU – Specifies UserOU DN. It defaults to ""

/UserType – Specifies the type of the user object on which to create, check or remove delegations. It defaults to ""

/PoolName – Specifies the name of the pool. It defaults to ""

/ServiceAccount – Specifies RTC service account name. It defaults to ""

/ComponentServiceAccount – Specifies RTC component service account name. It defaults to""

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

RemoveDelegationThe following command runs the RemoveDelegation action:

LCSCmd.exe /Domain:<Domain FQDN> /Action:<action name> /Delegation:<ReadOnlyAdmin | ServerAdmin | UserAdmin | SetupAdmin> /TrusteeGroup:<Trustee group name>

such as:

LCSCmd.exe /Domain /Action:RemoveDelegation /Delegation:ServerAdmin /TrusteeGroup:MyDomainGroup

The following optional parameters exist to augment the /TrusteeGroup action:

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

Page 16: OCS CommandLine

Appendix   11

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/TrusteeDomain – Specifies domain FQDN of the trustee. It defaults to ""

/ApplyGlobalSettingsACE – Specifies whether to grant ACE on Global Settings container. It defaults to "FALSE"

/ComputerOU – Specifies ComputerOU DN. It defaults to ""

/UserOU – Specifies UserOU DN. It defaults to ""

/UserType – Specifies the type of the user object on which to create, check or remove delegations. It defaults to ""

/PoolName – Specifies the name of the pool. It defaults to ""

/ServiceAccount – Specifies RTC service account name. It defaults to ""

/ComponentServiceAccount – Specifies RTC component service account name. It defaults to""

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

To delegate permissions to users who are not members of an authorized Active Directory group to setup, deploy, or perform administrate tasks in Communications Server; see Delegating Setup, Deployment, and Administration Tasks in the Appendix.

Managing Permissions on a DomainIn some cases, permissions to Active Directory containers/Objects may not have been created or updated properly during preparation process for Active Directory. The following actions allow a user to establish permissions directly on a container for any specified object.

Two actions exist to augment permissions management:

CreateLcsOuPermissions – Creates permissions for Communications Server groups

CheckLcsOuPermissions – Ascertains whether a CreateLcsOuPermissions action was successful

RemoveLcsOuPermissions – Takes permissions away from Communications Server groups

Page 17: OCS CommandLine

12   Office Communications Server 2007 Command-Line Reference Guide

Create PermissionsThe CreateLcsOuPermissions command creates permissions for Communications Server groups directly on a specified container, or Organizational Unit (OU), for a user, contact, InetOrgPerson, or a specific object in the container. The command requires the /OU and /ObjectType parameters (/OU specifies the container’s distinguished name relative to the domain root container distinguished name, while /ObjectType indicates the type of Communications Server object for which to create permissions). An optional /RefDomain command can be used to create the permissions on the container to groups in a specific domain, rather than to groups on the default domain.

Before starting this task, log on to the domain computer using Domain Admins credentials for the domain with the organizational unit containers that will receive permissions and then use the following syntax and parameters examples:

LCSCmd.exe /Domain[:{FQDN}] /Action:CreateLcsOuPermissions /OU:<CN=name> /ObjectType:<name>[{User |InetOrgPerson|Computer|Contact }] [/RefDomain:<domain FQDN>]

such as:

LCSCmd.exe /Domain /Action:CreateLcsOuPermissions /OU:“OU=Dept1Users,OU=UsersOU” /ObjectType:user

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Check PermissionsThe CheckLcsOuPermissions command ascertains whether the preceding CreateLcsOuPermissions action was successful. This action also requires the /OU and /ObjectType parameters. Syntax for the CheckLcsOuPermissions action is as follows:

LCSCmd.exe /Domain[:{FQDN}] /Action:CheckLcsOuPermissions /OU:<distinguished name of container relative to the domain root> /ObjectType:<ObjectName>[{User |InetOrgPerson|Computer|Contact }] [/RefDomain:<domain FQDN>]

such as:

LCSCmd.exe /Domain /Action:CheckLcsOuPermissions /OU:“OU=Dept1Users,OU=UsersOU” /ObjectType:user

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Remove PermissionsUse the RemoveLcsOuPermissions action to take away permissions for Office Communications Server groups on the specified container for User, Contact, InetOrgPerson or computer-type objects. This action requires /OU and /ObjectType parameters. Use the following as an example:

LCSCmd.exe /Domain[:{FQDN}] /Action:RemoveLcsOuPermissions /OU:<CN=name> /ObjectType:<name>[:{User |InetOrgPerson|Computer|Contact }] [/RefDomain:<domain FQDN>]

such as:

LCSCmd.exe /Domain /Action:RemoveLcsOuPermissions /OU:“OU=MyUsers” /ObjectType:user

Page 18: OCS CommandLine

Appendix   13

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

To use Command Line tools to delegate permissions to users who are not members of an authorized Active Directory group to setup, deploy, or perform administrate tasks in Communications Server, see Delegating Setup, Deployment, and Administration Tasks in the Appendix.

Using Configuration Actions on a DomainUsing the LCSCmd.exe command in conjunction with the /Config action upgrades, exports or imports global, pool, and/or machine level configurations. Use the following syntax example to configure a respective setting:

LCSCmd.exe /Config:<Configuration Task> /Action:<action name> /ConfigFile:<configuration file path> /Level:<Global | Pool | Machine>[OutputFile:<Upgraded configuration output file path>][/L:<log file path>] [/XML:[TRUE|FALSE]] [/Force:[TRUE|FALSE]] [/?:[TRUE|FALSE]]

such as:

LCSCmd.exe /Config /Action:Export /ConfigFile:C:\MyMachine /Level:Machine

Where:

/Config – Exports or imports global, pool and/or machine level configurations. It defaults to " "

/Action – Takes a string specifying the action name. Valid action names include Export, Import, Upgrade

/ConfigFile – Specifies the file to which to export configuration

/Level – Specifies the levels of configurations that need to be exported

/OutputFile – Specifies the file to which the upgrade configurations will be written. It defaults to ""

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

PoolsThe following Forest-related actions prepare, create, check, update or an Enterprise pool. These actions include:

CreatePool – Initial procedure for deploying an Enterprise pool

CheckPoolState – Verifies a pool in a forest

Page 19: OCS CommandLine

14   Office Communications Server 2007 Command-Line Reference Guide

CheckAllPoolsState – Verifies and lists all Standard and Enterprise pools in a forest

RemovePool – Removes an Enterprise pool

UpdatePoolBackend – Allows changes to a back-end without compromising an existing Enterprise pool

An example of the syntax used with pool actions are:

LCSCmd.exe /Forest:<Forest FQDN> /Action:<action name> /PoolName:<pool name> /PoolBE:<SQL instance name (machine\instance name)> /RefDomain:<Domain FQDN> /DBDataPath:<DB data file path> /DBLogPath:<DB log file path> /DynDataPath:<Dynamic DB data path> /DynLogPath:<Dynamic DB log path> /MeetingContentPath:<Meeting content UNC path> /MeetingMetaPath:<Meeting meta data UNC path> [/PDCRequired:[TRUE|FALSE] ][/RootDC:<DC FQDN>] [/DC:<DC FQDN>][/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>] [/Clean:[TRUE|FALSE] ][/EnableArch:[TRUE|FALSE] ] [/EnableCDR:[TRUE|FALSE] ][/PoolFQDN:<Pool FQDN>] [/InternalWebFQDN:<Internal Web FQDN>] [/ExternalWebFQDN:<External Web FQDN>] [/ABOutputlocation:<UNC Path to NTFS Folder>] [/MeetingArchivingPath:<Meeting content archiving UNC path>] [/Force:[TRUE|FALSE] ][/L:<log file path>] [/XML:[TRUE|FALSE] ] [/?:[TRUE|FALSE]

Where:

/Forest – <Forest FQDN> /Action:<action name>

/PoolName – <pool name>

/PoolBE – <SQL instance name (machine\instance name)>

/RefDomain – <Domain FQDN> /DBDataPath:<DB data file path>

/DBLogPath – <DB log file path>

/DynDataPath – <Dynamic DB data path>

/DynLogPath – <Dynamic DB log path>

/MeetingContentPath – <Meeting content UNC path>

/MeetingMetaPath – <Meeting meta data UNC path>

/PDCRequired – [TRUE|FALSE] ]

/RootDC – <DC FQDN>

/DC – <DC FQDN> [/GC:<GC FQDN>

/Global – <Configuration | System>

/GroupDomain – <Group Domain FQDN>

/GroupDomainDC – <Group Domain DC FQDN>

/Clean – [TRUE|FALSE]

/EnableArch – [TRUE|FALSE]

/EnableCDR – [TRUE|FALSE]

/PoolFQDN – <Pool FQDN>

/InternalWebFQDN – <Internal Web FQDN>

/ExternalWebFQDN – <External Web FQDN>

Page 20: OCS CommandLine

Appendix   15

/ABOutputlocation – <UNC Path to NTFS Folder>

/MeetingArchivingPath – <Meeting content archiving UNC path>

/Force – [TRUE|FALSE]

/L – <log file path>

/XML – [TRUE|FALSE]

/? – [TRUE|FALSE]

The /Clean switch will replace any existing databases. Use the /dbsetupfilepath parameter to find the DBsetup script and the related database configuration files, otherwise the LCSCmd.exe command searches for it from the folder from which it is being run. There is no option to select the database name.

Preparing PoolsBefore beginning these actions ensure that the following Communications Server preparations are completed:

Schema

Forest

Enterprise Pool Domain

Child Domain

Correct SQL instance installed with Windows Authentication

When undertaking pool actions, ensure that each pool’s FQDN does not match another server or pool in the forest. After you have performed this procedure, check the XML log file for errors. This file is in the %temp% directory.

To achieve optimal performance, place the database and transaction log files on separate physical disks, and do not place files on a page file or system disk. This procedure can also be run from Setup.exe. Enterprise Admins or Domain Admins credentials are required for all pool-related actions.

Create PoolsThe CreatePool action starts an Enterprise pool deployment by creating the necessary Active Directory Pool and Trusted Server objects. CreatePool also builds an Enterprise pool back-end with User and Configuration Databases. After this action is completed, activate Enterprise Edition Servers to the pool. Use the following as an example:

LCSCmd.exe /Forest[:<forest FQDN>] /Action:CreatePool /PoolName:<Pool Name> /Poolbe:<Pool BackEnd Server name\SQL instance name> /RefDomain:<domain FQDN> [/Clean] /DBDataPath:<path> /DBLogPath:<path> [/dbsetupfilepath:<path>] /DynDataPath:<Dynamic DB data path> /DynLogPath:<Dynamic DB log path> /MeetingContentPath:<Meeting content UNC path> /MeetingMetaPath:<Meeting meta data UNC path>

such as:

LCSCmd.exe /Forest /Action:CreatePool /PoolName:Pool01 /Poolbe:Pool01-backend\Live /RefDomain:corp.woodgrovebank.com /dbdatapath:“e:\Microsoft\LC Data”/dblogpath:“d:\Microsoft\LC Log” /DynDataPath:“e:\Microsoft\LC DynData

Page 21: OCS CommandLine

16   Office Communications Server 2007 Command-Line Reference Guide

/DynLogPath:“d:\Microsoft\LC DynLog” MeetingContentPath:“d:\Microsoft\MeetingData” /MeetingMetaPath:“d:\Microsoft\MetaData”

Activation will fail if the action can’t find the pool on the root domain global catalog server used during activation. A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Check a Single PoolUse CheckPoolState to troubleshoot or verify the state of a Communications Server pool. This action indicates the state of this pool’s Active Directory information and the pool’s Enterprise Edition Servers. A syntax example for this action is as follows:

LCSCmd.exe /Forest[:<forestFQDN>] /Action:CheckPoolState /PoolName:<name of pool>

such as:

LCSCmd.exe /Forest /Action:CheckPoolState /PoolName:Pool01

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Check All PoolsThe CheckAllPoolsState action reveals every Enterprise pool and Standard Edition Server in a forest, and indicates each high-level state of the respective pool and server – including their Active Directory information. The syntax for the CheckAllPoolsState action is:

LCSCmd.exe /Forest[:<forestFQDN>] /Action:CheckAllPoolsState

such as:

LCSCmd.exe /Forest:contoso.com /Action:CheckAllPoolsState

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Remove PoolsThe RemovePool action removes a Communications Server Enterprise pool, the Enterprise pool Back-End Configuration Database, and the pool’s Active Directory information – including Pool and Trusted Server objects. It does not apply to a Standard Edition installation.

It is recommended this action be run after Communication Server users have been relocated to another pool and all Enterprise Edition Servers in the pool are deactivated. The Enterprise pool Back-End User Database can also be removed by specifying the /Keepdb:False parameter. The /Force parameter bypass normal action requirements such as when is lab or data recovery scenarios. Other points to remember when undertaking this action include:

RTCDomainServerAdmins credentials are required for the domain where the pool is deployed

Local administrator credentials are required on the Enterprise pool back-end server

Run the task from an Enterprise pool back-end server if possible

Do not run the action unless the Enterprise pool no longer has activated Enterprise Edition Servers or users

Delete the pool’s configuration from the load balancer when the action is completed

Page 22: OCS CommandLine

Appendix   17

An example of the syntax for the RemovePool action is:

LCSCmd.exe /Forest[:<forestFQDN>] /Action:RemovePool /PoolName:<PoolName> [/Keepdb] [/Force]

such as:

LCSCmd.exe /Forest /Action:RemovePool /PoolName:Pool01 /Keepdb

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Update Pools/BackendThe UpdatePoolBackend action updates an existing SQL back-end database while preserving the Enterprise pool. Use UpdatePools if data recovery moving to higher-performance pool back-end. This procedure:

Should be run during a planned downtime period

Requires that each Enterprise Edition Server of an Enterprise pool be stopped

Requires that data be exported from old databases in a scale-up scenario and then imported into a new back-end databases after UpdatePoolBackend action is completed

Requires a user with RTCDomainServerAdmins credentials

Requires the /PoolName and /Poolbe parameters

An example of the syntax for the UpdatePoolBackend action is:

LCSCmd.exe /Forest[:<forest FQDN>] /Action:UpdatePoolBackend /PoolName:<Pool Name> /Poolbe:<Pool BackEnd server FQDN\SQL instance name>

such as:

LCSCmd.exe /Forest /Action:UpdatePoolBackend /PoolName:Pool01 /Poolbe:Pool01Backend.childdomain.domain.com\sql_server_instance_name

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

For more information on pools, such as Importing or Export settings see Exporting and Importing Server or Pool Settings.

Servers

Installing Servers with MSI FilesSeveral Microsoft Windows Installer files (.msi) can be run from a setup disc when a remote installation or installation to a large enterprise is more practical. These .msi files include:

Server – Installs the SE/EE/FP/Edge Servers by passing each respective role value to the MSI

Audiovideomcu – Installs the Audio/Video Server to Office Communications Server 2007

Datamcu – Installs the Web Conferencing Server to Office Communications Server 2007

Page 23: OCS CommandLine

18   Office Communications Server 2007 Command-Line Reference Guide

Archservice – Installs the Archiving service to Office Communications Server 2007

Admintools – Installs the Admin Toolbox to Office Communications Server 2007

MSI Instructions, Parameters, and SwitchesUse Server.msi Server=<server role> to install each respective server, otherwise use the Microsoft syntax in the following table when running an .msi file, to tailor an installation to its specific requirement:

Table 1. MSI Instructions, Parameters, and Switches

Basic Installation Instruction: Msiexec /Option <Required Parameter> [Optional Parameter]

Install Options </package | /i> <Product.msi> Installs or configures a product

/a <Product.msi> Administrative install - Installs a product on the network

/j<u | m> <Product.msi> [/t <Transform List>] [/g <Language ID>]

Advertises a product - m to all users, u to current user

</uninstall | /x> <Product.msi | ProductCode> Uninstalls the product

Display Options

/quiet Quiet mode, no user interaction

/passive Unattended mode - progress bar only

/q[n | b | r | f] Sets user interface level

n - No UI

b - Basic UI

r - Reduced UI

f - Full UI (default)

/help Help information

Restart Options

/norestart Do not restart after the installation is complete

/promptrestart Prompts the user for restart if necessary

/Forcerestart Always restart the computer after installation

Logging Options

/l [I | w | e | a | r | u | c | m | o | p | v | x | + | ! | * ] <LogFile>

i - Status messages

w - Nonfatal warnings

e - All error messages

NoteAll Windows Installer server types require the .NET Framework 2.0 to be installed in advance. From within the Office Communications Server installation disc, locate and run the DOTNETFX.exe file to install .NET Framework 2.0.

Page 24: OCS CommandLine

Appendix   19

a - Start up of actions

r - Action-specific records

u - User requests

c - Initial UI parameters

m - Out-of-memory or fatal exit information

o - Out-of-disk-space messages

p - Terminal properties

v - Verbose output

x - Extra debugging information

+ - Append to existing log file

! - Flush each line to the log

* - Log all information, except for v and x options

/log <LogFile> Equivalent of /l* <LogFile>

Update Options

/update <Update1.msp>[;Update2.msp] Applies update(s)

/uninstall <PatchCodeGuid>[;Update2.msp] /package <Product.msi | ProductCode>

Remove update(s) for a product

Repair Options

/f[ p | e | c | m | s | o | d | a | u |v ] <Product.msi | ProductCode>

Repairs a product

p - only if file is missing

o - if file is missing or an older version is installed (default)

e - if file is missing or an equal or older version is installed

d - if file is missing or a different version is installed

c - if file is missing or checksum does not match the calculated value

a - forces all files to be reinstalled

u - all required user-specific registry entries (default)

m - all required computer-specific registry entries (default)

s - all existing shortcuts (default)

v - runs from source and re-

Page 25: OCS CommandLine

20   Office Communications Server 2007 Command-Line Reference Guide

caches local package

Setting Public Properties

[PROPERTY=PropertyValue]

Server.msiThe Server.msi installs, updates, repairs, or uninstalls Standard Edition, Enterprise Edition, Edge Servers, and Front End Servers. Launch the Server.msi file from the setup CD with the following syntax:

Server.msi Server=<SE|EE|AP|Proxy|FE|>

such as:

Server.msi Server=SE

An installation wizard will appear that will prompt the user through the rest of the process.

Audiovideomcu.msiThe Audiovideomcu.msi installs, updates, repairs, or uninstalls the Office Communications Server, A/V Conferencing Server. Launch the Audiovideomcu.msi file from the setup CD with the following syntax:

Audiovideomcu.msi /Option <Required Parameter> [Optional Parameter]

such as:

Audiovideomcu.msi /uninstall

An installation wizard will appear that will prompt the user through the rest of the process.

Datamcu.msiThe Datamcu.msi installs, updates, repairs, or uninstalls the Office Communications Server, Web Conferencing Server. Launch the Datamcu.msi file from the setup CD with the following syntax:

Datamcu.msi /Option <Required Parameter> [Optional Parameter]

such as:

Datamcu.msi /uninstall

An installation wizard will appear that will prompt the user through the rest of the process.

Archservice.msiThe Archservice.msi installs, updates, repairs, or uninstalls the Office Communications Server, Archiving and CDR Server. Launch the Archservice.msi file from the setup CD with the following syntax:

Archservice.msi /Option <Required Parameter> [Optional Parameter]

such as:

NoteSE and EE roles require the MSXML6 file to be installed as well. From within the Office Communications Server installation disc, locate and run the Msxml6.exe executable.

NoteThe Datamcu.msi requires the J# file to be installed for it to function properly. From within the Office Communications Server installation disc, locate and run the Vjredist.exe executable file to install J#.

Page 26: OCS CommandLine

Appendix   21

Archservice.msi

or,

Archservice.msi /uninstall

An installation wizard will appear that will prompt the user through the rest of the process.

Admintools.msiThe Admintools.msi installs, updates, repairs, or uninstalls the Office Communications Server Administrative snap-in. Admintools.msi helps manage servers, users, pools and so forth through the Microsoft Management Console. Launch the Admintools.msi file from the setup CD with the following syntax:

Admintools.msi /Option <Required Parameter> [Optional Parameter]

such as:

Admintools.msi

or,

Admintools.msi /uninstall

An installation wizard will appear that will prompt the user through the rest of the process.

Activate ServersThe activation procedure should be performed after respective server files are installed. It creates Active Directory settings for the server while assigning a service account and permissions, using LCSCmd.exe with the following command-line actions:

Activate

Deactivate

Diag

CheckServerState

While the Deactivate, CheckServerState, and Diag actions are detailed later in this section, the Activate procedure will deploy the following server roles:

Standard Edition Servers

Audio/Video Conferencing Servers

Web Conferencing Servers

Front-End Servers

Archiving Services

Enterprise Edition Servers

Proxy Servers

WorkGroupProxy

Edge Servers

Web Server Components

Page 27: OCS CommandLine

22   Office Communications Server 2007 Command-Line Reference Guide

Before beginning this task, all ForestPrep, DomainPrep, and DomainAdd to forest root (if the respective server is in a child domain) actions should all be successfully completed. The following is an example of all syntax used for activating each server role or type listed in this guide:

LCSCmd.exe /Server:<Server FQDN> /MCU:<MCU Server FQDN> /Archiving:<Archiving server FQDN> /Role:<SE | EE | Proxy | WorkGroupProxy | AP | AVMCU | DATAMCU> /Action:Activate /PoolName:<pool name>/Password:My$tr0ngPwd /backend:<SQL instance name (machine\instance name)> /dbname:<database name> /DBDataPath:<DB data file path> /DBLogPath:<DB log file path> [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>] >][/User:<Account Name>] [/NoStart:[TRUE|FALSE]] [/Force:[TRUE|FALSE]] [/L:<log file path>] [/XML:[TRUE|FALSE]] [/?:[TRUE|FALSE]]

After running each action, verify that the task was successful by running the CheckLCServerState command as detailed in the section, CheckServerState.

Activating Standard Edition ServerUse the following syntax example to activate a Standard Edition Server:

LCSCmd.exe /Server:<Server FQDN> /Role:SE /Action:Activate /Password:My$tr0ngPwd [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>]

such as:

LCSCmd.exe /Server /Role:SE /Action:Activate /Password:My$tr0ngPwd

Where:

/Server – executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Role – specifies the role of the server

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Password – Specifies the service account password for the server

/RefDomain – specifies the reference domain FQDN. It defaults to "".

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

/User – Specifies the service account name for the server. It defaults to RTCComponentService. If the specified user account does not exist, Office Communications Server 2007 automatically creates the account.

Page 28: OCS CommandLine

Appendix   23

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Activating Audio/Video Conferencing ServerUse the following syntax example to install an Audio/Video Conferencing Server:

LCSCmd.exe /MCU:<MCU Server FQDN> /Action:<action name> /Role:<AVMCU> /PoolName:<pool name> /Password:<Account Password> [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>][/User:<Account Name>] [/NoStart:[TRUE|FALSE]] [/Force:[TRUE|FALSE]] [/L:<log file path>] [/XML:[TRUE|FALSE]] [/?:[TRUE|FALSE]]

such as:

LCSCmd.exe /MCU /Action:Activate /Role:AVMCU /Pool:Pool01 /Password:My$tr0ngPwd

Where:

/MCU – Executes the action for the specified MCU server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Role – Specifies the role of the MCU server

/PoolName – Specifies the name of the pool that MCU is going to serve. For Standard Edition servers, this must be the computer name

/Password – Specifies the service account password for the server

/RefDomain – Specifies the reference domain FQDN. It defaults to "".

/PDCRequired – Specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – Specifies the FQDN of a global settings domain DC. It defaults to ""

/DC – Specifies the FQDN of a domain DC. It defaults to ""

/GC – Specifies the FQDN of a forest GC. It defaults to ""

/Global – Specifies the global setting location. It defaults to ""

Page 29: OCS CommandLine

24   Office Communications Server 2007 Command-Line Reference Guide

/User – Specifies the service account name for the server. It defaults to RTCComponentService. If the specified user account does not exist, Office Communications Server 2007 automatically creates the account.

/NoStart – Specifies whether to start the LC service on the server during activation. It defaults to "TRUE"

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Activating Web ConferencingUse the following syntax example to activate a Web Conferencing Server:

LCSCmd.exe /MCU:<MCU Server FQDN> /Action:<action name> /Role:<DATAMCU> /PoolName:<pool name> /Password:<Account Password> [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>][/User:<Account Name>] [/NoStart:[TRUE|FALSE]] [/Force:[TRUE|FALSE]] [/L:<log file path>] [/XML:[TRUE|FALSE]] [/?:[TRUE|FALSE]]

such as:

LCSCmd.exe /MCU /Action:Activate /Role:DATAMCU /Pool:Pool01 /Password:My$tr0ngPwd

Where:

/MCU – Executes the action for the specified MCU server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Role – Specifies the role of the MCU server

/PoolName – Specifies the name of the pool that MCU is going to serve. For Standard Edition servers, this must be the computer name

/Password – Specifies the service account password for the server

/RefDomain – Specifies the reference domain FQDN. It defaults to "".

/PDCRequired – Specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – Specifies the FQDN of a global settings domain DC. It defaults to ""

/DC – Specifies the FQDN of a domain DC. It defaults to ""

/GC – Specifies the FQDN of a forest GC. It defaults to ""

/Global – Specifies the global setting location. It defaults to ""

Page 30: OCS CommandLine

Appendix   25

/User – Specifies the service account name for the server. It defaults to RTCComponentService. If the specified user account does not exist, Office Communications Server 2007 automatically creates the account.

/NoStart – Specifies whether to start the LC service on the server during activation. It defaults to "TRUE"

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Activating ArchivingUse the following syntax example to activate Archiving Services:

LCSCmd.exe /Archiving:<Archiving server FQDN> /Action:<action name> /Password:<Account Password> /backend:<SQL instance name (machine\instance name)> /dbname:<database name> /DBDataPath:<DB data file path> /DBLogPath:<DB log file path> [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE] ][/RootDC:<DC FQDN>] [/DC:<DC FQDN>][/GC:<GC FQDN>] [/Global:<Configuration | System>][/User:<Account Name>] [/NoStart:[TRUE|FALSE]][/clean:[TRUE|FALSE]] [/L:<log file path>][/XML:[TRUE|FALSE]] [/?:[TRUE|FALSE]]

such as:

LCSCmd.exe /Archiving /Action:CheckLCServerState /Password:My$tr0ngPwd

Where:

/Archiving – Executes the action for the specified archiving server machine. If no FQDN is specified, current machine is used. It defaults to ""

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Password – Specifies the service account password for the server

/Backend – Specifies the full SQL instance name where the IM Archiving and CDR back-end database will be set up. It can consist of a machine name and an instance name (For instance Machine01\LCS), or just the machine name in default instance case (such as Machine01)

/Dbname – Specifies the name of the database on the SQL instance specified for the IM Archiving Service

/DBDataPath – Specifies the folder where the database data file will be located

/DBLogPath – Specifies the folder where DB log file is located

/RefDomain – Specifies the reference domain FQDN. It defaults to "".

Page 31: OCS CommandLine

26   Office Communications Server 2007 Command-Line Reference Guide

/PDCRequired – Specifies whether PDCs are required for the action. It defaults to "TRUE"

/RootDC – Specifies the FQDN of a global settings domain DC. It defaults to ""

/DC – Specifies the FQDN of a domain DC. It defaults to ""

/GC – Specifies the FQDN of a forest GC. It defaults to ""

/Global – Specifies the global setting location. It defaults to ""

/UnRegSPN – Specifies whether to delete all existing service principal names registered for the service on the specified machine

/User – Specifies the service account name for the server. It defaults to RTCComponentService. If the specified user account does not exist, Office Communications Server 2007 automatically creates the account.

/NoStart – Specifies whether to start the LC service on the server during activation. It defaults to "TRUE"

/Clean – Specifies whether to do a clean setup for backend creation actions. It defaults to "FALSE".

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Activating Other Communications ServersEnterprise Edition Server

Use the following syntax example to activate an Enterprise Edition Server:

LCSCmd.exe /Server:<Server FQDN> /Role:EE /Action:Activate /Password:My$tr0ngPwd [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>]

such as:

LCSCmd.exe /Server /Role:EE /Action:Activate /Password:My$tr0ngPwd

Where:

/Server – executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Role – specifies the role of the server

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

Page 32: OCS CommandLine

Appendix   27

/Password – Specifies the service account password for the server

/RefDomain – specifies the reference domain FQDN. It defaults to "".

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Front-End ServersUse the following syntax example to activate a Front-End Server:

LCSCmd.exe /Server:<Server FQDN> /Role:<SE | EE | Proxy | WorkGroupProxy | AP> /Action:<action name> /Password:<Account Password> [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN> ][/DC:<DC FQDN> ][/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>] [/User:<Account Name>] [/UnRegSPN:[TRUE|FALSE]] [/NoStart:[TRUE|FALSE]] [/ArchServer:<Archiving Service Machine Name>] [/QueueName:<Archiving Queue Name>] [/Force:[TRUE|FALSE]] [/EnableArch:[TRUE|FALSE]] [/EnableCDR:[TRUE|FALSE]] [/L:<log file path>] [/XML:[TRUE|FALSE]] [/?:[TRUE|FALSE]]

such as:

LCSCmd.exe /Server /Action:Activate /Role:SE /NoStart /Password:My$tr0ngPwd /UnRegSPN

Where:

Server – Executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to " "

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Role – Specifies the role of the MCU server

Page 33: OCS CommandLine

28   Office Communications Server 2007 Command-Line Reference Guide

/PoolName – Specifies the name of the pool that MCU is going to serve. For Standard Edition servers, this must be the computer name

/Password – Specifies the service account password for the server

/RefDomain – Specifies the reference domain FQDN. It defaults to "".

/PDCRequired – Specifies whether PDCs are required for the action. It defaults to "TRUE"

/RootDC – Specifies the FQDN of a global settings domain DC. It defaults to ""

/DC – Specifies the FQDN of a domain DC. It defaults to ""

/GC – Specifies the FQDN of a forest GC. It defaults to ""

/Global – Specifies the global setting location. It defaults to ""

/UnRegSPN – Specifies whether to delete all existing service principal names registered for the service on the specified machine

/User – Specifies the service account name for the server. It defaults to RTCComponentService. If the specified user account does not exist, Office Communications Server 2007 automatically creates the account.

/NoStart – Specifies whether to start the LC service on the server during activation. It defaults to "TRUE"

/ArchServer – Specifies the machine name of the IM Archiving Service that the IM Archiving Agent will be using. It defaults to ""

/QueueName – Specifies the name of the queue on the IM Archiving Service that the IM Archiving Agent will be using. It defaults to ""

/Force – Specifies whether to force execution. It defaults to "FALSE"

/EnableArch – Specifies whether to enable archiving. It defaults to "FALSE"

/EnableCDR – Specifies whether to enable CDR. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Proxy ServerUse the following syntax example to activate a Proxy Server:

LCSCmd.exe /Server:<Server FQDN> /Role:Proxy /Action:Activate /Password:My$tr0ngPwd [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>]

such as:

Page 34: OCS CommandLine

Appendix   29

LCSCmd.exe /Server:srvPS.contoso.com /Role:Proxy /Action:Activate /Password:My$tr0ngPwd

Where:

/Server – executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Role – specifies the role of the server

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Password – Specifies the service account password for the server

/RefDomain – specifies the reference domain FQDN. It defaults to "".

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

WorkGroupProxy ServerUse the following syntax example to activate a WorkGroupProxy Server:

LCSCmd.exe /Server:<Server FQDN> /Role:WorkGroupProxy /Action:Activate /Password:My$tr0ngPwd [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>]

such as:

LCSCmd.exe /Server:srvPS.contoso.com /Role:WorkGroupProxy /Action:Activate /Password:My$tr0ngPwd

Page 35: OCS CommandLine

30   Office Communications Server 2007 Command-Line Reference Guide

Where:

/Server – executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Role – specifies the role of the server

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Password – Specifies the service account password for the server

/RefDomain – specifies the reference domain FQDN. It defaults to "".

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

Edge ServersYou can use Office Communications Server 2007 Command Line to install and activate three edge server roles in the perimeter: The Access Edge Server (formerly Access Proxy in Live Communications Server 2005), A/V Conferencing Edge Server, and Web Conferencing Edge Server. You can activate each server role together or you can activate individual server roles on different servers.

Use the following syntax example to install Edge Servers:  

LCSCmd.exe /Server:<Server FQDN> /Action:Activate /Components:<[AP |DP | MR]> /Password: My$tr0ngPwd [/Role:<SE | EE | Proxy | WorkGroupProxy | AP>] [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>] [/User:<Account Name> ] [/NoStart:[TRUE|FALSE]] [/Force:[TRUE|FALSE]][/L:<log file path>] [/XML:[TRUE|FALSE] ][/?:[TRUE|FALSE]]

such as:

Page 36: OCS CommandLine

Appendix   31

LCSCmd.exe /Server /Action:Activate /Role:AP /Components:AP,DP,MR /Password: My$tr0ngPwd

Where:

/Server -- executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Components – Specifies the component roles available on an Office Communications Server 2007, Edge Server components separated by comma.

/Role -- specifies the role of the server

Password -- Specifies the service account password for the server

/RefDomain -- specifies the reference domain FQDN. It defaults to "".

/PDCRequired -- specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC -- specifies the FQDN of a global settings domain DC. It defaults to "".

/DC -- specifies the FQDN of a domain DC. It defaults to "".

/GC -- specifies the FQDN of a forest GC. It defaults to "".

/Global -- specifies the global setting location. It defaults to "".

/GroupDomain -- specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC -- specifies the FQDN of a DC in the domain where LCS Office Communications Server universal groups are located in. It defaults to "". 

/User – Specifies the service account name for the server.  It defaults to RTCProxyService. If the specified user account does not exist, Office Communications Server 2007 automatically creates the account.

/NoStart – Specifies whether to start the LC service on the server during activation.  It defaults to "TRUE".

/Force -- Specifies whether to force task execution. It defaults to "FALSE"

/L -- Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML -- Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? -- Shows help on usage. It defaults to "FALSE"

Page 37: OCS CommandLine

32   Office Communications Server 2007 Command-Line Reference Guide

Other Server Actions

Use the LCSCmd.exe command to perform other server actions such as:

Deactivating Servers

Using Web Component tools for an IM server

Performing server diagnostics

Exporting, Importing and Updating server settings

Deactivating ServersThe Deactivate action deactivates an activated server in its domain. When deactivating a server role ensure it is the same server role for the files that have been installed and activated on the server. The syntax for the Deactivate action is:

LCSCmd.exe /Server:[{FQDN}] /Role:<name> /Action:Deactivate [/Force]

such as:

LCSCmd.exe /Server /Role:SE /Action:Deactivate /Force

Where:

/Server – executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Role – specifies the role of the server

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate, Diag

/Password – Specifies the service account password for the server

/RefDomain – specifies the reference domain FQDN. It defaults to "".

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

NoteActivating the Web Conferencing Edge Server and the A/V Conferencing Edge Server on a single computer without an Access Edge Server is not supported.

Page 38: OCS CommandLine

Appendix   33

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

Using Web Component Actions

The LCSCmd.exe command uses /Web to execute Activate, Deactivate, or CheckLCServerState for a specified Web component machine, such as an instant messaging (IM) server. The following syntax is an example of a /Web instruction:

LCSCmd.exe /Web:<WebComponents Server FQDN> /Action:<action name> /Role:<Meeting, IM, or MeetingIM> /PoolName:<pool name> /Password:<identity password>

such as:

LCSCmd.exe /Web /Action:CheckLCServerState /Role:IM

Where:

NoteThe /RefDomain switch must be used to specify which domain the Active Directory object is located in when deactivating a server if the respective machine is unavailable, such as:

LCSCmd.exe /Server:<FQDN> /Action:Deactivate /Role:SE /Refdomain:<FQDN>

/RefDomain is a hint to LCSCmd.exe to look under Office Communications Server service connection objects for the existing machine’s Active Directory object. LCSCmd.exe will not be able to fully deactivate a server if the machine is not accessible through such events as network cuts, shut-downs, renaming, recycling, and so forth.

Page 39: OCS CommandLine

34   Office Communications Server 2007 Command-Line Reference Guide

/Web – If no FQDN is specified, current machine is used. It defaults to ""

/Action – Takes a string specifying the action name.

/Poolname – Specifies the name of the pool that MCU is going to serve. For Standard Edition servers, this must be the computer name

/Password – Specifies the service account password for the server

/RefDomain – specifies the reference domain FQDN. It defaults to ""

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE"

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to ""

/DC – specifies the FQDN of a domain DC. It defaults to ""

/GC – specifies the FQDN of a forest GC. It defaults to ""

/Global – specifies the global setting location. It defaults to ""

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to ""

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to ""

/Global – Specifies the global setting location. It defaults to ""

/User – Specifies the domain account name for the WebComponents application pool. It defaults to ""

/RTCComponentService/UnRegSPN – Specifies whether to delete all existing service principal names registered for the service on the specified machine. It defaults to "TRUE"

/DisableABOutput – Specifies whether to enable Address Book Server output files. It defaults to "FALSE"

/Guest – Specifies the domain account name for virtual directory guest access. This argument is mandatory for Enterprise Edition pools and ignored for Standard Edition pools. It defaults to RTCGuestAccessUser

/Guestpassword – Specifies the domain guest access account password. This argument is mandatory for Enterprise Edition pools and ignored for Standard Edition pools. It defaults to ""

/Externalwebfqdn – Specifies the FQDN of the external web server. It defaults to ""

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

Using CheckServerStateThe CheckLCServerState action checks a server’s state and role after activation. The syntax for the CheckLCServerState action is:

Page 40: OCS CommandLine

Appendix   35

LCSCmd.exe /Server[:{FQDN}] /Action:CheckLCServerState /Password:My$tr0ngPwd [/RefDomain:<Domain FQDN>] [/PDCRequired:[TRUE|FALSE]] [/RootDC:<DC FQDN>] [/DC:<DC FQDN>] [/GC:<GC FQDN>] [/Global:<Configuration | System>] [/GroupDomain:<Group Domain FQDN>] [/GroupDomainDC:<Group Domain DC FQDN>]

such as:

LCSCmd.exe /Server /Action:CheckLCServerState /Password:My$tr0ngPwd

Where:

/Server – executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to "".

/Role – specifies the role of the server

/Action – Takes a string specifying the action name. Valid action names include CheckLCServerState, Activate, Deactivate

/Password – Specifies the service account password for the server

/RefDomain – specifies the reference domain FQDN. It defaults to "".

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE".

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to "".

/DC – specifies the FQDN of a domain DC. It defaults to "".

/GC – specifies the FQDN of a forest GC. It defaults to "".

/Global – specifies the global setting location. It defaults to "".

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to "".

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to "".

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify "-"as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

Performing Server DiagnosticsThe LCSCmd.exe command provides the Diagnostics action to check the health and status of servers within an Office Communications Server environment.

The syntax to run the Diagnostics action is:

LCSCmd.exe /Server:<Server FQDN>/Role:<SE | EE | Proxy | WorkgroupProxy | AP> /Action:<action name> /DiagnosticLevel:<Specifies a bitmask that selects the diagnostic sub-tasks to run

such as:

LCSCmd.exe /Server /Role:EE /Action:Diag /diagnosticlevel

Where:

Page 41: OCS CommandLine

36   Office Communications Server 2007 Command-Line Reference Guide

/Server – executes the action for the specified server machine. If no FQDN is specified, current machine is used. It defaults to ""

/Role – specifies the role of the server

/Action – Takes a string specifying the action name

/Password – Specifies the service account password for the server

/RefDomain – specifies the reference domain FQDN. It defaults to ""

/PDCRequired – specifies whether PDCs are required for the action. It defaults to "TRUE"

/RootDC – specifies the FQDN of a global settings domain DC. It defaults to ""

/DC – specifies the FQDN of a domain DC. It defaults to ""

/GC – specifies the FQDN of a forest GC. It defaults to ""

/Global – specifies the global setting location. It defaults to ""

/GroupDomain – specifies the FQDN of the domain where Office Communications Server universal groups are located in. It defaults to ""

/GroupDomainDC – specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in. It defaults to ""

/UserUri1 – Specifies the user URI (For instance, [email protected]). Required for logon and IM tests. It defaults to ""

/UserAccount1 – Specifies the sign-in name (For instance, [email protected] or contoso.com\alice). Required for logon and IM tests. It defaults to ""

/UserPassword1 – Specifies the user password. Required for logon and IM tests. It defaults to ""

/UserPool1 – Specifies the target server to use. If not specified, the pool of the local computer will be used. It defaults to ""

/UserUri2 – Specifies the user URI (For instance, [email protected]). Required for logon and IM tests. It defaults to ""

/UserAccount2 – Specifies the sign-in account (For instance, [email protected] or contoso.com\bob). Required for logon and IM tests. It defaults to ""

/UserPassword2 – Specifies the user password. Required for logon and IM tests. It defaults to ""

/UserPool2 – Specifies the target server to use. If not specified, the pool of the local computer will be used. It defaults to ""

/FederatedUserUris – Specifies a list of federated user URIs to probe delimited by semi-colon (for example, [email protected];[email protected]). It defaults to ""

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

Page 42: OCS CommandLine

Appendix   37

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

Exporting, Importing, and Updating SettingsUse the LCSCmd.exe command to export, import, or simply update configuration settings at the global, machine, or pool level. This allows data to be

Stored as a backup

Used for configuration auditing

Exported to, or imported from another Enterprise pool

Before exporting or importing configuration settings, stop the Office Communications Server 2007 services. For more information on how to stop the service, see the Microsoft Office Communications Server 2007 Administration Guide.

Export The Export action sends specific global, pool, and/or machine level settings to a designated directory or folder. The action can be logged as an XML or HTML file and is particularly useful for disaster/data recovery scenarios.

ImportThe Import action retrieves specific global, pool, and/or machine level settings from a designated directory or folder. This procedure is useful to recover lost data, correct an improper configuration, import pre-tested settings into a production environment, roll back a setting to the last working configuration, or to copying settings from one pool to another. This action can be logged as an XML or HTML file.

Update Note This parameter is not available for Office Communications Server 2007 (Public Beta).

The Update action brings specific global, pool, and/or machine level settings in a designated directory or folder up-to-date. The action can be logged as an XML or HTML file.

A syntax example for any of these actions is:

LCSCmd.exe /Config /Action:<Export | Import | Upgrade> /ConfigFile:<configuration file path> /Level:<Global | Pool | Machine> [/Restore] [/L:<log file path>] [/XML:[TRUE|FALSE]] [/Force:[TRUE|FALSE]] [/?:[TRUE|FALSE]]

such as:

LCSCmd.exe /Config /Action:export /Configfile:c:\pool01.XML /Level:pool

where:

NoteYou can only import settings using settings exported from a Office Communications Server 2007 (Public Beta) server. Importing settings from previous versions of Office Communications Server 2007 is not supported.

Page 43: OCS CommandLine

38   Office Communications Server 2007 Command-Line Reference Guide

/Config – Exports or imports global, pool and/or machine level configurations. It defaults to ""

/Action – Takes a string specifying the action name. Valid action names include Export, Import, and Upgrade

/ConfigFile – Specifies the file to which to export configuration

/Level – Specifies the levels of configurations that need to be exported

/Restore– Specifies the import of configuration data.

When used with machine level, the restore process imports WMI classes that contain settings that are specific to the local computer (for example, IP address, ports, and certificates). If the restore parameter is not explicitly specified, the import process does not import these classes. If you are exporting configuration from one computer to another, you can not specify the restore parameter and then manually configure classes that contain machine specific settings. If you are exporting and importing on the settings on a same computer, should specify the /restore switch so that all classes are restored..

When used with the global level: the restore parameter \is used to import WMI classes that contain settings that are specific to the Active Directory topology (for example the location profile and A/V Authentication Service associated with each pool). The restore switch should be used with the global level only when the Standard Edition Servers and Enterprise pools deployed in your topology have not changed since the configuration was exported. If the restore parameter is not specified these topology specific classes and properties must be configured manually using the Office Communications Server 2007 administrative snap-in.

When used with the pool level, this parameter is ignored

/L – Specifies the log file path. If not specified, “<TEMP folder>\<ActionName>_<timestamp>.html” is used. To disable logging specify “-“ as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

/Force – Specifies whether to force task execution. It defaults to "FALSE"

/? – Shows help on usage. It defaults to "FALSE"

Install Databases and Certificates

Installing SQL Server, Express Edition, on an Standard Edition Server

Use the SQLEXPR.exe command from the Office Communications Server installation disc to install the SQL database for an Office Communications Server 2007, Standard Edition Server. Syntax for this action is similar to the following example:

SQLExpr.exe ADDLOCAL=SQL_Engine DISABLENETWORKPROTOCOLS=1 INSTANCENAME=RTC SAPWD=My$tr0ngPa$$w0rd

Page 44: OCS CommandLine

Appendix   39

Installing Certificates

Use the Certificates command to install, upgrade, remove, or add certificate authorities to Communications Server 2007.

The Cert ActionUse the /Cert action to check the status of a certificate, import one or several certificates or list the Certificate Authorities available. The LCSCmd.exe command requires the following syntax when performing a /Cert action:

LCSCmd.exe /Cert:<Certificate Task> /Action:<action name> /requestId:<pending request-id> /ca:<supplies the certification authority> [/caAccount:<Account of the form CADomain\CAUser or CAComputer\CAUser>][/caPassword:<Password for the CA account>] [/L:<log file path>][/XML:[TRUE|FALSE]] [/?:[TRUE|FALSE]]

such as:

LCSCmd.exe \Cert \Action:ListCA

where:

/Cert – Executes the selected certificate task on the current machine. It defaults to ""

/Action – Takes a string specifying the action name. Valid action names include Request CheckStatus, ImportResponse, ImportPFX, ImportCAChain, ExportPFX, ListCA

/requested – Specifies the pending certificate request identifier

/ca – Specifies the certification authority to use for checking the certificate request status

/caAccount – If integrated authentication is not desired, then supplies an account that is recognized by the CA and has privileges to request certificates. This parameter is ignored if CredMan is not available. It defaults to ""

/caPassword – Specifies the password to be used with caAccount. This parameter is ignored if caAccount is not specified. It defaults to ""

/L – Specifies the log file path. If not specified, <TEMPfolder>\<ActionName>_<timestamp>.html is used. To disable logging specify '-' as the log file name. It defaults to ""

/XML – Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE"

NoteThe instance is named RTC and is integral to SE Server’s operation.

Page 45: OCS CommandLine

40   Office Communications Server 2007 Command-Line Reference Guide

/? – Shows help on usage. It defaults to "FALSE"

A successful action will produce a result similar to the example depicted in Figure 1 (except for the different parameters) and the respective log file as depicted in Figure 2.

For more information on pools, such as Importing or Export settings see Exporting and Importing Server or Pool Settings.

Page 46: OCS CommandLine

Appendix   41

Appendix

Delegating Setup, Deployment, and Administration Tasks

In Office Communications Server 2007, you can delegate permissions to perform setup, deployment and administration tasks to users who are not members of an authorized Active Directory group.

To allow users who are not members of authorized Active Directory groups to deploy and activate servers, use the following command-line instruction:

LCSCmd.exe /Domain:<domain fgdn> /Action:CreateDelegation /delegation:SetupAdmin /TrusteeGroup:<GroupName> /TrusteeDomain:<Trustee domain FQDN>[/ComputerOU:<DN of the OU or container where computer objects reside>] /ServiceAccount:<RTC service account name> /ComponentServiceAccount:<RTC component service account name>

For delegating server administration to a group of users, use the following:

LCSCmd.exe /Domain /Action:CreateDelegation /Delegation:ServerAdmin /TrusteeGroup:[Domain group name] /TrusteeDomain:[FQDN of the domain where the TrusteeGroup is located] /ComputerOU:[DN of a computer OU] /UserOU:[DN of a computer OU] /UserType:[User | Contact | InetOrgPerson] /PoolName:[Name of a pool] /ServiceAccount:<RTC service account name> /ComponentServiceAccount:<RTC component service account name>

To delegate user administration, log on to a computer in the domain where you want to grant permissions with an account that has RTCUniversalUserAdmins and Domain Admins or equivalent credentials, and use the following command.

LCSCmd.exe /Domain /Action:CreateDelegation /Delegation:UserAdmin /TrusteeGroup:[Domain group name] /TrusteeDomain:[FQDN of the domain where the TrusteeGroup is located] /ComputerOU:[DN of a computer OU] /UserOU:[DN of a computer OU] /UserType:[User | Contact | InetOrgPerson][/PoolName:Name of a pool or Standard Edition Server] /ServiceAccount:<RTC service account name> /ComponentServiceAccount:<RTC component service account name>

To delegate read-only administration, use the following:

LCSCmd.exe /Domain /Action:CreateDelegation /Delegation:ReadOnlyAdmin/TrusteeGroup:<name of an existing group name> /TrusteeDomain:<FQDN of the domain where the TrusteeGroup is located> [/ComputerOU:<distinguished name of the OU or container containing the computer> [/UserOU:<distinguished name of a user OU>][/UserType:<User | Contact | InetOrgPerson>] [/PoolName:<Name of a pool>] /ServiceAccount:<RTC service account name> /ComponentServiceAccount:<RTC component service account name>

Page 47: OCS CommandLine

42   Office Communications Server 2007 Command-Line Reference Guide

To delegate read-only server administration and use the following command:

LCSCmd.exe /Domain /Action:CreateDelegation /Delegation:ReadOnlyAdmin/TrusteeGroup:<name of an existing group name> /TrusteeDomain:<FQDN of the domain where the TrusteeGroup is located> [/ComputerOU:<distinguished name of the OU or container containing the computer>] /UserType:<User | Contact | InetOrgPerson>>]/PoolName:<Name of a pool> /ServiceAccount:<RTC service account name> /ComponentServiceAccount:<RTC component service account name>

Communications Server 2007 Usage Instructions, Parameters, and Switches

/Forest

Executes the action for the specified forest. If no fully qualified domain name (FQDN) is specified, current forest is used. It defaults to "".

/Domain

Executes the action for the specified domain. If no FQDN is specified, current domain is used, it defaults to "".

/Server

Executes the action for the specified server machine. If no FQDN is specified, current machine is used, it defaults to "".

/Role

Specifies the role of the server.

/Archiving

Executes the action for the specified archiving server machine. If no FQDN is specified, current machine is used, it defaults to "".

/MCU

Executes the action for the specified MCU server machine. If no FQDN is specified, current machine is used, it defaults to "".

/Cert

Executes the selected certificate task on the current machine, it defaults to "".

/Web

Page 48: OCS CommandLine

Appendix   43

Executes the action for the specified WebComponents machine. If no FQDN is specified, current machine is used, it defaults to "".

/Config

Exports or imports global, pool and/or machine level configurations, it defaults to "".

/Level

Specifies the levels of configurations that need to be exported

/Restore

Specifies the import of configuration data.

When used with machine level, the restore process imports WMI classes that contain settings that are specific to the local computer (for example, IP address, ports, and certificates). If the restore parameter is not explicitly specified, the import process does not import these classes. If you are exporting configuration from one computer to another, you can not specify the restore parameter and then manually configure classes that contain machine specific settings. If you are exporting and importing on the settings on a same computer, should specify the /restore switch so that all classes are restored..

When used with the global level: the restore parameter \is used to import WMI classes that contain settings that are specific to the Active Directory topology (for example the location profile and A/V Authentication Service associated with each pools). The restore switch should be used with the global level only when the Standard Edition Servers and Enterprise pools deployed in your topology have not changed since the configuration was exported. If the restore parameter is not specified these topology specific classes and properties must be configured.

When used with the pool level is pool, this parameter is ignored.

/ConfigFile

Specifies the file to which to export configuration.

/Action

Takes a string specifying the action name. Valid action names include: CheckSchema, PrepStat, SchemaPrep, CheckForestPrepState, ForestPrep, ForestUnprep, CheckAllDomains, Activate/Deactivate, Diag, CheckLCServerState, PrepStat, CreatePool, RemovePool, CheckPoolState, CheckAllPoolsState, UpdatePoolBackend, and Export/Import.

/PoolName

Specifies the pool name.

/PoolBE

Page 49: OCS CommandLine

44   Office Communications Server 2007 Command-Line Reference Guide

Specifies the backend Microsoft SQL Server™ instance that will be used by the pool.

/RefDomain

Specifies the reference domain FQDN.

/DBDataPath

Specifies the folder where the database data file will be located.

/DBLogPath

Specifies the folder where DB log file is located.

/DynDataPath

Specifies the folder where dynamic database data log file should be located.

/DynLogPath

Specifies the folder where dynamic database log file should be located.

/MeetingContentPath

Specifies the UNC path where meeting presentation content should be located.

/MeetingMetaPath

Specifies the UNC path where meeting Meta data should be located.

/PDCRequired

Specifies whether PDCs are required for the action, it defaults to "TRUE".

/DC

Specifies the FQDN of a domain DC, it defaults to "".

/RootDC

Specifies the FQDN of a global settings domain DC, it defaults to "".

/GC

Specifies the FQDN of a forest GC, it defaults to "".

/Global

Page 50: OCS CommandLine

Appendix   45

Specifies the global setting location, it defaults to "".

/User

Specifies the service account name for the server. If the specified user account does not exist, Office Communications Server 2007 automatically creates the account.

/GroupDomain

Specifies the FQDN of the domain where Office Communications Server universal groups are located in, it defaults to "".

/GroupDomainDC

Specifies the FQDN of a DC in the domain where Office Communications Server universal groups are located in, it defaults to "".

/UserUri1 – Specifies the user URI (For instance, [email protected]). Required for logon and IM tests. It defaults to ""

/UserAccount1 – Specifies the sign-in name (For instance, [email protected] or contoso.com\alice). Required for logon and IM tests. It defaults to ""

/UserPassword1 – Specifies the user password. Required for logon and IM tests. It defaults to ""

/UserPool1 – Specifies the target server to use. If not specified, the pool of the local computer will be used. It defaults to ""

/UserUri2 – Specifies the user URI (For instance, [email protected]). Required for logon and IM tests. It defaults to ""

/UserAccount2 – Specifies the sign-in account (For instance, [email protected] or contoso.com\bob). Required for logon and IM tests. It defaults to ""

/UserPassword2 – Specifies the user password. Required for logon and IM tests. It defaults to ""

/UserPool2 – Specifies the target server to use. If not specified, the pool of the local computer will be used. It defaults to ""

Page 51: OCS CommandLine

46   Office Communications Server 2007 Command-Line Reference Guide

/FederatedUserUris – Specifies a list of federated user URIs to probe delimited by semicolon (for example, [email protected];[email protected]). It defaults to ""

/Clean

Specifies whether to do a clean setup for pool backend creation actions. It defaults to "FALSE".

/EnableArch

Specifies whether archiving is enabled or not for the pool. It defaults to "FALSE".

/EnableCDR

Specifies whether to enable CDR. It defaults to "FALSE".

/PoolFQDN

Specifies DNS host name of the pool, it defaults to "".

/InternalWebFQDN

Specifies the FQDN of the internal web server, it defaults

to "".

/ExternalWebFQDN

Specifies the FQDN of the external web server, it defaults

to "".

/ABOutputlocation

Specifies the folder where the Address Book server will write it files, it defaults to "".

/MeetingArchivingPath

Specifies the UNC path where meeting presentation content archiving should be located, it defaults to "".

/Force

Specifies whether to force task execution, it defaults to "FALSE".

/L

Specifies the log file path. If not specified, <TEMP folder>\<ActionName>_<timestamp>.html' is used. To disable logging specify '-' as the log file name, it defaults to "".

Page 52: OCS CommandLine

Appendix   47

/XML

Specifies whether the log file to be generated should be in XML format instead of HTML. It defaults to "FALSE".

/?

Shows help on usage, it defaults to "FALSE".