自动完全更新Windows

我正在做一个项目,目标是能够100%更新Windows电脑。 这意味着一个程序或脚本自动更新窗口,根本没有用户交互。 理想情况下,可以从另一个脚本运行的独立脚本。

原因是:我需要更新我工作中的很多电脑。 他们可以在任何补丁级别和从Windows XP到Windows 8的所有内容。我的目标是启动脚本,等待/执行其他操作,然后find完全打补丁的计算机。

我通过在MDT 任务序列中findZTIWindowsUpdate.wsf解决了很多问题。

这可以像这样从一个pipe理员cmd使用:

cssript.exe ZTIWindowsUpdate.wsf 

我的问题到目前为止,计算机需要重新启动之间的一些更新。 可能是因为依赖关系。 ZTIWindowsUpdate.wsf需要以pipe理员身份运行,我似乎无法find一个解决scheme,以pipe理员身份在启动时启动它。 另外,如果我得到脚本启动时运行,我该如何阻止它,我怎么知道什么时候停止它?

有人可以帮助医疗解决这个问题的万无一失吗?

谢谢!

要描述的问题的最简单的解决方案是让您的脚本为内置的管理员帐户配置自动登录,然后将其本身添加到启动文件夹。 您需要知道(或重置)管理员帐户密码才能使用此选项。

还有很多其他的可能性,例如:使用启动脚本和psexec; 使用srvany来创建一个运行脚本的服务; 使用任务计划程序来安排脚本以交互方式或非交互方式自动运行; 禁用WUA,为您正在使用的帐户配置自动登录,并将您的脚本添加到启动文件夹。

请注意,如果您可以设置WSUS服务器,或者(如果您还没有Windows服务器,则更简单,更便宜),则可以节省时间和带宽。 但是,这不会避免在更新序列期间需要重新启动。

您可能会发现我的脚本作为ZTIWindowsUpdate.wsf的替代出发点,如果仅仅是因为它更小,更易于理解,也是有用的。

不需要全面更新Windows操作系统,大多数更新不需要,大多数更新与安全性没有关系,我们可以在没有它们的情况下生存,您需要阅读每个更新的描述以了解所做的更改。 完全更新Windows可能是几种情况下的性能不利因素。

所有你需要的是下载你想要的更新,然后用这个批处理脚本将它存储在一个文件夹中:

 @Echo off For %%# in (*.msu) Do ( Echo: Installing update: %%# Wusa "%%#" /quiet /norestart ) Echo Windows Update finished. Pause&Exit 

你也可以压缩文件夹(更新+脚本)到一个自我可执行文件与WinRAR分发它作为一个独立的文件。

信息:

Wusa.exeWindows Update命令行应用程序。

这些文件是一个接一个处理的,而不是一次处理完毕。

安静的开关使安装无声。

安装更新后,即使需要, norestart开关也不会重新启动。

如果在操作系统中安装了更新,则不会再次安装,也不会出现错误窗口或停止执行脚本。

PS:见Wusa /? 为更多的开关。

我希望这有帮助。

更新:

另一种方法是使用WSUS实用程序下载并安装所有更新。

http://download.wsusoffline.net/

Win7 x64(例如)的更新存储在这里:“… \ wsusoffline \ client \ w61-x64 \ glb”

PS:应用程序的“CMD”目录中的“DoUpdate.cmd”批处理文件是您需要的,如果需要在“后台”中自动执行任务。

在这里输入图像说明

WindowsUpadate过程耗时的事情是下载更新的Setupfiles。 你应该看看网络安装的WUS(Window Update server)中的lokaly,并确保电脑从WUS更新。 如果电脑都在ActiveDirectory域中,那么所需的设置非常容易管理。 但是,如果没有这个设置可以使一个简单的批处理脚本使用正常的Windows更新例程。

另一个解决方案是使用silent-switch安装预先载入的updateFiles的批处理脚本。 Allmoast每个setup.exe都有这样一个无声的开关。 如果不需要更新,则更新会自动停止此上传。 现在我正在使用这样一个批处理脚本。

PS:如果计算机是来自你的公司,那么你应该“感谢”你的前任在未来的许多工作。

PPS:顺便说一下,XP和Vista应该被淘汰。 他们现在已经很老了,对于XP来说,已经延长的支持时间将在明年被微软所取代,只有在Windows 7不是任何可能的解决方案的情况下才真正需要使用。

跑步

 cssript.exe ZTIWindowsUpdate.wsf 

以管理员身份重新启动后,您可以使用适当的权限在任务计划程序中创建一个任务,并在启动时运行。 =]

一个自动的方式是, WuInstall 。 我现在使用它一年,这是完美的,它实际上做它应该的。 这是一个自动搜索,下载和安装更新的命令行工具。 有几个“开关”可以让你自定义过程。 例如,由于使用了rebootcycle-switch,所以更新新设置的电脑就可以轻松完成了。

以下是另一种方式—— 执行以下操作需要您自担风险 :要自动执行Windows Update,这些说明可能对您的系统起作用,也可能不起作用,但是这些指示信息在Windows 7上进行了测试,似乎对Windows 7有效。

必须阅读:1.如果下面的步骤不起作用,那么你很可能是域的一部分,你的安全策略可能不允许你执行下面的步骤! 2.在Windows更新期间,UAC提示也被禁用,因此批处理文件可以不中断地运行; 完成后请小心将其恢复为默认值

注意这一步将使您的计算机不太安全,在您的计算机完全更新后立即将其删除。 如果需要,24小时后设置提醒

1.首先,您必须确保您的电脑自动登录到用户。 你可以通过点击开始菜单,输入“netplwiz”,按回车或打开向导,在用户选项卡下,选择你的用户名,并取消选中“需要密码”,输入你的密码,关闭这个窗口。

2.创建3个批处理文件来启动自动化过程。 (打开记事本粘贴每个代码到一个单独的记事本,并执行保存为对应的文件名.bat)

一。 另存为:any_name.bat,然后将该批处理文件复制到自动登录的用户的启动文件夹中。 (点击开始>所有程序>启动)

 start "" c:\autoupdate1.bat exit 

二。 另存为:autoupdate1.bat然后将其复制到C:\驱动器

 wuauclt /detectnow wuauclt /updatenow reg query "HKLM\Software\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired" > nul && shutdown -r -t 0 start "" c:\autoupdate2.bat exit 

三。 另存为:autoupdate2.bat然后将其复制到C:\驱动器

 ping 127.0.0.1 -n 61 > nul start "" c:\autoupdate1.bat exit 

重新启动或打开启动文件夹中的批处理文件,并观看魔术开始!

3.完成更新后,只需从启动文件夹&c:\ drive中删除批处理文件即可

如果您不知道如何通过从启动文件夹中删除该进程来停止该进程,或者在安全模式下删除该批处理文件,则可以创建一个无限循环来再次按照这些说明进行操作

最后说明:如果遇到运行批处理文件的问题,可能需要查看如何禁用Windows版本的UAC提示