5

Это похоже на этот вопрос, но для AMD (или вообще для всего оборудования, если такое решение существует).

Windows 7 устанавливается с контроллером SATA в режиме AHCI. После этого я добавил еще два жестких диска для использования в качестве пары RAID.

Это привело к известной уловке-22:

  • Если я включу режим RAID в BIOS, Windows не загрузится из-за отсутствия драйвера RAID.
  • Если я по-прежнему загружаюсь в режиме AHCI, Windows не позволит установить драйвер RAID, так как отсутствует контроллер RAID.

Как я могу заставить Windows установить драйвер, когда соответствующее оборудование отсутствует?

В моем случае драйвер представляет собой простой пакет файлов INF, SYS и CAT.

6 ответов6

4

ОК, как я уже сказал, я решил проблему. Поскольку я сделал несколько попыток, я не могу быть уверен, какие шаги необходимы, а какие нет, поэтому я перечислю все, что сделал.

Во-первых, ситуация:

  • ПК с чипсетом AMD SB820M - 4 порта SATA/RAID (теперь я буду называть этот контроллер "контроллером RAID")
  • один жесткий диск, подключенный к RAID-контроллеру
  • дополнительный контроллер IDE/SATA с 2 портами (для eSATA и оптического привода, я полагаю) (отныне "контроллер IDE")
  • RAID-контроллер установлен в режим AHCI, Windows 7 установлена на первом (и только) HD

Затем:

  • Я добавил еще 2 жестких диска (подключил их к портам контроллера RAID), установил режим контроллера RAID на RAID и настроил несколько массивов RAID на 2 новых HD (все это в настройке BIOS)
  • попытаться загрузить Windows, это не удается (он перезагружается при запуске, сообщение об ошибке не отображается)

  • Я установил режим контроллера обратно на AHCI

  • загрузка Windows (работает)

Теперь подвох (часть первая):

  • Я выбрал (неиспользованный) контроллер IDE в качестве козла отпущения для драйвера RAID
  • в диспетчере устройств я посмотрел PCI ID контроллера IDE (это был 439C) (выберите « Свойства» на контроллере, идентификаторы находятся на вкладке « Подробности» в разделе «HardwareId» в выпадающем меню)
  • В INF-файле драйвера RAID (ahcix86s.inf) я добавил строку с этим идентификатором:

до:

%NapaDesc%=Napa_Inst,PCI\VEN_1002&DEV_4392
%NapaDesc%=Napa_Inst,PCI\VEN_1002&DEV_4393

после:

%NapaDesc%=Napa_Inst,PCI\VEN_1002&DEV_4392
%NapaDesc%=Napa_Inst,PCI\VEN_1002&DEV_4393
%NapaDesc%=Napa_Inst,PCI\VEN_1002&DEV_439C
  • затем в Диспетчере устройств я выбрал "Обновить драйвер контроллера IDE", "позвольте мне выбрать драйвер", "У меня есть диск" и выберите указанный выше INF-файл, а затем драйвер.

  • перезагрузите компьютер, установите режим контроллера RAID на RAID в BIOS

  • загрузка Windows, снова не удается, так же, как и раньше
  • вернуть режим RAID-контроллера обратно в AHCI в BIOS
  • запустить Windows

Хитрость (часть вторая):

  • запустите "regedit" и в ключе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\pci # ven_1002 & dev_4392 измените значение Service на ahcix86s (см. примечание ниже)
  • перезагрузите, в BIOS измените режим снова на RAID
  • загрузите Windows
  • успех!

(после того, как это сработало, я снова перешел в «Управление устройствами» и вернул драйвер для IDE-контроллера на правильный: обновить драйвер, выбрать автоматически ...)

* 1002/4392 - это идентификатор PCI контроллера RAID, если он установлен в режим RAID. Он указан в упомянутом INF-файле. Вы также можете попробовать найти его на этом веб-сайте. Самая надежная информация - установить контроллер в режим RAID, загрузить некоторые ОС (Linux поставляется в небольших удобных форматах) и проверить идентификатор PCI там. В Linux команда lspci показывает эту информацию.

2

Просто решил эту "проблему", используя альтернативный метод. У меня есть материнская плата Gigabyte 990-FXA-UD3 с южным мостом AMD SB950. Моя материнская плата имеет 6 портов SATA. Одна из опций в биосе состояла в том, чтобы установить режим порта SATA 4/5 на «ОДИН ЖЕ 0-3» или "Режим IDE".

Что я сделал, так это включил RAID на портах 0-3, но перевел PORTS 4-5 в режим IDE. Я переместил свой диск ОС из порта 0 в порт 5 и загрузился. После того, как все загрузилось правильно, я зашел в диспетчер устройств и увидел желтый предупреждающий значок рядом с устройством SATA RAID. Я щелкнул правой кнопкой мыши, обновил драйверы до драйверов, которые я скачал с гигабайта, и через несколько секунд магические диски, которые были у меня на портах 1 и 2, волшебным образом появились.

Выключите снова, переместите диск C:\ с порта SATA 5 на порт SATA 0. Загрузился, все заработало.

В основном я думаю, что мне нужен был способ заставить Windows правильно установить драйвер RAID. Как только он был там, я мог загружаться с него. Не уверен, есть ли у других возможность установить порт 4/5 в режим IDE, но если вы это сделаете, то этот метод будет работать.

1

Вы пытались пойти на:

Панель управления> Диспетчер устройств> Щелкните верхний элемент и щелкните правой кнопкой мыши> Добавить устаревшее оборудование> Далее> Установите оборудование, которое я вручную выбрал из списка (Дополнительно)> Контроллеры хранилища> Далее> Иметь диск

Затем перейдите к своему драйверу и введите его. Когда вы внесете изменения и перезагрузите компьютер, драйвер будет там для автоматического поиска нового устройства.

1

Вы можете решить эту проблему, используя временную плату контроллера SATA:

  • установить плату контроллера,
  • подключите накопитель на МБ и загрузите Windows,
  • при необходимости установите контроллер драйверов,
  • выключите компьютер, подключите диск к плате контроллера и установите режим SATA на RAID в BIOS МБ,
  • перезагрузите компьютер и установите драйверы RAID.
  • Теперь вы можете снова отключиться и снова подключить диск к МБ.
0

Для Windows 7 Pro я установил контроллер AHCI. Я использовал Highpoint Rocket 620A и подключил к нему свой жесткий диск SATA OS.

Я загрузил ПК, зашел в BIOS и изменил конфигурацию SATA на RAID, затем сохранил изменения и перезагрузился. Windows 7 загрузилась с моего HighPoint в AHCI.

Оказавшись в ОС, я установил драйвер RAID (он уже просил его найти новое оборудование). Вместо этого он попросил меня перезагрузиться. Я выключил, удалил карту и снова поместил ОС на порт RAID SATA 0 и загрузил ОС без проблем.

0

Вы можете подготовить Windows к новому драйверу хранилища при следующей перезагрузке с помощью этой команды:

 rundll32.exe setupapi.dll,InstallHinfSection DefaultInstall 132 %~dp0NewDrv.inf

Следующее было протестировано на Windows Server 2016, который был установлен с SATA в режиме AHCI. Когда я изменил режим контроллера SATA на RAID в BIOS, Windows загрузилась в синий экран: недоступное загрузочное устройство

Чипсет: Intel C232 (я думаю, что это будет работать и с C236 и более). Идентификатор устройства этого контроллера SATA RAID - 2826

Решение:

1: сделать USB-ключ, в моем случае у меня был GPT-раздел.

2: Скопируйте драйверы на ключ. В моем случае это было: -iastora.cat -iaStorA.inf -iaStorA.sys

3. Я создаю файл install.cmd со следующим содержимым: rundll32.exe setupapi.dll, InstallHinfSection DefaultInstall 132% ~ dp0iaStorA.inf

Запустите Windows в безопасном режиме с помощью командной строки (F8, если вы можете сделать вовремя!). Запустил install.cmd и перезагрузился.

Windows теперь загружается с этим драйвером RAID :-)

Дополнительная информация (devcon.exe):

Чтобы найти идентификатор устройства, который может понадобиться для поиска правильного драйвера (идентификатор устройства указан в inf-файле), вы можете использовать консоль util devcon.exe (инструментальная часть пакета MS Windows Driver Kit). У меня есть копия здесь. Если ваш контроллер хранилища подключен к компьютеру, он будет находиться в классе устройств SCSIAdapter или HDC.

Для просмотра списка всех устройств в этих классах используйте следующие команды:

devcon listclass SCSIAdapter

или же

devcon listclass HDC

Пример результата:

ePCI\VEN_8086&DEV_1E03&SUBSYS_21FB17AA&REV_04\3&21436425&0&FA: Intel(R) 7 Series Chipset Family SATA AHCI Controller

В этом примере идентификатор устройства - DEV_ 1E03 или просто 1E03. Если вы можете найти 1E03 в своем inf-файле, вы знаете, что у вас есть подходящий драйвер :-)

(Кредиты команде IBM Thinkpad .....В пакеты драйверов IBM SATA был включен этот скрипт install.cmd. И, к моему удивлению, он все еще работает на Windows 10/Srv. 2016)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .