PXE、GRUB4DOS、GHOST、DeepFreeze
单位 XX中学校
姓名 XX
学科 信息技术
学段 高中
PXE、GRUB4DOS、GHOST、DeepFreeze
摘要:管理好一个计算机室是完成信息技术教学的基本保证。利用成熟的PXE远程启动,再辅以GRUB4DOS优秀的多引导管理器,能很好的控制从哪个分区引导及隐藏部分分区,达到同一教室针对不同信息技术课程的多环境应用;PXE联手网络多播GHOST手段,达到快速布置系统的目的,也可以PXE启动GHOST备份恢复学生机系统。为保证系统的安全,我们还可以利用网络还原系统进行保护,如Faronics.Deep.Freeze.Enterprise。
关键词: PXE ;GRUB4DOS; GHOST;DeepFreeze; Windows多系统;MAC地址;IP地址
一、 引言
随着信息技术教育的普及深入,各学校都建立了性能较好的计算机室,从早期的无盘工作站变成了现在内存大,硬盘大的,处理器性能高的多媒体网络计算机教室,各种应用变得越来越复杂,微软公司的WINDOWS操作系统虽性能不断增强和完善,但系统安装部署的速度仍十分缓慢,同时,针对不同的信息技术教学任务,我们可能需要在同一间微机室搭建不同的教学系统环境,如平面设计教学,电算会计教学,信息技术考试系统等,我们就需要将硬盘划分多个分区,安装上各种需要软件的WINDOWS系统,又由于网络病毒的流行,如何保障计算机系统的安全也让计算机室管理维护人员头疼。笔者从事计算机室管理十余年,应用过不少硬件保护卡管理系统,但都不及本文所述的方法更灵活,更有效,我们利用成熟稳定的PXE远程启动先进的多引导器GRUB4DOS,通过GRUB4DOS菜单决定学生机进行如何操作,启动哪个分区上的系统,激活或隐藏哪些分区,启动GHOST进行系统部署备份等。为了提高电脑系统的安全性,我们选用Faronics.Deep.Freeze.Enterprise专业版进行网络还原保护。下面就几个关键技术问题作说明。
二、 架设PXE服务端,并配置启动文件。
先选择一台性能稳定的,网络速度快的计算机作服务器,安装好WINDOWS2003服务器系统,再安装HaneWin.DHCP.ServePXE服务软件,具体安装配置方法可参考网络教程。关键点: TFTP---端口69---根目录(选你的PXE文件所在目录,笔者的是D: \PXE\);BOOT选项卡----引导文件为Grldr,即GRUB4DOS的引导文件,并将该文件复制到D:\pxe目录。附上配置信息文件:
[DHCPsrv]
Language=deutsch.dll
Remarks=1
View=0
TrayIcon=0
TFTPEnable=1
TFTPDirectory=D:\PXE\
Multicast=0
TFTPWindowSize=1
Log=0
TFTPMode=1
[Standard]
BaseIP=192.168.0.100
Range=21
BootFile=grldr
DNSUpdate=0
SubnetMask=255.255.255.0
InterfaceIP=192.168.0.253
三、 制作GRUB4DOS启动菜单及相关启动镜像
由不点(网名)从2003年发起的对GNU GRUB LAGECY的二次开发,即GRUB4DOS引导器,功能强大,用法灵活,得到了广泛的应用,如”一键Ghost, 矮人DOS工具箱,都是基于GRUB的。将GRLDR(grub4dos的核心引导文件)作为PXE引导文件,为多系统启动提供了方便。笔者编写了如下GRLDR菜单:
pxe detect anything
pxe keep
timeout 3
default 0 //如需启动其它系统时,改0为1或2等
title boot normal teaching system //启动第一主分区上的通用教学系统
hide (hd0,1) //先隐藏其它分区,以免学生在教学系统中改动其它系统的数据
hide (hd0,2)
hide (hd0,3)
unhide (hd0,0)
root (hd0,0)
chainloader /ntldr
boot
title boot ATAtest system //启动第二主分区上的ata 考试系统
password =123456 //可设置密码以免学生进入其它系统中
hide (hd0,0)
hide (hd0,2)
hide (hd0,3)
unhide (hd0,1)
root (hd0,1)
chainloader /ntldr
boot
title boot caiwu system //启动财务系统
password =123456
hide (hd0,0)
hide (hd0,1)
unhide (hd0,2)
unhide (hd0,3)
root (hd0,2)
chainloader /ntldr
boot
title ghost from network
password =123456
map --mem (pd)/netghos.IMG (fd0) //从PXE要目录中的网络GHOST镜像启动学生机
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
title Gdisk auto partion //启动Gdisk 自动分区功能
password =123456
map --mem (pd)/Gdisk.IMG (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
上述菜单中有两个关键的IMG启动镜像文件,我们都把它们放到服务器上的d:\pxe目录中,一个是netghost.img,它的作用是让学生机启动GHOST客户端,里面主要由以下文件组成
Autoexec.bat
Command.com
Config.sys
Ghost.exe //11.02版本的DOS版GHOST程序
Himem.sys
Ibmio.com
Ibmdos.com
Undipd.com
其中autoexec.bat内容为:
@echo off
prompt $p$g
Undipd.com 0x60 //加载通用网卡DOS驱动
echo Loading...
GHOST.EXE -batch -ja=stu //stu为GHORSTSRV服务端中的会话名。
另一个是gdisk.img 这个启动镜像是完成对学生机硬盘的分区操作,里面主要用到了Gdisk.exe ,dos分区程序,该镜像中的autoexec.bat内容为:
@ECHO OFF
Path=a:\
gdisk 1 /del /all //删除硬盘1上的所有分区
gdisk 1 /mbr /z //清除硬盘1 上的主引导记录
gdisk 1 /cre /pri /sz:20p /for /ntfs:xp /q /y
gdisk 1 /cre /pri /sz:30p /for /ntfs:xp /q /y
gdisk 1 /cre /pri /sz:20p /for /ntfs:xp /q /y
gdisk 1 /cre /pri /for /ntfs:xp /q /y
把学生机硬盘划分成四个主分区,可以安排四个不同的用途的系统,其实grldr完全可以从逻辑分区上启动windows系统,还有win7的vhd系统,我们完全可能在学生上安排更多的系统环境,达到一机多用的目的。
PXE服务器的准备工具已经完成,我们需要将所有生机改为PXE优先启动,这样就可以上学生机在每次启动时调取PXE服务器上的GRLDR启动菜单,决定学生机进行什么样的启动或操作。达到全自动改变不同系统或进入网络维护的目的。
四、 利用网络GHOST部署学生机系统
1. 制作母本系统:
先选择一台学生安装好各种需要的软件,并做GHOST母本备份,这种操作一般维护人员都应该已会掌握,不再多说,关键是这样的备份文件要应用别的相同配置的电脑并自动修改计算机名及IP地址等。所以我们要准备一自动修改IP地址及计算机名的批处理程序,然后加入注册表项的runonce中,就能顺利的完成此项工作。
先按如下格式收集MAC地址,并安排学生IP地址及计算机名。
计算机名 IP地址 MAC地址
S01 192.168.1.11 00-24-8C-0D-ED-9A
S02 192.168.1.12 00-24-8C-0D-EF-63
S03 192.168.1.13 c000-24-8C-0D-F3-03
并将此文件保存为 mac.ini
自动根据MAC地址更改IP及计算机名的批处理文件autoip.cmd内容为:
@echo off
setlocal EnableDelayedExpansion
title 根据MAC地址自动修改计算机名、IP地址、掩码、网关、DNS
set mask=255.255.255.0
set gateway=192.168.1.1
set DNS1=61.128.128.68
set DNS2=61.128.192.68
echo.
for /f "tokens=2 delims=:" %%M in ('ipconfig /all^|find /i "Physical Address"') do set Mac=%%M
set PCMAC=%MAC:~1%
echo.
for /f "tokens=1" %%a in ('type MAC.ini^|find /i "%PCMac%"') do (set pcname=%%a)
for /f "tokens=2" %%c in ('type MAC.ini^|find /i "%PCMac%"') do (set myip=%%c)
echo 修改计算机器名
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam" /v @ /t REG_SZ /d "%pcname%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" /t REG_SZ /d "%pcname%"/f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v "ComputerName" /t REG_SZ /d "%pcname%"/f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Eventlog" /v "ComputerName" /t REG_SZ /d "%pcname%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" /t REG_SZ /d "%pcname%"/f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d "%pcname%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "Hostname" /t REG_SZ /d "%pcname%" /f
echo 开始设置网卡IP地址、掩码、网关、DNS
netsh interface ip set address name="本地连接" source=static addr=%myip% mask=%mask% gateway=%gateway% gwmetric=1
netsh interface ip set dns name="本地连接" source=static addr=%DNS1%
netsh interface ip add dns name="本地连接" addr=%DNS2% index=2
将mac.ini、autoip.cmd两个文件保存到母本样机的windows目录,并添加runonce注册表项,即导入以下注册表:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce]
"ip"="c:\\windows\\autoip.cmd"
到此,我们就做好了能根据MAC地址自动修改系统IP及计算机名的母本系统,我们把这个文件提取到服务器上,在服务器上架设ghost多播服务,把母本系统通过网络GHOST到服务器上,GHOST服务器的使用要注意会话名与前面谈到的网络GHOST启动镜像中的会话名称一致(笔者设置为stu),另外要指定为备份操作,选择好要备份的硬盘及分区,重启母本系统,通过PXE调用GRLDR启动菜单,选择“ghost from network”项。就能把母本系统备份上来,也能用类似的操作把备份好的文件网络多播GHOST到其它学生机。我们用同样的办法就能把各个分区的系统都部署好,如果哪个学生机系统出现问题了,在PXE启动时可手动选择菜单进行GHOST还原操作。
五、 系统的保护,更新操作。
尽管我们已经架设好了网络GHOST系统,当学生机系统出现问题,我们可以很方便的再网络GHOST系统,但在网络病毒横行,学生误操作较多的情况下,这样的维护仍然很麻烦,所以我们得采用一些还原效果好的软件来保护学生机的系统,DeepFreeze,也就是冰点还原软件,就是一款非常不错的保护软件,具体使用可参考网络上的教程,笔者这里简述如下:
1. 安装好DEEPFREEZE管理软件,生成种子文件,工作站端程序。
2. 把种子文件在母本系统上安装一次
3. 网络GHOST系统后,通过管理端软件向个种子安装工作站端程序。
4. 通过管理端程序设置学生机冻结及解冻,或升级系统补丁,杀毒软件病毒库等操作。
六,注意事项及拓展应用。
本文提及的软件,PXE及grub4dos都可以免费使用,其它工具软件及系统需要付费使用,所以在我们尽享快速部署,安全保护的时候,不要忘记尊重知识产权,付费使用正版软件。部署好这套系统后,我们还可以做出一些新的应用,如:我们可以在某个隐藏分区中藏入部分维护工具或系统备份,或是放入Ramosxp系统,让系统全在内存里运行,不但速度快,而且重启就会还原,很好的保证了系统安全;通过网络启动WinPe系统,或是通过网络启动我们按需定制的应用型WINPE环境;结合WIN7系统独有的VHD虚拟磁盘及差分VHD技术,使我们的部署,还原更加方便。
参考:时空启动论坛bbs.znpc.net grub4dos开发交流论坛
无忧启动论坛bbs.wuyou.net
后记 写于一年多前,没提交过,看有朋友提及这方面的问题,所以把它翻出了,现在来看有很多地方可以改进,如GRUB4dos增加的新命令……,不想改了,将就看,各位见笑了。 |