很多内容和方式来自网路,在此只是记录一下
本人使用的是win2003 r2座文件服务器,使用sp2也可以只是,r2里面有文件服务器资源管理器及其他
首先解压win2k3 r2 cd1 到一个目录。目录完整路径不能含有中文字符。
—以下内容来自http://www.jb51.net/os/windows/Win2003/35317.html
七大步骤:
一、复制Windows 2003安装目录.
二、准备驱动程序文件.
三、编辑“txtsetup.sif”文件(1).
四、编辑“txtsetup.sif”文件(2).
五、修改“winnt.sif”文件内容.
六、将RAID驱动压缩到安装文件.
七、重新生成安装光盘.
为了不再让Win2003的安装过程需要通过软盘加载RAID驱动程序,很多人都梦想将主板的RAID驱动程序集成到安装光盘中,本文就来DIY一张集成RAID驱动程序的Windows 2003安装光盘!
一、复制Windows 2003安装目录
打开资源管理器,在一个拥有足够磁盘空间(空闲空间至少为700MB;如果将生成后的光盘镜像也放在该分区,则应当保证有一张光盘的双倍容量的空间,即1.4GB左右)的硬盘分区上创建一个文件夹,比如“D:\w2003RAID\”,用于保存Windows 2003的全部安装文件。
把一张完好的Windows 2003安装光盘[下载]放入光驱,在资源管理器中将光盘中的文
件全部选定,再复制到“D:\w2003RAID\”目录中。
二、准备驱动程序文件
一般随主板附送的驱动程序安装光盘中都有RAID的驱动程序。打开光盘目录,寻找名称中含有“SATA”或“RAID”字符的文件夹;也可在主板制造商的网站或其它驱动程序下载站点(如:驱动之家等)寻找与自己的主板芯片组相匹配的RAID驱动程序。
[注意]Intel S5000PSLSAS型号的主板,不是每个版本都能支持Intel四核处理器,得803以上版本才行。而且,Intel S5000PSLSAS 803版本主板盒装光盘的SAS RAID驱动,对RAID支持不好,如用此驱动安装Windows 2003系统,一般在例如最后10分钟及3分钟的时候就装不下去了!所以必须下载最新版本的驱动,这是下载地址。
下载解压后,对Windows 2003而言,只需要ESRT2_Windows_v_07_15_0209_2007_WHQL\windows_xp_2003_x86文件夹下的文件。
在D:\w2003RAID目录下依次建立新的目录D:\w2003RAID\$OEM$\$1\drivers\IntelMegaSR\,然后将下载解压得到的文件中windows_xp_2003_x86文件夹中的9个文件全部拷贝到这个目录下(也就是D:\w2003RAID\$OEM$\$1\drivers\IntelMegaSR目录下,[注意]这个目录中,\$OEM$\$1不可以以其它名称命名,必须照抄此处,因为这涉及到后面“OemPnPDriversPath=drivers\IntelMegaSR”代码对这些文件地址的指向。Drivers目录下,除了IntelMegaSR这个目录,还可以根据需要增加其他的驱动目录)。
这里我们是以MegaSR的RAID驱动程序为例进行介绍。其它类型的RAID驱动程序的集成步骤几乎完全相同,所不同的仅仅是驱动程序文件名的不同而已。
在这个“\IntelMegaSR”的文件夹中,一定会有一个扩展名为“.inf”或“.oem”的小文件,如“oemsetup.inf”或者“txtsetup.oem”等(本例中为“txtsetup.oem”),用记事本程序打开它,随后要用!
就Intel的这款驱动,共有9个文件,列举如下:
dpinst.xml
MegaSR
MegaSR.cat
MegaSR.INF
megasr.md5
megasr.sys
megasr2k.sys
nodev.inf
txtsetup.oem
补充说明:如果文件夹下还有文件夹,不要动它,原来是什么样就是什么样,比如myraid\win32\
三、编辑“txtsetup.sif”文件(1)
打开“D:\w2003RAID\I386”文件夹,找到一个名为“txtsetup.sif” 的文件,这是Windows 2003在安装时加载驱动程序的信息文件,用记事本程序打开它。
按“Ctrl+F”快捷键,打开查找对话框,以“[SourceDisksFiles]”为关键字进行查找。
找到这个字段后,其下面已经存在一些内容(图1)。
图1
再以“[”为关键字查找到这个字段的末尾(注意:不是整个文件内容的末尾),添加以下内容:“MegaSR.sys = 1,,,,,,3_,4,1,,,1,4”(图2)。
图2
这里的“MegaSR.sys = 1,,,,,,3_,4,1,,,1,4”是描述驱动程序所在位置的代码。代码的格式为“filename_on_source=diskid,subdir,upgradecode,newinstallcode,spare,spare,newfilename”,在“txtsetup.sif”文件中的“[SourceDisksNames]”和“[WinntDirectories]”等字段中有详细的描述。有兴趣的朋友可以深入研究其它目录的对应关系,这里仅简单介绍。
图3
在实际操作时,绝对不可以照搬代码!特别是扩展名为sys的文件“MegaSR.sys”,它是RAID驱动程序目录“D:\w2003RAID\$OEM$\$1\drivers\IntelMegaSR\”中的驱动程序文件名,如果您的RAID驱动程序与本文所述的不同,则只需换成目录中相应的文件即可。而等号后面的代码,一般可以直接照抄使用。
四、编辑“txtsetup.sif”文件(2)
切换到前面打开的“txtsetup.oem”文件,以“[HardwareIds.”为关键字进行搜索,应该可以找到类似“[HardwareIds.SICS.MegaSR]”的字段(注意不是[HardwareIds.scsi.MegaSR2K],它是WINDOWS 2000的驱动)。
图4
该字段下的代码如:“id=”PCI\VEN_8086&DEV_27c3&SUBSYS_10a51734″, “MegaSR””。 切换到刚才打开的“txtsetup.sif”文件窗口中,以“[HardwareIdsDatabase]”为关键字进行搜索。找到后,将“txtsetup.oem”文件中“[HardwareIds.scsi.MegaSR]”字段下的代码拷贝到“txtsetup.sif”文件的“[HardwareIdsDatabase]”字段末尾。不过,我们需要更改一下代码的格式,如将“id=”PCI\VEN_8086&DEV_27c3&SUBSYS_10a51734”, “MegaSR””改为:“PCI\VEN_8086&DEV_27c3&SUBSYS_10a51734 = “MegaSR””(其他代码修改方法相同),更改后的代码如下:
PCI\VEN_8086&DEV_27c3&SUBSYS_10851734 = “MegaSR”
PCI\VEN_8086&DEV_27c3&SUBSYS_10a51734 = “MegaSR”
PCI\VEN_8086&DEV_27c3&SUBSYS_27c08086 = “MegaSR”
PCI\VEN_1000&DEV_0054&SUBSYS_10001000 = “MegaSR”
提示:不同RAID驱动程序的代码内容各不相同,应该根据具体情况灵活处理。
检查拷贝修改的内容是否与原有的内容重复,如果有,则把重复的一行删除。接着在“txtsetup.sif”文件查找“[SCSI.load]”和“[SCSI]”字段,添加如下内容:
[SCSI.load]
MegaSR = MegaSR.sys,4
等号前的字符根据驱动酌情更改,等号MegaSR后代码一般照抄使用。
图5
[SCSI]
MegaSR = “Intel Embedded Server RAID Technology (Windows XP/2003)”
图6
[注意]此信息是从驱动的txtsetup.oem文件(或.INF文件)[SCSI]字段中获取,如下图:
图7
至此,我们就把自己的RAID驱动程序的相关信息添加到了Windows 2003安装信息文件“txtsetup.sif”中了!上述添加自定义RAID信息内容的步骤看似很复杂,其实也就是同时打开Windows 2003安装文件目录中的“txtsetup.sif”文件和驱动程序目录中的“.inf”或“.oem”信息文件,然后将后者文件中相关字段下面的内容一一对应地移植到“txtsetup.sif”文件中。知道了方法,做起来就容易了!
五、修改“winnt.sif”文件内容
现在,我们已经完成了两个最重要的步骤:一是获取了RAID驱动程序文件,它们现在被保存在“D:\w2003RAID\$OEM$\$1\drivers\IntelMegaSR”文件夹中;二是修改了Windows 2003安装时自动加载驱动程序的信息文件“txtsetup.sif”。但现在有一个新的问题:Windows 2003在安装时如何知道它所需要的驱动程序文件在哪个目录下呢?
这个问题则需要通过修改“winnt.sif” 这个文件来解决。这个文件是Windows 2003系统在安装时的附加信息文件,可以在其中指定非微软提供的第三方驱动程序的安装路径。用Windows Setup Manager Utility创建 unattend.txt 文件, 重命名文件为winnt.sif 并复制到D:\w2003RAID\i386 目录下。下图中 OemPnpdriverPath 一行添加所有PnP 驱动路径[本例是:“OemPnPDriversPath=drivers\IntelMegaSR”,如果不止一个驱动,请用半角分号分隔,如:“OemPnPDriversPath=drivers\IntelMegaSR;drivers\IntelSAS;drivers\AC97”]。并确保[Unattended]项下的OemPreinstall等于Yes(OemPreinstall=Yes)。请见图8。
图8
“OemPnPDriversPath=drivers\IntelMegaSR”这段代码是指随后生成光盘时,驱动程序相对于光盘根目录所在的相对路径。如果我们打算把保存驱动程序的文件夹如IntelMegaSR放到新生成的安装光盘的根目录,就不必包含任何子目录路径:OemPnPDriversPath= “IntelMegaSR”。
[注意]可以从 Windows 2003 Server 光盘的Supports\Tools文件夹下的Deploy.cab 文件解压得到Setup Manager utility。Setup Manager 可以引导创建unattend.txt 文件。注意,请用记事本编辑unattend.txt文件。
另外要提醒的一个小点是,[Data]字段下的AutoPartition的值最好更改为0(AutoPartition=0),因为这样我们在安装系统的时候可以手工选择安装分区,而且在需要格式化该分区时,可以先删除该分区,再重建分区,然后格式化;而此值一般默认是1,如果这样,在安装时程序会自动随机选择一个有足够空间的分区安装,且不对该分区格式化。请看图9:
图9
全部修改完毕后,用记事本保存文件时,一定要输入完整的文件名,并且一定要用半角的双引号将文件名引起来,如“”winnt.sif””,否则实际上生成的仍然是个文本文件(Winnt.sif.txt),这将导致安装过程中出错,RAID驱动程序无法自动加载!当然也可以在让系统显示文件扩展名的情况下将文件名更改为“winnt.sif”,以确保文件后缀名的正确无误!
六、将RAID驱动压缩到安装文件
使用支持CAB文件格式的工具(如WinRAR等),将驱动程序目录中扩展名为SYS的文件压缩到I386目录下。
这里我们可以使用Windows 2003本身附带的一个命令行工具“makecab.exe”,它位于“C:WINDOWS\System32”目录下。由于“System32”是默认的搜索路径,因此使用时不需要程序所在的路径。
在开始菜单中打开“运行”对话框,输入cmd命令,再在DOS提示符下运行以下命令:makecab d:\w2003raid\$oem$\$1\drivers\intelmegasr\megasr.sys d:\w2003raid\i386\megasr.sy_(此处为便于截图,可以直接输入“运行”对话框运行)
此命令运行的结果是在i386\文件夹下生成一个名为megasr.sy_的文件,这个文件是用来加载驱动的!
图10
此命令中具体的驱动程序文件名和保存路径请根据实际情况灵活更改。
—–文章后面要重新生成安装光盘,在此我们可以省略,因为即使生成光盘并写入U盘也不能安装成功,至少我没成功。
下载WinSetupFromUSB-1-7.exe

我们只选择1个2003就可以,点击后面的按钮,选择上一步集成raid驱动的win2003目录,点击GO。等待写入U盘。完成后就可以。
设置BIOS启动顺序,U盘第一启动。
U盘启动后,回出来启动项只有一个win2003回车进入。
会有四个选项,选择第一项,再选第三项开始安装win2003.
注意
一下内容及图片来自https://wenku.baidu.com/view/16ca5538376baf1ffc4fad02.html
win2003开始安装后会有提示F6加载raid驱动。

按完”F6″,后,安装程序会继续加载模块。这是正常的。过一会儿后,您将会看到以下信息:Setup could not determine the type of one or more mass storage devices installed in your system, or you have chosen to manually specify an adaptor.

按”S” 键加载指定设备驱动程序。
正常 ‘S’->’回车’->’S’->’回车’->’S’->’回车’
回车开始安装win2003,其他正常。