How do I automatically upgrade a server to a domain controller during installation?

A. You can automatically run DCPROMO during an unattended installation. Enter the command

dcpromo /answer:%path_to_answer_file%

In my example, the DCInstall section and parameters are added directly to the unattended answer file. The Microsoft Windows 2000 Resource Kit details the DCInstall section’s parameters in the file Unattend.doc. I’ve listed the main entries in the following table.

AdministratorPassword The new password for the domain Administrator account
AutoConfigDNS Specifies whether the wizard should configure DNS
ChildName Name of the child part of the domain
CreateOrJoin Specifies whether the domain will join an existing forest or create a new one
DatabasePath Location for the Active Directory database
DNSOnNetwork Used when a new forest of domains is installed and no DNS client is configured on the computer
DomainNetBiosName NetBIOS name for the domain
IsLastDCInDomain Only valid when demoting an existing domain controller to a member server
LogPath Path for the Directory Service (DS) logs
NewDomainDNSName Name of the new tree or when a new forest is created
ParentDomainDNSName Specifies the name of the parent domain
Password Password for the username used to promote the server
RebootOnSuccess Specifies whether an automatic reboot should be performed
ReplicaDomainDNSName Name of the domain to be replicated from
ReplicaOrMember Specifies whether a Windows NT 4.0 or 3.51 BDC being upgraded should become a replica domain controller or be demoted to a regular member server
ReplicaOrNewDomain Specifies whether the machine is a new domain controller in a new domain or a replica of an existing domain
SiteName Name of the site (Default-First-Site by default)
SysVolPath Path of SYSVOL
TreeOrChild Specifies whether entry is a new tree or child of existing domain
UserDomain Domain for the user being used in promotion
UserName Name of the user performing the upgrade

Because the DCPROMO process occurs after setup, the created answer file is called $winnt$.inf and copies to the \system32 folder. The parameters are in this file, so you need to add the following text to the GUIRunOnce section of the unattended Setup answer file.

\[GUIRunOnce\] "DCpromo /answer:%systemroot%\system32\$winnt$.inf"

After the DCPROMO process completes, DCPROMO removes password information from the $winnt$.inf file. To make this process easier because the RunOnce command doesn’t execute until someone logs on to the computer, you can add the following text to the unattended answer file.

Autologon = yes ; automatically logs on the administrator account<br>
AutoLogoncount = n ; number of times to perform auto-admin logon

Don't use items such as %systemroot% or %windir%, because the unattended installation process doesn’t understand them.

You can just create a DCInstall section directly in your unattend.txt file to avoid having multiple unattended setup files. Enter text such as the following.

AdministratorPassword = cartman<br>
CreateOrJoin = Create<br>
DomainNetBiosName = savtech<br>
NewDomainDNSName =<br>
RebootOnSuccess = Yes<br>
ReplicaOrNewDomain = Domain<br>
SiteName = "London"<br>
TreeOrChild = Tree

My example script would create a new forest with the domain at the top and the new domain controller in the site London. The SYSVOL, logs, and Active Directory (AD) files would be in the default locations. The new domain Administrator account password would be cartman.

If you want to use DCPROMO outside an unattended installation, enter

dcpromo /answer:&lt;DCInstall answer filename&gt;

You’ll see a dialog box that says DCPROMO is running in unattended mode. Then, the machine will reboot.

Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.