详解在Win2003安装光盘中集成SCSI驱动

简介:


如何在Win2003安装光盘中集成SCSI硬盘驱动

 
         我们在服务器上安装Win2003时,有时会遇到硬盘驱动导致的故障。2003操作系统已经发布多年,对近年来服务器上使用的一些新型SATASCSI控制器并不能很好地支持。由于2003内置的驱动程序无法识别新型的SCSISATA控制器,因此安装2003时会出现安装向导找不到硬盘,无法继续安装。
解决这种问题的标准方法应该是在光盘启动时根据屏幕提示按下F6键,然后安装向导会提示我们插入包含硬盘控制器驱动程序的软盘,这样安装向导就可以从软盘中加载硬盘控制器的驱动,然后就可以顺理成章地识别硬盘了。
         由于软驱已经不再是计算机上的标准配置了,因此使用软盘加载驱动的方法在无软驱的服务器上会遇到麻烦,因此今天我们将为大家另外一种解决方案,在Win2003的安装光盘中直接集成SATASCSI控制器的驱动,这样我们在安装2003时就可以不需要软驱的配合,能直接识别出硬盘了。
         我们在Vmware Workstation上为大家搭建一个实验环境,我们在Vmware Workstation6.5上创建一个虚拟机,选择的SCSI控制器类型是Buslogic,如下图所示,这种SCSI控制器并不被Win2003支持。
 
在这个虚拟机上安装Win2003,如下图所示,安装时会出现找不到硬盘的提示,预料之中的结果。
 
先把Buslogic的驱动准备好,在Vmware的安装目录下可以找到一个windows.iso文件,用虚拟光驱加载这个镜像文件,如下图所示,在虚拟光驱的Program Files\VMware\VMware Tools\Drivers\SCSI目录下可以找到Buslogic控制器的驱动程序。
 
准备好SCSI控制器的驱动后,我们来看看如何把驱动集成到2003的安装光盘中。我们先把Win2003的安装文件从光盘复制到一个文件夹中,这样有利于我们修改光盘内容。集成驱动最关键的是要修改安装光盘中的I386目录下的txtsetup.sif文件,这个文件定义了文本安装模式下2003能够识别的存储设备以及相应的驱动程序,只要控制好如下图所示的这个文件,硬盘驱动问题就好解决了。最妙的是,这个文件并不在系统保护文件的范畴内,这意味着我们可以对这个文件任意修改而不用担心遭到操作系统的阻止。这个文件我们要修改下列几部分。
 
  修改 Txtsetup.sif 中的 [SCSI]
Txtsetup.sif中的[SCSI]段定义了Win2003支持的硬盘控制器,如下图所示,我们在[SCSI]段中增加了一项VMSCSI = "VMware SCSI Controller",这项的作用是告诉Win2003,有一个名为VMSCSI的硬盘控制器也是被Windows Server 2003所支持的,而且我们还对VMSCSI控制器进行了注释,这是一个VMWare的硬盘控制器。其实就是为Buslogic控制器取名为VMSCSI
 
VMSCSI其实就是Buslogic控制器,我们对Buslogic控制器的描述其实很灵活,可以随意起名,并没有特别严格的要求。我们把Buslogic控制器描述成VMSCSI是根据Buslogic驱动程序中的txtsetup.oem文件来进行的,txtsetup.oem文件的内容如下图所示。
 
    修改 Txtsetup.sif 文件中的 [HardwareIdsDatabase]
Txtsetup.sif文件中的[HardwareIdsDatabase]用来描述被硬盘控制器的硬件ID,我们刚才修改了Txtsetup.sif文件的[SCSI]段,声明了VMSCSI这个SCSI控制器被Win2003所支持,但是,Win2003怎么知道一个硬盘控制器是不是VMSCSI呢?我们在[HardwareIdsDatabase]中写上VMSCSI控制器的硬件ID,这样就不会弄混淆了。这个硬件ID是硬件出厂时被写入的,不会更改,Windows只要查询一下硬件的ID,就可以知道这个硬件是不是Buslogic控制器。如下图所示,我们描述了VMSCSI的硬件ID
 
那我们怎么知道Buslogic的硬件ID呢?答案在Buslogic的驱动程序中,如下图所示,我们在驱动程序的txtsetup.oem文件中发现了Buslogic的硬件ID
 
   修改 Txtsetup.sif 文件的 [scsi.load]
描述了Buslogic的硬件ID后,我们就要修改[scsi.load]这一段了,这段描述了Win2003应该利用那些文件来驱动Buslogic控制器。如下图所示,我们描述了Buslogic的驱动程序应该是vmscsi.sys,前面我们已经在Buslogic的驱动中看到了这个文件。那么,vmscsi.sys后面还有一个4,这个4代表什么呢?继续向下看!
 
4代表Windows目录下的一个路径,如下图所示,在txtsetup.sif[WinntDirectories]段中我们发现4代表着windows\system32\drivers目录。这个目录我们非常熟悉,windows的驱动程序基本都放在这个目录下。
 
   修改 Txtsetup.sif 文件中的 [SourceDisksFiles]
最后要进入高潮部分了,我们要解释一下Buslogic的驱动程序vmscsi.sys到底从何而来。如下图所示还,我们在[SourceDisksFiles]中对此进行了定义,vmscsi.sys   = 1,,,,,,,4,0,0,乍一看让人莫名其妙,仔细看看其实还是可以分析的。1代表着vmscsi.sys的来源是Win2003安装光盘的I386文件夹,Why?向下看有答案。
 
如下图所示,在Txtsetup.sif[SourceDisksNames.x86]中定义了1的含义,原来1指的是安装光盘的I386文件夹。
 
接着再往下分析,vmscsi.sys   = 1,,,,,,,4,0,01之后的7个逗号代表了7个默认设置,在此我们不需要对此进行修改。4代表vmscsi.sys的目标路径,刚才我们已经提到了,是windows\system32\drivers目录。4之后的两个0代表无论是升级系统,还是全新安装的操作系统,都要把vmscsi.sys拷贝到windows\system32\drivers目录下。
修改了Txtsetup.sif文件后,如下图所示,我们用makecab命令把vmscsi.sys压缩为vmscsi.sy_,为什么要对vmscsi.sys进行压缩呢?因为Win2003默认在安装时会对文件进行解压缩操作。我们使用Ultraiso工具把vmscsi.sy_txtsetup.sif都集成到Win2003的安装光盘上,然后就可以试试效果了。
 
用集成了SCSI驱动的光盘启动虚拟机,如下图所示,我们看到集成的驱动已经发挥了作用,安装程序找到了硬盘!希望利用这篇文章,能够帮助那些被SCSI硬盘或SATA硬盘困扰的朋友,希望大家可以举一反三,早日定制出自己专用的Windows安装光盘。
 


















本文转自yuelei51CTO博客,原文链接:http://blog.51cto.com/yuelei/152101,如需转载请自行联系原作者


相关文章
|
11月前
|
XML 数据可视化 算法
我的Neo4j探索之旅 - 安装Apoc插件以及JAVA集成(二)
在可视化界面,输入return apoc.version() ,如果报错说明没安装对,显示如下页面,证明apoc 插件安装成功
303 0
|
4月前
|
NoSQL MongoDB 数据库
MongoDB【部署 03】Windows系统安装mongodb并设置用户名密码(无需安装mongosh)及SpringBoot集成报错 Command failed with error 18
MongoDB【部署 03】Windows系统安装mongodb并设置用户名密码(无需安装mongosh)及SpringBoot集成报错 Command failed with error 18
143 0
|
4月前
|
Java Linux 开发工具
MinIO【部署 01】MinIO安装及SpringBoot集成简单测试
MinIO【部署 01】MinIO安装及SpringBoot集成简单测试
124 0
|
4月前
|
监控 关系型数据库 Java
SpringBoot【集成 01】Druid+Dynamic+Greenplum(实际上用的是PostgreSQL的驱动)及 dbType not support 问题处理(附hikari相关配置)
SpringBoot【集成 01】Druid+Dynamic+Greenplum(实际上用的是PostgreSQL的驱动)及 dbType not support 问题处理(附hikari相关配置)
77 0
|
4月前
|
IDE Ubuntu 开发工具
Python(五)IDE集成开发工具pycharm安装及配置
工欲善其事,必先利其器。好的开发工具能让我们的开发速度事半功倍。 Python比较好的集成开发工具IDE,大概就是pycharm,以及万物皆可的VScode VScode具体用什么插件比较好还在研究中,今天大概先看下pycharm的安装及配置。 这里分两个系统,ubuntu及windows 一:windows安装及汉化 1 :安装 首先,去官方网站下载安装包,专业版是要花钱购买的,我这里选择的是社区版,功能没有专业版那么强大,但是基本上够用。 网址:www.jetbrains.com/pycharm/dow… 下载完成之后,一路下一步安装即可。
60 1
|
7月前
|
数据采集 IDE Java
|
9月前
|
消息中间件 负载均衡 Java
手把手教你搭建SpringCloud项目(十六)集成Stream消息驱动
手把手教你搭建SpringCloud项目(十六)集成Stream消息驱动
146 0
|
10月前
|
存储 Java Maven
如何使用Spring Cloud搭建高可用的Elasticsearch集群?详解Elasticsearch的安装与配置及Spring Boot集成的实现(下)
如何使用Spring Cloud搭建高可用的Elasticsearch集群?详解Elasticsearch的安装与配置及Spring Boot集成的实现(下)
200 0
|
10月前
|
存储 负载均衡 搜索推荐
如何使用Spring Cloud搭建高可用的Elasticsearch集群?详解Elasticsearch的安装与配置及Spring Boot集成的实现(上)
如何使用Spring Cloud搭建高可用的Elasticsearch集群?详解Elasticsearch的安装与配置及Spring Boot集成的实现
223 0
|
10月前
|
IDE Java 编译器
Java 集成开发环境 eclipse 的安装及基本使用
Java 集成开发环境 eclipse 的安装及基本使用
242 0
Java 集成开发环境 eclipse 的安装及基本使用