1、关于克隆母系统所用机型。个人感觉对制作克隆系统的机器应该没有什么特别的要求,在我想来,VMWare、Virtual
PC、PIII、P4的机器均可,当然,我们一般选用比较新比较快的机器进行母系统的安装与设置。不过,有一点儿特别需要注意的问题就是intelide和intelppm的不兼容问题。在封装完成后,应该删除intelide和intelppm服务及相关的注册表项。这个操作可以使用ASRClean完成。
命令1:
ASRClean /Delete:DelList.txt /NoRegBackup /Quiet
DelList.txt内容:
INTELIDE
INTELPPM
将ASRClean.exe和DelList.txt放到同一目录下,然后执行命令1即可清除intelide和intelppm服务相关注册表项。
当然,我的克隆系统都是在Intel平台下完成的,nForce、VIA及SiS平台是否需要清除相关的服务我不敢肯定,有心人可以测试一下。
2、关于克隆系统安装杀毒软件。在我的实践中,我仅测试过安装NAV企业版和瑞星网络版的客户端,对克隆系统都是没有影响的。至于卡巴斯基,论坛里曾经有人反映过它会造成克隆系统恢复失败,有人也给出了解决方案。但对于杀毒软件,我不是十分看重,毕竟,我们恢复完系统都要给系统再做克隆,系统坏了,大不了恢复克隆即可。所以,我个人虽然并不推荐不安装杀毒软件,但对过分强调杀毒软件的作用也持保留态度。有时候,用户良好的计算机操作和上网习惯是比安装杀毒软件更重要的一个因素,例如:经常给系统打补丁、不随意运行不明软件、浏览时不随意点Yes或者确定,这些都很重要。所以,对于杀毒软件,我只推荐象NAV企业版客户端或者McAfee这一类兼容性较好,占用系统资源较少的软件,虽然有时候它们的杀毒效果并不明显,但毕竟聊胜于无。
3、关于IDE控制器和计算机类型(电源类型)。虽然ASRTools宣称在使用它的卸载驱动功能后,不再需要将IDE控制器修改为标准双通道,但我个人认为,将IDE控制器修改为标准双通道还是稳定性更好的一种做法。因此我建议在使用ASRTools时,不要使用它的卸载驱动功能。在使用msprep.exe对系统进行封装前或者后,请手工确认一下是否将IDE控制器修改成了标准双通道,将计算机类型修改为Standard
PC。
4、关于卸载普通硬件驱动和减少幽灵硬件。个人感觉完全不用担心幽灵硬件会对系统造成什么严重的影响,因此,如果你不是追求完美型的,完全可以不必理会幽灵硬件问题,因为FXZM所制作的最经典的克隆系统都没有理会幽灵硬件问题。
如果你想减少幽灵硬件,有两种比较简单有效的办法:
(1)使用下面的批处理:
CODE:[Copy to clipboard]@echo off
:: CPU
devcon remove ACPI\Processor
::GAME Port
devcon remove PCI\CC_09*
::网卡
devcon remove PCI\CC_02*
::声卡
devcon remove PCI\CC_04*
:: USB HOST and SMBus
devcon remove PCI\CC_0C*
:: 监视器
devcon remove DISPLAY\*
:: 显卡
devcon remove PCI\CC_03*
:: 芯片组
devcon remove PCI\CC_0604*
:: 磁盘卷
devcon remove @STORAGE\*
:: USB存储卷
devcon remove @USBSTOR\*
:: USB设备
devcon remove @USB\*
:: 人机接口设备
devcon remove @HID\*
:: IDE设备
devcon remove @ide\*
:: IDE Channel
devcon remove @PCIIDE\*
这个批处理我是在ASRTools的removed.cmd的基础上完善出来的,例如,我不再卸载IDE控制器。因此,这个批处理请在安装完ASRTools后运行。
(2)使用我写的另一个批处理在恢复克隆后的封装安装过程中进行,具体说,是使用msprep.ini的ext=命令运行。
这个批处理我在ASRClean的讨论专帖中曾经发布过,帖子链接如下:
http://bbs.mscode.cc/viewthread.php?tid=19179
批处理名为xyfprep.cmd。
另外,可以同时采用上面两种方式,即在封装前使用removed.cmd卸载硬件,在恢复后封装安装过程中使用xyfprep.cmd再次卸载硬件。我自己的克隆系统就是同时使用这两种方式,基本上在恢复完成后可以保证没有什么幽灵硬件。
至于有人所说的在BIOS中关闭大部分硬件应该也是有效的,只要系统不安装对应的硬件驱动,就不会存在幽灵硬件。
5、关于对母系统进行封装的步骤。这个步骤其实不是死的,如果你了解整个过程,甚至在封装完成后都可以对克隆进行必要的改动。但我一般采用的步骤如下:
(1)母系统的准备。主要是系统的安装、安装常用软件,对系统进行优化和设置,这是一个完全个性化的过程,没有必要统一。如果你想将克隆放到光盘上,就尽量少安装软件。至于优化和减肥,自然更是见仁见智的事情。总之,你在对母系统进行封装前,一定要保证它是稳定的没有问题的。
(2)先给母系统制作一个克隆。一个好用的通用克隆系统的制作是一个大量实际测试和不断完善的过程,因此,对母系统保留一个原始的克隆是一种很好的节省克隆制作时间的方法,这样可以保证我们的每次封装安装都是在一个稳定的基础上开始的。而我们所要做的只是不断完善封装过程,改正上一次封装中所发现的错误。
(3)安装ASRTools或者S&R&S软件。安装过程中会有一些选项,一般就是选择你要集成到系统中哪些驱动(我一般是选择集成全部驱动的)。关于ASRTools的卸载驱动功能,建议你采用我上面所推荐的方式进行。
(4)将对应母系统的sysprep.exe和setupcl.exe复制到c:\sysprep目录(没有必要将deploy.cab中的所有文件解压过去,只需要这两个文件)。运行msprep.exe对系统进行封装,至于msprep的选项,我一般将修改IDE控制器和计算机类型为Standard
PC操作手工进行,因此,不会选择msprep中的对应选项。至于sysprep.exe的选项,好像最新版的msprep.exe已经剥夺了用户选择对应选项的权利,就用它默认的即可。至于sysprep.inf,我觉得根本没有必要每次封装都使用setupmgr.exe生成一个,直接将别人所做的克隆中的sysprep.inf文件复制出来然后稍加修改即可。例如,你可以用下面的:
CODE:[Copy to clipboard];SetupMgrTag
[Unattended]
OemSkipEula=Yes
OemPreinstall=Yes
DriverSigningPolicy=Ignore
OemPnPDriversPath="windows\system32\bird;drivers\Camera;drivers\Chipsets;drivers\Display\ATI63\B_31321;drivers\Display\ATI63;drivers\Display\NV5216;drivers\Display\NV8421;drivers\Display;drivers\Ethernet;drivers\Integrated\intel\i8x5;drivers\Integrated\intel\i9x5;drivers\Integrated\intel;drivers\Integrated\s3;drivers\Integrated\sis;drivers\Integrated\via;drivers\Integrated;drivers\Sound\ad3890;drivers\Sound\ad4050;drivers\Sound\ad5430;drivers\Sound\addell;drivers\Sound\adihd;drivers\Sound\cmedia;drivers\Sound\ews88;drivers\Sound\Hdaudio;drivers\Sound\realtek;drivers\Sound\SigmaTel;drivers\Sound\sndchip;drivers\Sound\viaenvy;drivers\Sound\viahd;drivers\Sound"
[GuiUnattended]
AdminPassword=*
EncryptedAdminPassword=NO
OEMSkipRegional=1
OEMDuplicatorstring="Climbing"
TimeZone=210
OemSkipWelcome=1
AutoLogon=Yes
AutoLogonCount=1
[UserData]
ProductKey=QC986-27D34-6M3TY-JJXP9-TBGMD
FullName="Climbing"
OrgName="www.mscode.cc"
ComputerName=Climbing-clone-xp
[TapiLocation]
CountryCode=86
Dialing=Tone
AreaCode=0312
[RegionalSettings]
LanguageGroup=10
Language=00000804
[Identification]
JoinWorkgroup=WORKGROUP
[Networking]
InstallDefaultComponents=Yes
[sysprepcleanup]
[GuiRunOnce]
command0="C:\Windows\GuiRunOnce.BAT"
封装完成后,不要忘了在设备管理器中检查IDE控制器是否为标准双通道和计算机类型是否为Standard
PC,如果不是,请手工改之。还有,这时不要忘了清除象intelide和intelppm这样不兼容的驱动。
(5)修改c:\msprep.ini,对里面的参数进行适当的设置。例如我的部分设置:
CODE:[Copy to clipboard][Sysprep]
Cuser=Administrator
timeout=5
Setip=4
ext=windows\autohalx.cmd
IP=
Wcome=
...
然后将对应的批处理文件放到适当的位置。例如将GuiRunOnce.BAT和autohalx.cmd放到windows目录下,这些都是我自己编写的批处理。
(6)关于DllCacheManager的使用。你可以在这一步进行,也可以在第(2)步前进行,都没有关系,因为它的主要目的就是给克隆减肥,缩小克隆文件的体积。至于DllCache的恢复,本论坛(mscode.cc)的S&R&S专区曾经有人专门总结过(据说榕榕的教程中也有详细的介绍)。至于我个人,我只用DllCacheManager备份DllCache(万一用到了我可以手工恢复),但在给人安装克隆系统后,我从来没有恢复过DllCache,因为我一般在装完系统后是要给人安装一键恢复系统并给它制作克隆的。我自己制作的通用克隆只给自己用(就是给朋友装机),既然有了克隆,我觉得DllCache的意义就不大了,系统坏了大不了恢复克隆就行了。而且,只有菜鸟才会给系统装需要用到DllCache的乱七八糟的软件,我一般建议菜鸟不要随意安装软件,系统坏了就一键恢复,呵呵。
(7)启动到DOS给系统做克隆,这样一个通用克隆系统就完成了制作。有人在克隆之前还要整理磁盘、卸载驱动啥的,个人感觉毫无意义,因此从来不做。
另外,在(3)-(6)的步骤中,我是从来不重新启动计算机的,整个过程都是一气呵成。
(8)首先在母机上对刚刚封装完成的系统进行测试,如果本机恢复都有问题,那么基本上这个克隆就是失败的,也不用到别的机器上进行测试了。如果本机恢复没有问题,那么就可以开始用其它平台的机器对刚制作的克隆进行测试了。记住,一个完美的克隆系统是不断完善的结果,发现了问题要及时解决。
基本上,我每次封装系统都是按照这个步骤,当然,我自己写了很多批处理来自动化大部分操作,但我认为,人是决定性的,任何步骤的进行都是由人来控制的,而不能反过来让人受制于机器和某个软件,这就是你能成为高手的基础。我制作的克隆系统几乎很少遇到失败的情况,就算遇到了,我也能找到解决的办法,因为我知道问题可能会出在哪里。最一般的问题就是MassStorage驱动的问题,例如没有加载对应的驱动(这需要完善S&R&S和ASRTools来解决),或者加载的驱动太多,驱动之间存在不兼容问题,例如Intelide和Intelppm的问题等。如果遇到这种问题,只需要采取对应的措施即可解决。总之,暂时我还没有发现我解决不了的问题。