自动部署Windows Server 2003和2008无人参与

目前我们正在使用PXE引导程序来自动安装和重新安装专用服务器。 这对所有基于Linux的系统(如Debian,CentOS,VMware和Ubuntu)以及kickstart / preseed都非常有用。

但是,对于Windows来说,这似乎是不可能的。 你需要在Active Directory中使用WDS / MDT,而且我不希望为此改变整个部署系统。

所以我们正在寻找WDS / MDT的替代品,这使得我们能够以自动的方式部署自定义的Windows Server 2003/2008服务器,如IP地址/密码/许可证密钥在一个单独的文件,所以我们不必创build一个每个服务器的图像

我们有一个基于Linux的部署系统,完全集成到我们的后端/控制面板等。因此,我正在寻找一个可以在Linux上运行的部署解决scheme。

我find的指南build议使用PXE启动WinPE,然后使用Windows Server的EXE安装程序。 这是build议的方式去还是有更好的方法来实现它?

概观

您可以使用pxelinux或任何其他PXE引导技术分发WinPE映像。 这将让你一个脚本的命令提示符能够启动无人参与的安装。

您可以使用WAIK创build在安装过程中调用的unattend.xml文件,您可以创build自己的构build脚本,以满足您的需求。 无人参与文件可以在安装后阶段调用批处理或PowerShell脚本以及任何其他应用程序进行自定义。

我强烈怀疑有什么商业产品可以做到这一点。 如果你想有一个与Linux相集成的Windows映像环境,你将不得不自己手动滚动很多。 好的是,工具(WAIK,DISM,WinPE等)都是免费的。


devise基础

您需要使用您要部署的Windows操作系统安装文件的副本来创buildSMB共享。 您可以用DISM修改这些文件(包含补丁,Windows模块等)。

一旦你有了,你将需要通过你使用的任何PXE解决scheme来部署WinPE。 您可以在WinPE中编辑startnet.cmd以包含所需的任何自定义命令。 这个cmd文件在WinPE加载时执行。 这将允许您自动安装。 至less,您将映射SMB共享与源文件

net use \\server\share

并打电话

\\server\share\setup /unattend:\\server\share\unattend.xml

这将运行无人参与模式下的设置,假设您已经正确configuration了无人参与文件。 在technet上有很多这样的例子。

在无人参与文件的OOBE阶段,您可以configuration自动login并调用您所需的任何生成脚本。 Slmgr.vbs可以更改产品密钥并激活,您可以调用netsh来设置IP信息,并且可以直接在unattend.xml中指定创build本地用户和组。

这给你一个完全可定制的安装环境,可以从任何TFTP服务器PXE启动。 如果你以前从来没有做过这样的尝试和错误,那绝对是可以做到的。

我在这种情况下所做的是构build一个主映像,该映像在新映像的计算机首先引导时将脚本设置为运行。 该脚本足够聪明,可通过DHCP获取临时IP,然后联系configuration服务器,在该服务器上抓取另一个脚本运行。 这第二个脚本可以执行诸如激活窗口,configurationnetworking等

这样做的好处在于,不需要为了让自动安装正常工作而烦恼。 我们通过Clonezilla推出了图像,图像已经安装了我们所有的应用软件(这几乎不可能自动完成)。