Этот документ описывает, как вручную интегрировать драйверы SATA, RAID, SCSI и других контроллеров накопителей на жестких дисках в дистрибутив Windows XP или Windows 2003, которые будут загружены при инициализации программы установки Windows в текстовом режиме (на синем экране).
Обычно, это действие требуется, если ваш дистрибутив не содержит необходимых драйверов контроллеров и программа установки не может найти накопитель на жестких дисках, на который вы хотите установить Windows. Обычный путь для решения этой проблемы - использование гибкого диска с драйверами. Выполнив действия, описанные в этом документе, можно обойтись без устаревшего гибкого диска 3.44" или 5.25" во время установки.
Будет рассмотрена интеграция вручную на примере драйверов наиболее распространенного контроллера SiI 3112.
Этап первый. Подготовка файлов и папок.Создайте структуры папок, в которой вы будите работать и подготовьте файлы. Например, создайте папки поместите соответствующие файлы:
D:\Windows Drivers\Windows CD\ - в эту папку необходимо скопировать содержимое вашего дистрибутива Windows XP или 2003
D:\Windows Drivers\Drivers\ - в эту папку необходимо распаковать/скопировать ваш пакет с драйверами, полученными в web узла производителя или с прилагаемого к устройству компакт-диска.
Этап второй. Обработка файлов драйвера контроллера.На этом этапе нужно удалить ненужные файлы из каталога с драйверами контроллера. Удалите все файлы,
не удовлетворяющие этим условиям:
- набор файлов с одинаковым именем, но разным расширением, содержащий файл .sys.
- расширение файла inf или sys
Должны остаться только следующие файлы (на примере SiI 3112):
Code:
si3112r.inf
si3112r.sys
Возможно, у вас будет несколько групп таких файлов для вашего контроллера.
Теперь необходимо скопировать файлы драйверов в каталог i386 вашего дистрибутива Windows - скопируйте файлы с расширением .sys из папки D:\Windows Drivers\Drivers\ (в которой вы сейчас работаете) в D:\Windows Drivers\Windows CD\i386\. Пока не удаляйте их.
Допускается упаковать файлы в cab архив во время переноса. Для этого для переноса для каждого файла выполните команду (вместо копирования) в консоли Windows:
Code:
makecab "D:\Windows Drivers\Drivers\si3112r.sys" "D:\Windows Drivers\Windows CD\i386\si3112r.sy_"
Принципиальной разницы между переносом и переносом с архивированием нет. Все будет работать как в том, так и в другом случае.
Этап третий. Редактирование списка файлов дистрибутива Windows.На этом этапе требуется включить скопированные файлы в список файлов дистрибутива программы установки Windows.
С помощью простого текстового редактора, такого, как блокнот из стандартной поставки Windows, отредактируйте несколько файлов:
Откройте файл файл txtsetup.sif и найдите текцию [SourceDisksFiles], для каждого файла c расширением .sys, перенесенного или упакованного вами, добавьте строку, подобную этой, в секцию [SourceDisksFiles]:
Code:
<имя файла с расширением> = 1,,,,,,3_,4,1
Например,
Code:
si3112r.sys = 1,,,,,,3_,4,1
В имени файла следует использовать не сжатое имя, если вы проводили сжатие.
Пока не закрывайте файл txtsetup.sif.
Откройте файл dosnet.inf и добавьте строки, подобные этой, в секции [FloppyFiles.2] и [Files] для каждого .sys файла
Code:
d1,<имя файла с расширением>
Например,
В имени .sys файла также следует использовать не сжатое имя, если вы проводили сжатие.
После редактирования можете зарыть файл dosnet.inf.
Этап четвертый. Конфигурирование программы установки WindowsПерейдите в секцию [SCSI.load] файла txtsetup.sif и задайте имена для каждого файла драйвера
Code:
<имя файла> = <имя файла с расширением>,4
Например,
Code:
si3112r = si3112r.sys,4
Перейдите в секцию [SCSI] и задайте выводимое на экран имя для каждого драйвера. Имя может быть любым, но лучше всего будет использовать имя из файла .inf, о котором написано ниже.
Code:
<имя файла> = "<выводимое на экран имя>"
Например,
Code:
si3112r = "Silicon Image SiI 3112 SATARaid Controller"
Откройте по очереди файлы .inf, находящиеся в папке D:\Windows Drivers\Drivers\ и для каждого из них выполните следующие действия (выполнение ассоциации ID оборудования и файла драйвера, по этой строке программа установки Windows узнает, для какого контроллера какой загружать драйвер):
- В каждом из файлов .inf найдите строки, начинающиеся на PCI\VEN_ (все остальные строки и строки, начинающиеся на % (символ процентов) проигнорируйте)
- Для каждой такой строки скопируйте ее первую часть, до символа точки, и поместите в файл txtsetup.sif, в секцию [HardwareIdsDatabase], указав файл драйвера, для которого вы добавляете эту строку. Имя указывается без расширения.
Пример трехшагового формирования строки:
Code:
Исходная строка
1. PCI\VEN_1095&DEV_3112.DeviceDesc = "Silicon Image SiI 3112 SATARaid Controller"
Удаление символов, после точки, включая точку
2. PCI\VEN_1095&DEV_3112
Добавление ассоциации ID оборудования и файла драйвера
3. PCI\VEN_1095&DEV_3112 = "si3112r"
Третья строка добавляется в секцию [HardwareIdsDatabase]
Теперь файл txtsetup.sif можно сохранить и закрыть. Вы закончили интеграцию драйверов контроллера накопителей на жестких дисках для использования во время текстового этапа установки.
Редакция 1