我刚刚开始学习使用组策略来管理我的网络。我发现了映射驱动器这个方便的功能,但是如果不更新,它在 xp 上就无法使用。我下载了该文件,但是有没有办法让它在登录到尚未安装它的每个人的机器时安装呢?
答案1
听起来你是说你想用组策略首选项(GPP)。您发现您的 Windows XP 客户端会忽略没有适用于 Windows XP 的组策略首选项客户端扩展 (KB943729)更新已加载。
您可以通过其他方式“映射” “驱动器”,但 GPP 相当不错,因此将更新加载到客户端可能是一件好事。
假设您的用户没有“管理员”权限(他们实际上不应该有,如果他们有,那您就做错了),登录脚本对您没有帮助。这是计算机启动脚本之类的东西的工作。
在所有机器上安装此更新的最简单方法是将更新粘贴到服务器计算机的中央位置,并为安装更新的所有客户端分配计算机启动脚本。您可以使用以下方式执行此操作:
以下是一个快速而简单的演练:
下载“Windows-en-US-KB943729.exe”更新并将其放入 \domain-controller-name\netlogon 文件夹中。
创建一个新的组策略对象,链接到客户端计算机上方的 OU。如果它们位于目录根目录下的默认“计算机”容器中,则在目录根目录下创建这个新的 GPO。将 GPO 命名为“将 KB943729 更新安装到 Windows XP 客户端”(6 个月后您会记得的名称)。
在新的 GPO 中,转到“计算机配置”、“Windows 设置”和“脚本”。进入“启动脚本”对话框。
单击“启动脚本”对话框中的“显示文件...”按钮。在那里创建一个新的文本文件,并将其重命名为“Install_KB943729.cmd”之类的名称(确保它丢失了“.TXT”扩展名)。右键单击并在记事本中“编辑”该文件。
将这些步骤下面的脚本粘贴到该文件中并保存。务必修改脚本的“SET DC_NAME=”行,以在“=”后指示域控制器计算机的名称(名称前没有“\”等)。
返回“启动脚本”对话框(关闭“显示文件...”打开的文件夹),然后单击“添加...”。单击“浏览...”并选择您创建的“Install_KB943729.cmd”。(再次验证“.txt”扩展名是否也已更改。)
关闭“启动脚本”对话框。进入“计算机配置”下的“管理模板”。深入到“系统”和“脚本”。在右侧窗格中找到“运行可见的启动脚本”策略设置,并将设置设置为“已启用”。这将让您在客户端启动期间看到脚本在窗口中运行。一旦您知道脚本正在运行,您就可以关闭此设置。
重新启动客户端并查看启动期间运行的脚本。假设您的所有 DNS 设置都正确无误,客户端将应用您创建的 GPO 并运行脚本。
当所有客户端都更新后,删除“Netlogon”文件夹中的 GPO 和 .EXE,取消链接 GPO 并保留它以备将来需要。(在每次启动时在每台计算机上不必要地运行启动脚本会增加启动的轻微延迟。有一些方法可以通过组成员身份使此过程更优雅并且只执行一次,但我在这里选择快速而粗略的方法。)
要粘贴的脚本:
@echo off
SET DC_NAME=domain-controller-computer-name-here
rem Check to see this is Windows XP
ver | find "Windows XP" >NUL
if errorlevel 1 goto end
rem Check to see if the update is already installed
reg QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Updates\Windows XP\SP20\KB943729" >NUL 2>NUL
if errorlevel 1 goto install_update
goto end
:install_update
\\%DC_NAME%\netlogon\Windows-en-US-KB943729.exe /passive /norestart
:end
如果你安装Windows 服务器更新服务并以此方式推送更新,因为这也将使您将来能够集中部署 Windows/Microsoft 应用程序软件更新,但这是一个更大的麻烦。不过,请看一下。您希望使用 WSUS。
我很高兴看到您正在研究使用组策略。许多 Windows 管理员对此一无所知。我曾在一些非常大的公司(其中一家是财富 1000 强公司)工作过,这些公司根本没有使用组策略(至少在 2008 年)。如果您还不熟悉策略应用顺序的工作原理,那么如何做按安全组过滤或者WMI 筛选器WMI Filters,你应该做一些阅读和试练,因为你会喜欢这些功能并发现它们很方便。(要获得加分,请了解环回组策略处理以增加乐趣和功能。