CCboot无盘安装Windows10笔记
最近突发奇想,研究了一下无盘系统,也算是给自己提高了一下,研究时间历时一星期左右,学习过程中碰到了很多问题,在这里记录一下,以免忘记。
本次研究的无盘系统为CCBOOT,是国外的一款无盘系统,之所以选择CCBOOT而不是常见的锐起、网维等系统。主要原因是太多的无盘系统只适合网吧使用,而CCBOOT自带的“重启保留回写文件”功能,能让每台客户机重启后依然保留操作,让CCBOOT更适合办公环境使用。
CCBOOT的资料网上不多,学习的资料主要来源于官方英文版网站,该网站的WIKI栏目是学习资料的主要来源。网上中文资料非常少,官方中文网站内容停留在2012年前后,实在是太老了。除此之外,很难找到有价值的CCBOOT文档。
测试环境如下:
硬件:
服务器:4代INTEL平台台式机,Z系主板,I7处理器,机械硬盘500G*2,120G普通SSD硬盘,24G DDR3内存,外挂INTEL芯片 PCI-E 1X 双口网卡。
客户机:办公室8台台式机,1台笔记本电脑。台式电脑有品牌机、兼容机,网卡均为板载reltek 千兆网卡。这批机器都为intel 3-4代平台,有h61,b85,h81等,有一台为AMD FM1,笔记本为4代赛扬系列,都是比较老的机器,内存最少4G,最多16G,显卡大都为intel集成显卡,个别机器装有独立显卡,但也是很老的AMD HD系列,其中有两台机器为双显示器。
客户端每台机器配置,从主板到CPU到显卡都有区别,都很个性化,没有机会像网吧那样统一配置。
另外,还使用虚拟机环境VMware Workstation Pro 15做为测试。
因为只是为了研究,并没有打算正式使用无盘,所以除了单独一台电脑没装硬盘外,其他台式电脑都有SSD+HD硬盘,都能独立正常使用。
软件:无盘系统CCboot 2018 0823版本,目前最新版本为CCboot 2019版,但感觉改进有限,还是选择了2018版本。
测试操作系统为:Windows7企业版(下载的成品CCBOOT成品VHD镜像),Windows10,选择了工作站版1909和LTSC 2019 1809版。选择WIN7企业版而不是旗舰版的原因是因为JH问题。
测试软件为360压缩、搜狗输入法、微软五笔、Office2016,WPS,photoshop2017等常用办公软件、360浏览器QQ微信等沟通软件、网易云音乐、potplay、爱奇艺等影音软件以及联众游戏和LOL等游戏软件。
网络环境为,千兆网管交换机,ROS软路由器,该环境为办公环境,每个部门还划分了不同的VLAN。
预想实现目标:指定两个VLAN内电脑实现无盘使用,由ROS路由器统一分配IP。
无盘服务器配置备忘:
系统为WIN2008 R2,更新所有补丁,该服务器没有接入互联网,CCBOOT 2018安装简单明了,两个机械硬盘,每个都分了两个区,共四个分区。操作系统安装在A机械硬盘的第一个分区,第二个分区为软件安装盘。B机械硬盘的第一个分区为镜像盘,另一个分区设置为未使用(做为个人盘)。SSD也分了两个区,其中大的分区为回写盘,小的那个为软件盘的加速盘。
每个盘能分配内存加速的,都分配了。其中镜像盘分配了10个G内存;回写,软件等盘分配了4-6G不等的内存缓存。服务器运行稳定正常。
测试笔记
测试1:初步入门
服务器加载WIN7现成镜像,关闭路由器该网段DHCP功能,由CCBOOT的DHCP进行IP分配,客户机BIOS开启网卡启动,开机后通过引导菜单选择(华擎主板F11键,华硕主板F8键,联想F12,微星主板F?)选择网卡启动,基本都可以正常启动,但由于WIN7自身的问题,很难实现一包多配,因为测试用的客户机配置都不相同,初始镜像基本能在每台机器上正常启动,但是一但安装了某台机器的驱动后且更新了镜像,再在其他电脑上启动,就会蓝屏。看英文版文档,CCBOOT自带硬件标识功能可以解决此类问题,但由为WIN7已经非常老了,且硬件兼容性不及WIN10,所以到此就停止了WIN7系统的研究。
测试2:WIN10进阶
网上下载现成的WIN10包进行测试,明显发现WIN10兼容性要好于WIN7,下载现成的WIN10包版本较老,且还有问题(客户端无盘能启动但网络不通),再加上系统不是自己做的不放心,打算要自己操作镜像包。
客户机中有两台B85的华硕主板,但是型号不完全一样(一个为 B85M-G,另一个为 B85M-V5 PLUS)。其中 B85M-V5 PLUS主板在无盘启动出现CCBOOT 2015……(应该是加载bootmgr)时,死机,键盘无反应,只有光标在闪,而其他客户机都能正常引导。
测试3:使用路由器DHCP,关闭CCBOOT DHCP
恢复路由器ROS的DHCP功能,关闭CCBOOT DHCP后发现WIN7,WIN10都无法启动,停留在启动滚动条。看官网英文文档,有关于ROS做为第三方DHCP的文档,看完后,了解应该在后台为客户端PXE文件由默认gpxe.pxe改为thirdpartydhcp。
改为该设置后,WIN7镜像可以正常启动,而WIN10时,所有客户端到CCBOOT 2015……(应该是加载bootmgr)时,死机。此时后台客户机读数据为400K左右,看了官网文档有相关的解决方案,将PXE改为gpxex.pxe后,不卡“CCBOOT 2015……(应该是加载bootmgr)”了,但加载到读数据500M,写数据30M时再次停止,客户机屏幕转小圈。
再次查询官方英文文档,其中有写着:
注意:如果客户端从第三方DHCP获取IP,会无法启动。Windows 7使用默认网关创建到iSCSI目标的路由。
这意味着,如果您的目标在同一LAN上,则您的路由器必须准备路由本地LAN流量(通常不会这样做,因为发起方和目标可以直接通信)。
一些严格的防火墙设置或路由器将阻止这种路由,这将导致Windows 7启动失败。
例如,使用Shorewall,您需要在LAN接口上启用“ routeback”设置。
如果使用OpenWrt(不带Shorewall),请将其添加到/etc/firewall.user(如果不存在则创建此文件):
iptables -A Forwarding_lan -i br-lan -o br-lan -j ACCEPT
另一个解决方案:不要在第三方DHCP上设置网关,而只需在CCBoot客户端属性中设置网关。
ROS中没有对应的选择,按另一解决方案提示,在ROS DHCP中不配置网关,大部分问题都解决了,但这样一来,不使用无盘启动的客户机,会因DHCP不下发网关信息,而导致无法上网,直接影响办公环境的正常使用。除非为办公环境中的电脑配置上固定的IP地址。
所以,为了保证办公环境能正常使用,依然选择了在ROS关闭了测试VLAN的DHCP功能,改为CCBOOT为该VLAN提供DHCP服务。最终没有实现ROS的DHCP分配,一但无盘服务器关机或出现问题,会导致该VLAN下没有DHCP服务,致使客户机无法上网。
测试4:自己动手做WIN10镜像
先到MSDNtellyou下载最新的消费版1909的WIN10,选择了工作站版安装到 B85M-G的硬盘上,由于CCBOOT不能直接实现WIN10上传镜像的功能,故要在服务器设置共享文件夹,在客户端直接将系统打包为VHD镜像上传到服务器。成功在服务端为所有客户机配置新的镜像。发现使用默认的gpxe.pxe启动文件,所有客户机都卡在了“CCBOOT 2015……(应该是加载bootmgr)”这一步(后台显示读数据 400K)左右。看官方文档中,好像说对于1903的系统PXE启动支持不好,建议使用1809版系统,故又重新安装 了1809的LTSC 2019版WIN10。上装镜像后问题依然存在。在此处耗费了较多的时间。
重新查找了官网的英文文档,找到官方一篇文章(关于卡400K不启动的文档)按提示文档,后台把启动文件换成gpxex.pxe,问题解决。所有客户机都能正常启动。
但是,由于gpxe.pxe无法引导,导致了CCBOOT中的双系统菜单,图形启动菜单等基于gpxe.pxe的所有功能全部无法使用,都会到卡在加载bootmgr这个地方。而使用gpxex.pxe问题解决,但无法实现双系统启动。
后回想网上下载的现成WIN10 VHD除了B85M-V5 PLUS卡bootmgr外,大部分客户机还是能用gpxe.pxe启动后,后尝试用diskgen把该镜像中的bootmgr替换到自己做的WIN10.vhd后,大部分客户机(没全试)都能在gpxe.pxe启动,也能实现图型界面和多系统菜单了。但B85M-V5 PLUS依然会卡bootmgr。
为什么原版bootmgr无法使用,原因不得而知,官网也没有任何文档解决,那个现成的镜像中的bootmgr是什么版本,从何而来咱也不得而知。有机会再深入研究吧。