介绍

Windows Server 2008 R2提供的WDS(Windows Deploy Service)很方便的帮助企业用户去部署windows 操作系统,而且可以和 MDT(Microsoft Deployment Toolkit)去结合使用,MDT对网络部署windows操作系统进行了很大的扩展,几乎可以做到ZTI(Zero Touch Installation),但是如果企业内部署Linux,还要另外部署基于Linux的PXE网络部署,要维护两套系统是不是很烦人 。WDS提供了和syslinux的相结合的接口,利用syslinux可以部署非windows的系统,这样是不是就很方便了,O(∩_∩)O~

环境拓扑:

image

PS:这里的拓扑是在一个子网内,如果你的客户端和dhcp、wds不在一个子网内,那么还需要在交换机里配置ip-helper,用于将dhcp报文同时直接传送给dhcp和wds,或者是配置dhcp的66和67选项。

安装 Windows Deploy Service(WDS)

在服务器管理器的角色里选择安装Windows部署服务

 

image

安装完毕后,打开wds管理控制台,进行配置wds

image

安装路径选择非系统盘

image

 

 

 

Pxe选择响应所有客户端

image

配置完毕后,wds就处于激活状态了,打开wds属性

image

 

在启动选项卡里,你可以选择按F12键进行网络启动,或者是不需要提示直接PXE启动,或者直接PXE启动,除非按ESC取消启动。

image

WDSSyslinux相结合

把syslinux与wds结合,还需要下载SysLinux组件

下载syslinux:http://www.kernel.org/pub/linux/utils/boot/syslinux

这个使用syslinux4.04做演示

wds和syslinux结合

提取syslinux中:

core\pxelinux.0

com32\menu\vesamenu.c32

com32\menu\menu.c32

com32\modules\chain.c32

memdisk\memdisk

将以上的文件拷贝到 WDS的远程文件夹(刚才配置wds时放在非系统盘的文件夹)下地boot中的x86和x64文件夹下。

更改x86和x64中的pxelinux.0的文件名为pxelinux.com

更改x86和x64中的pxeboot.n12的名称为pxeboot.0

更改x86和x64中的abortpxe.com的名称为abortpxe.0

在x86和x64文件夹下创建名为pxelinux.cfg的文件夹,并在此文件夹下创建名为default的配置文件

default的配置格式如下:

DEFAULT vesamenu.c32

PROMPT        0

MENU BACKGROUND wds.jpg

MENU INCLUDE pxelinux.cfg/graphics.conf

MENU AUTOBOOT Starting Local System in # seconds

TIMEOUT 180

LABEL Abort

MENU LABEL ^0----Abort PXE

Kernel       abortpxe.0

LABEL hdd

MENU DEFAULT

MENU LABEL ^1----BOOT FROM HARDDISK

loaclboot 0x80

LABEL WINDOWS MENU

MENU LABEL ^2----WINDOWS INSTALLATION

KERNEL pxeboot.0

LABEL LINUX MENU

MENU LABEL ^3----LINUX INSTALLATION

KERNEL vesamenu.c32

APPEND pxelinux.cfg/graphics.confpxelinux.cfg/linux.menu

LABEL VMWARE MENU

MENU LABEL ^4----VMWARE INSTALLATION

KERNEL vesamenu.c32

APPEND pxelinux.cfg/graphics.confpxelinux.cfg/vmware.menu

以上是default的配置

其中wds.jpg是背景图,大小为 640*480,以下是pxelinux.cfg中graphics.conf的配置,graphics.conf定义的时菜单颜色:

MENU COLOR sel 7;37;44 #ff0030a5 #ff94c3f7 none
MENU COLOR unsel 34;47 #ff0030a5 #ffffffff none
MENU COLOR border 37;47 #ffd3d6e7 #ffd3d6e7 none
MENU COLOR title 37;47 #ff0030a5 #ffd3d6e7 none
MENU COLOR timeout 1;37;44 #ffffffff #00000000 none
MENU TABMSG
MENU AUTOBOOT #
MENU WIDTH 50
MENU MARGIN 1
MENU ROWS 10
MENU TABMSGROW 23
MENU CMDLINEROW 23
MENU ENDROW 24
MENU TIMEOUTROW 16
MENU HSHIFT 16
MENU VSHIFT 8
ONTIMEOUT hdd
ALLOWOPTIONS 1

前期的配置就好了,接下来我们需要做的就是将wds与syslinux相结合

在wds服务器中,以管理员身份打开cmd:

使用wdsutil命令,更改如下配置:

image

ok,重启一下wds服务,然后设置客户端从网络启动试一下吧

image

syslinux与wds结合就完成了,接下来需要在wds上安装MDT 2010

安装配置MDT2010

在安装MDT2010之前,需要先安装Windows AIK工具包,然后在安装MDT2010

下载AIK工具包:http://www.microsoft.com/download/en/details.aspx?id=5188

下载MDT 2010 update1:http://www.microsoft.com/download/en/details.aspx?id=25175

安装步骤省略。。。

配置MDT 2010

打开mdt控制台,创建部署共享

image

创建部署共享

image

部署共享目录建议放在非系统盘

image

 

部署共享里的内容:

Applications:存放要安装应用程序的目录

operation systems:存放windows 操作系统镜像的目录

Out-of-Box Dreivers:存放硬件驱动的目录

Packages:存放补丁包的目录

Task Sequences:存放任务序列的目录

Advanced Configuration:这里面的配置是需要与sql server结合使用,以实现一些高级应用(进阶)

image

导入windows操作系统镜像

image

 

导入镜像的三种方式:从光盘导入(ISO文件)、从自定义的WIM文件导入、从WDS存在的镜像导入

在这里使用ISO导入

image

指定光驱的位置

image

 

接下来的步骤保持默认即可完成镜像的导入

完成导入镜像

image

创建任务序列:

image

填写任务序列号及名称

image

 

 

选择对应的系统镜像:

image

往下的步骤保持默认即可完成任务序列的创建

配置MDT部署共享的属性

image

勾选Windows PE X86 和 X64 Components选项卡的语言选项,防止在应用WinPE是出现乱码

image

 

 

配置rule:

rule可以实现一些自动化的过程,如果感觉在应用WinPE有些步骤不需要,可以再这儿进行默认设置来不显示这些不必要的过程。

image

[Default]

OSInstall=Y 
SkipAppsOnUpgrade=YES 
SkipSummary=YES(忽略部署环境中最后的摘要)
SkipCapture=YES 
SkipAdminPassword=YES 
SkipProductKey=YES(忽略产品密钥的输入)
SkipLocaleSelection=YES 
SkipDomainMembership=YES(忽略加入域的步骤,即默认为工作组)
KeyboardLocale=0804:00000409(指定键盘区域为中文简体)
InputLocale=0804:00000409(指定输入法为中文简体)
UserLocale=0804:00000409(指定用户默认语言为中文简体)
SkipTimeZone=YES(忽略时区设置)
TimeZone=210(指定时区代码)
TimeZoneName=China Standard Time(指定时区的名称)
DoCapture=NO (指定是否跳过捕获提示,我一般留着)
SkipUserData=YES 
UserDataLocation=NONE 
SkipFinalSummary=YES(忽略部署的最后结果摘要,可根据需要选择,如果之前已经进行过完整的测试,那么可以忽略该摘要。)
SkipComputerName=YES(忽略计算机名)

配置全局的配置文件:

跳过欢迎界面,MDT的计算机名字改为ip地址:

image

 

在做完这些操作后,要去更新部署共享,以使配置生效。

image

更新过程,第一次时间会很长

image

 

接下来我们需要把生成的 WinPE引导镜像添加到WDS中

image

把适用于x86和x64的引导镜像都添加到wds中

image

 

image

用客户端试一下

刚才添加的两个引导镜像

image

 

我们在MDT添加的时64位的操作系统,所以选择从x64引导

正在downloadWinPE到客户端

image

填入凭据:

image

 

选择任务序列:

image

往下就可以给这个客户端部署这个操作系统了

到这儿MDT 和 WDS的配置就完成了,如果想要部署别的windows操作系统,首先要导入这个操作系统,然后做成任务序列。在做完操做后需要去更新一下部署共享,如果更新的过程中发现winpe的内容有了变化,需要在wds中重新加载它们。

当然mdt能做的可不止这一点儿,mdt可以在部署操作系统的过程中同时安装硬件驱动,以及在装完操作系统后自动安装应用软件。你也可以现在一台客户端上装好一个操作系统,然后装好各种应用程序,再在mdt上创建一个捕获的任务序列让客户端去执行,将客户端的操作系统捕获到mdt中,然后在mdt上创建这个捕获镜像的任务序列,这样以后就用这一个统一的模板去发放操作系统,是不是很省事。这些就不在这儿介绍了。

配置Linux操作系统的安装

前面配置了syslinux的启动画面,并且在里面添加了windows linuxvmware安装的Entry,而且配置了MDT与windows的Entry相对应,接下来我们配置linux安装的Entry.

首先我们在wds上配置一个FTP,通过ks文件和ftp实现Linux操作系统的自动安装

使用iis搭建FTP(省略),大家应该都会哈

在FTP根目录下创建个版本的Linux目录,比如创建CentOS32目录,并将CentOS5.6 32bit镜像的内容都解压到此目录下。

将centos的ks脚本(在centos中使用kickstart工具产生)放到CentOS目录下

在D:\RemoteInstall\Boot\x86\目录下创建linux目录,并在linux目录下创建各版本的目录,这里创建centos32目录,并将ftp根目录下centos32中image目录下的pxeboot中的内容全部拷贝到该目录下。

在x64目录下也按照如此操作。

在x86和x64目录下的pxelinux.cfg目录中创建linux.menu配置文件:

内容如下:

MENU TITLE Setup Menu
LABEL Main Menu
MENU LABEL ^0----Return to Main Menu
KERNEL vesamenu.c32
MENU BACKGROUND wds.jpg
APPEND pxelinux.cfg/default
LABEL CentOS5.6
MENU LABEL ^1----CentOS5.6_i386

kernellinux/centos32/vmlinuz
append ks=ftp://10.10.1.3/centos32/ks.cfg initrd=linux/centos32/initrd.imgramdisk_size=8192

从客户端启动看一下效果吧

从 Linux Installation Entry进去可以看到二级菜单

image

 

开始加载x86或x64\linux\centos32中的启动文件

image

image

image

开始安装:

image