天天看點

(2)制作windows 2003自動安裝盤-內建更新檔/Raid及硬體驅動 1. 修改[SourceDisksFiles]參數

二.編輯“txtsetup.sif”檔案

打開“E:\dell\I386”檔案夾,找到一個名為“txtsetup.sif” 的檔案,這是Windows 2003在安裝時加載驅動程式的資訊檔案,用寫字闆程式打開它。按“Ctrl+F”快捷鍵,打開查找對話框,以“<b>[SourceDisksFiles]</b>”為關鍵字進行查找。找到這個字段後,其下面已經存在一些内容

再以“[”為關鍵字查找到這個字段的末尾(注意:不是整個檔案内容的末尾),添加以下内容:“lsi_sas.sys   = 1,,,,,,3_,4,1,,,1,4      percsas.sys = 1,,,,,,3_,4,1,,,1,4”

lsi_sas.sys = 1,,,,,,3_,4,1,,,1,4 (dell-1950-raid)

percsas.sys = 1,,,,,,3_,4,1,,,1,4 ((dell-2950-raid))

這裡的“lsi_sas.sys = 1,,,,,,3_,4,1,,,1,4”是描述驅動程式所在位置的代碼。代碼的格式為“filename_on_source=diskid,subdir,upgradecode,newinstallcode,spare,spare,newfilename”,在“txtsetup.sif”檔案中的“[SourceDisksNames]”和“[WinntDirectories]”等字段中有詳細的描述。

在實際操作時,絕對不可以照搬代碼!特别是擴充名為sys的檔案“lsi_sas.sys”,它是RAID驅動程式目錄“D:\w2003RAID\$OEM$\$1\drivers\ sas_raid\r194052 ”中的驅動程式檔案名,如果您的RAID驅動程式與本文所述的不同,則隻需換成目錄中相應的檔案即可。而等号後面的代碼,一般可以直接照抄使用。

拷貝txtsetup.oem—[HardwareIds.scsi.MegaSR]中參數添加到txtsetup.oem--- [HardwareIdsDatabase]中,首先切換到前面打開的“txtsetup.oem”檔案,以“[HardwareIds.”為關鍵字進行搜尋,應該可以找到類似“[HardwareIds.SICS.MegaSR]”的字段

該字段下的代碼如:<b>id = "PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F041028", "lsi_sas"</b>。

切換到剛才打開的“txtsetup.sif”檔案視窗中,以“[HardwareIdsDatabase]”為關鍵字進行搜尋。找到後,将“txtsetup.oem”檔案中“[HardwareIds.scsi.MegaSR]”字段下的代碼拷貝到“txtsetup.sif”檔案的“[HardwareIdsDatabase]”字段末尾。這裡直接搜尋[Map.Computer]

就是[HardwareIdsDatabase]末尾,不過,我們需要更改一下代碼的格式,如将:

“id = "PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F041028", "lsi_sas"”

改為:<b>“</b><b>PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F041028</b><b> = "</b><b> lsi_sas</b><b> "</b>”(其他代碼修改方法相同),

 更改後的代碼如下:

"PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F041028" = "lsi_sas"

"PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F061028" = "lsi_sas"

"PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F071028" = "lsi_sas"

"PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F081028" = "lsi_sas"

"PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F091028" = "lsi_sas"

"PCI\VEN_1000&amp;DEV_0058&amp;SUBSYS_1F0E1028" = "lsi_sas"

"PCI\VEN_1000&amp;DEV_0058&amp;SUBSYS_1F0F1028" = "lsi_sas"

"PCI\VEN_1000&amp;DEV_0058&amp;SUBSYS_1F101028" = "lsi_sas"

"PCI\VEN_1000&amp;DEV_0058&amp;SUBSYS_021D1028" = "lsi_sas"

"PCI\VEN_1028&amp;DEV_0015&amp;SUBSYS_1F011028" = "percsas"

"PCI\VEN_1028&amp;DEV_0015&amp;SUBSYS_1F021028" = "percsas"

"PCI\VEN_1028&amp;DEV_0015&amp;SUBSYS_1F031028" = "percsas"

"PCI\VEN_1000&amp;DEV_0060&amp;SUBSYS_1F0A1028" = "percsas"

"PCI\VEN_1000&amp;DEV_0060&amp;SUBSYS_1F0B1028" = "percsas"

"PCI\VEN_1000&amp;DEV_0060&amp;SUBSYS_1F0C1028" = "percsas"

"PCI\VEN_1000&amp;DEV_0060&amp;SUBSYS_1F0D1028" = "percsas"

"PCI\VEN_1000&amp;DEV_0060&amp;SUBSYS_1F111028" = "percsas"

<b>提示</b>:不同RAID驅動程式的代碼内容各不相同,應該根據具體情況靈活處理。

檢查拷貝修改的内容是否與原有的内容重複,如果有,則把重複的一行删除。

接着在“txtsetup.sif”檔案查找“[SCSI.load]”和“[SCSI]”字段末尾添加如下内容:

<b>[SCSI.load]</b>

<b>lsi_sas = lsi_sas.sys,4</b>(等号前的字元根據驅動酌情更改,等号lsi_sas後代碼一般照抄使用)<b></b>

具體操作如下:

cpqarry2 = cpqarry2.sys,4

symmpi = symmpi.sys,4

perc2 = perc2.sys,4

hpn = hpn.sys,4

cbidf2k = cbidf2k.sys,4

dac2w2k = dac2w2k.sys,4

dellcerc = dellcerc.sys,4

hpt3xx = hpt3xx.sys,4

cpqcissm = cpqcissm.sys,4

hpcisss = hpcisss.sys,4

afcnt = afcnt.sys,4

<b>lsi_sas = lsi_sas.sys,4</b>

<b>percsas = percsas.sys,4</b>

[BootBusExtenders.Load]

pci      = pci.sys

acpi     = acpi.sys

isapnp   = isapnp.sys

acpiec   = acpiec.sys

ohci1394 = ohci1394.sys

<b>[SCSI]</b>

末尾添加<b>lsi_sas      = "Dell SAS 5x and SAS 6x Controller Driver (Windows Server 2003 32-bit)"</b>

ql10wnt  = "QLogic PCI SCSI Host Adapter"

ql1080   = "Qlogic QLA1080, 64 bit PCI LVD SCSI HBA"

ql1280   = "Qlogic QLA1280, 64 bit PCI LVD SCSI HBA"

ql12160  = "QLogic QLA12160, 64 bit PCI DUAL 160M SCSI HBA"

ql2100   =  "QLogic QLA2000/QLA2100 PCI Fibre Channel Adapter"

ql2200   =  "QLogic QLA2200 PCI Fibre Channel Adapter"

ql2300   =  "QLogic QLA2300 PCI Fibre Channel Adapter"

sym_hi   = "LSI Logic C896 PCI SCSI Host Adapter"

sym_u3   = "LSI Logic C1010 PCI SCSI Host Adapter"

symc810  = "LSI Logic C8100 PCI SCSI Host Adapter"

symc8xx  = "LSI Logic C8xx PCI SCSI Host Adapter"

symmpi   = "LSI Logic PCI Fibre Channel/LSI Logic PCI-X Ultra320 SCSI Host Adapter"

hpn      = "Hewlett Packard NetRAID-4M RAID Controller"

perc2    = "Dell PERC 2/3 RAID Controller"

perc2gat = "Dell PERC 2/3 RAID Controller (Gatling)"

<b>lsi_sas    = "Dell SAS 5x and SAS 6x Controller Driver (Windows Server 2003 32-bit)"</b>

<b>percsas  = "DELL PERC5 and PERC6/CERC6 RAID Controller Driver (Server 2003 32 bit)"</b>

[BootBusExtenders]

pci      = "PCI Bus Driver",files.pci,pci

acpi     = "ACPI Plug &amp; Play Bus Driver",files.acpi,acpi

isapnp   = "ISA Plug &amp; Play Bus Driver",files.isapnp,isapnp

acpiec   = "ACPI Embedded Controller Driver",files.none,acpiec

ohci1394 = "IEEE 1394 Bus OHCI Compliant Port Driver",files.ohci1394,ohci1394

<b>[</b><b>注意]</b>此資訊是從驅動的txtsetup.oem檔案(或.INF檔案)[SCSI]字段中擷取,如下圖:

scsi = DELL_SAS_2K3

[scsi]

# This section lists the options available for a particular component.

#

# &lt;id&gt; is the unique string for the option

# &lt;description&gt; is a text string, presented to the user in a menu

# &lt;key_name&gt; gives the name of the key to be created for the component in

#   HKEY_LOCAL_MACHINE\ControlSet001\Services

<b>DELL_SAS_2K3 = "Dell SAS 5x and SAS 6x Controller Driver (Windows Server 2003 32-bit)",lsi_sas</b>

[HardwareIds.scsi.DELL_SAS_2K3]

id = "PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F041028", "lsi_sas"

id = "PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F061028", "lsi_sas"

id = "PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F071028", "lsi_sas"

id = "PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F081028", "lsi_sas"

id = "PCI\VEN_1000&amp;DEV_0054&amp;SUBSYS_1F091028", "lsi_sas"

id = "PCI\VEN_1000&amp;DEV_0058&amp;SUBSYS_1F0E1028", "lsi_sas"

至此,我們就把自己的RAID驅動程式的相關資訊添加到了Windows 2003安裝資訊檔案“txtsetup.sif”中了!

上述添加自定義RAID資訊内容的步驟看似很複雜,其實也就是同時打開Windows 2003安裝檔案目錄中的“txtsetup.sif”檔案和驅動程式目錄中的“.inf”或“.oem”資訊檔案,然後将後者檔案中相關字段下面的内容一一對應地移植到“txtsetup.sif”檔案中。知道了方法,做起來就容易了!

    本文轉自viong 51CTO部落格,原文連結:http://blog.51cto.com/viong/226240

,如需轉載請自行聯系原作者

繼續閱讀