每当我们通过 PXE 和 WDS 部署一台新机器时,我都必须通过远程桌面登录到我们的 Sever 2008 R2 WDS 服务器来批准该机器。
这很烦人,我们都知道,应该尽可能避免登录服务器。
但是,我所有的 google 搜索都失败了,我找不到任何关于从远程计算机管理 WDS 的 MMC 控制台的参考资料。它也不存在于 RSAT 模块中。
那么,这样的事情存在吗?我不喜欢它,但如果需要的话,我会从原始服务器中提取运行控制台所需的文件(类似这样的,但除非万不得已,否则我不想这样做。这很难维护,记录起来也很麻烦。
我们的客户端机器都是 Windows 7 SP1
答案1
据我所知,您无法(正式)在非 WDS 服务器上安装管理单元(很糟糕,对吧?)。您可以随时预先设置计算机帐户,这样就不必批准它们。
如果你想要这样做,那么有一个非常棒的 PowerShell 脚本,由我编写,对吧?这里。 :)
# V3.0
# Changes:
# No longer relies on Quest AD Snap in
# No longer uses the kludgey Test-XADObject to validate the existence of computers in AD
import-module activedirectory
import-csv "list.csv" | foreach-object{ #imports CSV containing Name and MAC headings
$name = $_.Name
$MAC = $_.Mac
$CheckExists = get-adobject -Filter {(ObjectClass -eq "computer") -and (Name -eq $name)} #Will be $NULL if this is a new computer
if ($CheckExists -eq $NULL){
[guid]$nbGUID = "00000000-0000-0000-0000-$MAC" #casts 0s + MAC into a GUID, which is required for the netbootGUID property
new-adcomputer -Name $name -SamAccountName $name -OtherAttributes @{'netbootGUID'=$nbGUID}
write-host $name " - " $nbGUID
}
else {
write-host "$name already exists."
}
}
答案2
手动批准是让计算机正确命名的最佳方式,无需进行预配置(如果系统并非全部都在机箱上写有 GUID 或 MAC,则预配置并不总是可能/可行的)。遗憾的是,当您选择要安装的映像时,没有办法让它提示输入机器名称。
您可以使用 psexec 和可选的小型 cmd 脚本来从您的客户端系统批准新计算机:
从以下位置下载 psexechttp://technet.microsoft.com/en-us/sysinternals/bb897553
将其保存为approve.cmd:
@echo off
REM Approve WDS pending computers
set wdshost=my-wds-server
set /p requestid="Request ID: "
set /p machinename="Machine Name: "
psexec -i -s \\%wdshost% wdsutil /Approve-AutoAddDevices /RequestID:%requestid% /MachineName:%machinename%
将 my-wds-server 替换为您的 WDS 服务器的名称。运行 approved.cmd 时,系统会提示您输入请求 ID(显示在待处理计算机的屏幕上)和要为其指定的机器名称。
根据您的环境,您可能需要将“-u 管理员”添加到 psexec 命令以使其以管理员身份运行并提示输入密码。wdsutil 需要“-i”和“-s”参数。如果没有这些参数,它会返回错误。
答案3
我知道这已经很晚了,但是对于任何其他正在寻找如何在工作站上安装不受支持但功能齐全的 WDS 管理控制台的人来说,您可以查看这里: 安装 Windows 部署服务控制台
如果他提供的 PowerShell 脚本对您不起作用,您可以按照脚本操作描述中的步骤 1-4 手动进行操作。