安装操作系统,一直是运维人员比较头疼的一个问题,传统的安装方法,通过U盘或者光盘安装操作系统,操作繁琐,效率较低,这里介绍一个利用WDS+MDT实现的通过网络批量部署操作系统的方法,可以实现用户自主,批量部署,和无人值守安装操作系统,大大提高运维效率。
一、环境准备
专注于为中小企业提供成都网站设计、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业德阳免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了超过千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
这里使用的架构如下图
AD(DC):Windows部署服务器必须是Ad域的成员,或者域控制器,在这里我们的WDS是属于域成员。
DNS:网络中需要有效的DNS服务器
DHCP:windows部署服务依靠DHCP进行IP寻址PXE,因此网络中必须要有有效的DHCP服务器,在我们这里DHCP设置在思科交换机中。
WDS:Windows 部署服务(Window Deployment Services)
MDT:MicrosoftDeploymentToolkit,系统部署工具
工具准备:
ADK:MDT功能需要ADK部分组件支持,所以在安装MDT之前须先安装ADK
同时需要安装.Net Framework 3.5
在这里
我们的AD,DNS,DHCP是公司环境中已经存在的,所以我只需要建立WDS和MDT即可、
这里服务器版本我选用windows server 2012,WDS和MDT存在同一台服务器上
MDT工具我选择MDT2013
下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=48595
ADK win10
下载地址:https://docs.microsoft.com/zh-cn/windows-hardware/get-started/adk-install
这里略过安装配置AD,DNS,DHCP服务器的过程,直接进入主题
二、服务器安装
(一)安装WDS
这里我用的是Win Srv2012 Datacenter版本,並且已經加入域中
选择安装“windows部署服务(WDS)”,这里我已经安装过了
安装.NET Framework 3.5(我已经安装成功了)
在这里因为系统安装过4.5,安装.net.35的时候会报错失败,需要手动安装
以管理员身份运行PowerShell,键人下面的命令进行安装:
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU' -Name UseWUServer -Value 0
Restart-Service -Name wuauserv
Install-WindowsFeature Net-Framework-Core
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU' -Name UseWUServer -Value 1
Restart-Service -Name wuauserv
具体操作可以全部复制,然后全部粘贴回车即可。
同时勾选部署服务器和传输服务器
WDS服务安装成功
(二)配置WDS
打开windows部署服务管理控制台
右击选择配置服务器
这里可以和AD集成,也可以独立
选择一个远程安装文件夹的路径,可以默认,也可以自定义,前提是要有足够的磁盘空间,如果选择默认路径,直接跳过警告。
PXE设置响应所有客户端
配置完后如图,WDS服务器已经Up
(三)安装MDT
下载MicrosoftDeploymentToolkit2013_x64.msi进行安装
直接默认,下一步安装即可
(四)安装ADK win10
下载ADK win10进行安装
部署工具必须安装,USMT看情况安装,
值得注意的是ADK win10的PE环境提供独立的安装包。先安装ADK win10再安装PE环境
如果服务器环境无法联网安装,可以在本地运行安装程序,下载完整安装包之后,再将安装包上传到服务器运行安装。
安装完成
(五)配置MDT工作台(DeploymentWorkbench)
打开“DeploymentWorkbench”,选中“Deployment Share”右击,选择“New Deployment Share”
存放路径可以自定义,下一步
模式为隐藏式共享,下一步
可以对部署共享进行简单描述,下一步
默认,勾选3項,下一步
MDT工作台配置完成
三、添加资源
(一)导入操作系统(OS)
我们可以New Folder建立一些文件夹,方便对操作系统进行分类,分类的标准可以根据中英文,操作系统类别,等进行设置。
这里以导入win7为例
将要导入的ISO文件加载到光驱,点击Browse定位到文件位置
导入完成
导入后,双击可查看OS信息
(二)导入应用程序
和导入OS类似,New Folder进行分类
New Application导入应用程序
以导入Adobe Reader为例
命令行如下:AdbeRdr11000_zh_CN /sPB /rps
需要注意的是,不通的软件在命令行安装的命令不同,大部分为“软件名 /S”安装,特殊的情况下需要查询到软件命令行静默安装语句,在commd Line进行填写。
这里提供一个获得安装参数的方法。
PS:
拿到一个安装程序,用/?查询下。
如果不支持/?参数,还可以用各静默安装参数试试就知道了( [/S] [/silent [/noreboot]] [/verysilent [/sp-] [/norestart]] [/q] [/qn] [/qb] [REBOOT=SUPPRESS] [/s /v/qn] [/q:a /r:n] [/u /n /z] [/quiet] [/SilentInstallNoSponsor] [/SilentInstall] [/s /qn] [/s /qd] [-s] [-q] 等)
这步比较枯燥,但通常都比较有效。
(三)导入驱动
驱动文件获取推荐2种方法
第一种,去对应主机型号的官方网站下载对应的驱动程序,将安装程序解压出来,提取inf文件,到MDT工作台进行导入
第二种,在官方找不到对应驱动,或官方驱动不被识别的时候,现在主机上使用驱动精灵等软件安装好驱动,再将安装好的驱动通过软件备份导出,拿出来导入到MDT工作台。
同样的分类和导入步骤
选择驱动存放路径,这里的驱动必须是inf格式
导入成功,这里我以导入一个USB驱动为例
(四)导入包
导入的包可以是语言包,更新和SP,我这里导入一个更新
导入KB2492386补丁成功
四、系统部署
(一)新建任务序列
在Task Sequences,右击New Task Sequences.
填写序列ID 任务序列名称
选择任务序列模板,新部署系统我们选择Standard Client Task Sequence
选择我们刚才导入的操作系统
在此处填入秘钥,没有或者后面再填我们选择跳过
企业有购买MAK key的话可以在第二项填写,这里填过key之后,在安装操作系统的时候就不会再询问要求填入key.
填写用户组织IE默认页等信息
设置本地密码
回顾概要信息
任务序列设置成功
(二)编辑磁盘分区
选中刚才创建的任务序列,双击打开Task Sequence选项卡,在Preinstall文件夹下找到Format and Partition Disk(BIOS)进行磁盘分区和格式化
先选中现有的分区方式,点×删除所有分区
点这个符号新建分区,填写分区名称,Primary为主分区,可以百分比的方式也可以以大小的方式设置分区大小,我这里以40%为例,并勾选Make this boot patrition来设置该分区为系统分区,同时勾选QUICK Format。点OK分区完成
其他盘参照系统分区的方法分配空间即可。
如果只是格式化C盘,保留其他盘的内容可以按下图操作,在options下新增一个变量
Specific logical drive letter equals C:,然后将所有空间分配给它使用。
(三)设置启动映像
选中MDT Deployment Share并右击,选择属性
如果不需要安装x86的机器可以不勾选x86,Network path尽量填写IP地址,这样不受Netbios影响
我们只生成WIM PE文件 去掉 ISO文件的勾选,这样每次更新生成PE映像文件的时候能够提高效率
在drivers and Patches中勾选网卡和存储驱动以免我们在部署过程中出现问题
(四)设置rules和Bootstrap参数
切换到rules选项卡,如下图,通过rules设置实现自动化的安装,跳过不必要的选择界面,减少人为参与,实现无人值守的操作系统部署
在DeploymentShare\Control目录下可以找到CustomSettings文件,用记事本打开可以看到,就是Rules选项卡中的內容。
设置Bootstrap参数,點擊“Edit Bootstrap.ini
Rules参考如下:
Rules 参数设置注解:
[Settings]
Priority=Default
Properties=MyCustomProperty
[Default]
OSInstall=YES //是否允许部署操作系统到目标计算机
SkipBDDWelcome= NO //是否跳过欢迎界面
SkipCapture= NO //是否跳过镜像捕获
SkipDeploymentType= NO //是否跳过选择部署类型
DeploymentType=NEWCOMPUTER
SkipAdminPassword= NO //是否跳过设置本地管理员密码
adminpassword=
SkipAppsOnUpgrade=NO //是否跳过应用程序安装向导页
SkipComputerName=NO //是否跳过设置计算机名
SkipProductKey= NO //是否跳过输入产品密钥
SkipDomainMembership=NO //是否跳过加域或工作组
SkipComputerBackup= NO //是否跳过计算机备份
SkipBitLocker=YES //是否跳过BitLocker配置
SKipTaskSequence=NO //是否跳过任务序列(可自定义)
SkipFinalSummary= NO //是否跳过系统部署完成后的最后总结
SkipTimeZone= NO //是否跳过时区和语言设置
TimeZoneName=China Standard Time //时区
KeyboardLocale=zh-cn //键盘区域
UserLocale=zh-cn //用户区域
UILanguage=zh-cn //语言
SkipLocaleSelection= NO //是否跳过本地选择
SkipUserData= NO //是否跳过用户数据配置
SkipSummary= NO //是否跳过配置摘要确认
SLShare=\****\logs //可指定部署日志存放位置,以方便日常排错
Bootstrap 参数设置注解:
[Settings]
Priority=Default
[Default]
DeployRoot=\10.0.0.2\DeploymentShare$ //共享目录
UserID=administrator //启动管理账户设置
UserDomain=**** //启动账户所属的域
UserPassword= //账户对应密码
KeyboardLocale=zh-cn //键盘语言设置
SkipBDDWelcome=YES //是否跳过欢迎界面
(五)更新MDT工作台
右击Update Deployment Share
(六)向WDS添加启动映像
在WDS中把刚生成的PE wim文件添加到启动映像中
(七)部署操作系统
电脑开机之后,通过网卡启动计算机,DELL品牌按F12选择网卡启动,HP品牌按F9选择网卡启动
选择任务序列
选择软件
安装过程中
安装完成
其他操作系统,例如win8.1,win10部署步骤和win7一样,只是主机对应的驱动程序需要适配win10系统,需要重新搜集。
五、关于WDS和DHCP配置说明
当WDS、DHCP和Client位于同一网段时,WDS和DHCP位于不同的服务器上,DHCP不需要任何额外配置,Client可以通过广播获取到DHCP和WDS服务器,进而与WDS服务器正常通信。
当WDS和DHCP位于同一网段时,WDS和DHCP位于不同的服务器上,Client位于其他网段时,Client在PXE启动是会出现“NO BOOT FILENAME RECEIVED”错误,找不到启动文件。在这个过程中,实际上Client可以正常与DHCP正常通信(广播),获取到IP,只是无法联系到WDS服务器(广播)
(一)如果使用的是Microsoft DHCP Server,则在DHCP上配置66和67选项(boot\x64\wdsnbp.com)即可。
(二)如果使用的是交换机(如Cisco)上的DHCP,则需要在交换机上进行配置,在各个vlan里面同时添加 dhcp和WDS服务器地址,将Client的广播请求也发送到WDS服务器,使其可以与WDS服务器正常通信。
注:如果客户端和WDS、DHCP服务器位于同一网段,也出现该错误的话,也可以根据该方法配置解决问题。
CISCO配置
同网段
ip dhcp pool XXXXX (地址池名字)
option 66 ip XX.XX.XX.XX (WDS IP地址)
不同网段
ip dhcp pool XXXXX (地址池名字)
next-server XX.XX.XX.XX (WDS的IP)
option 66 ip XX.XX.XX.XX (WDS的IP)
option 67 ascii Boot\x86\wdsnbp.com
Example.
WDS地址为172.60.25.180,思科交换机配置如下:
ip dhcp pool Office_VLAN25
network 172.60.25.0 255.255.255.0
default-router 172.60.25.1
dns-server 172.60.30.35 172.30.35.254
option 66 ip 172.60.25.180
lease 0 8
!
ip dhcp pool Office_VLAN26
network 172.60.26.0 255.255.255.0
next-server 172.60.25.180
default-router 172.60.26.1
dns-server 172.60.30.35 172.30.35.254
option 66 ip 172.60.25.180
option 67 ascii Boot\x86\wdsnbp.com