【问题标题】:adding a domain controller by powershell script通过 powershell 脚本添加域控制器
【发布时间】:2016-09-30 19:32:09
【问题描述】:

这是我的代码

# Create New  Domain Controller 
Import-Module ADDSDeployment
Install-ADDSDomainController -InstallDns -Credential (Get-Credential BPLTest.lab\Administrator) -DomainName "BPLtest.lab"
  -NoGlobalCatalog:$false 
  -InstallDns:$True 
  -CreateDnsDelegation:$false 
  -CriticalReplicationOnly:$false 
  -DatabasePath "C:\NTDS" 
  -LogPath "C:\NTDS" 
  -SysvolPath "C:\SYSVOL" 
  -NoRebootOnCompletion:$false 
  -SiteName "Default-First-Site-Name" 
  -Force:$true

现在这段代码应该将域控制器安装到我实验室的 BPLTest.lab 域中。我已经运行了广告先决条件,并在另一个先前的脚本中添加了用于 AD 的 RSAT 工具。他们完美地工作。然而,这个脚本将安装域控制器,但我无法让它调整诸如 SysvolPath、DatabasePath 和 logpath 之类的东西。它一直告诉我它无法识别这些 cmdlet。 任何想法我做错了什么

【问题讨论】:

    标签: powershell


    【解决方案1】:

    PowerShell 将假定 Install-ADDSDomainController 行是完整的,并且不会在下一行中查找更多参数。

    你需要 tell it there is more to the command 以反引号结束一行:

    #Create New  Domain Controller 
    Import-Module ADDSDeployment
    Install-ADDSDomainController -InstallDns -Credential (Get-Credential BPLTest.lab\Administrator) -DomainName "BPLtest.lab" `
      -NoGlobalCatalog:$false `
      -InstallDns:$True `
      -CreateDnsDelegation:$false `
      -CriticalReplicationOnly:$false `
      -DatabasePath "C:\NTDS" `
      -LogPath "C:\NTDS" `
      -SysvolPath "C:\SYSVOL" `
      -NoRebootOnCompletion:$false `
      -SiteName "Default-First-Site-Name" `
      -Force:$true
    

    或者首先将变量放入参数字典中,然后将它们“喷”到 cmdlet 中,如下所述:https://stackoverflow.com/a/24313253/478656

    【讨论】:

    • 感谢它现在工作,您注意到我有两次 -InstallDNS,所以我只需要删除一个。它现在工作
    猜你喜欢
    • 1970-01-01
    • 2014-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多