Однажды на работу привезли новый сервер. Назывался он Fujitsu-Siemens PRIMERGY RX-300. На предыдущий сервер Fujitsu-Siemens PRIMERGY TX-150 ALT Linux Master 2.2 встал «на ура», поэтому граблей при установке не ожидалось.
В реальности всё оказалось куда хуже. Инсталлятор диски не увидел. После
выяснения подробностей оказалось, что RX-300 поставляется
с контроллером Adaptec AIC-7902W, в отличие от
TX-150, в котором установлен контроллер на Adaptec
AIC-7901X. Об этих контроллерах было прочитано и услышано много
нелестных отзывов, например здесь.
Приводились мнения от «RAID должен быть хардварным, потому
что при этом не расходуется процессорное время» до
«HostRAID — полное гавно и лучше сделать нормальный
Software-RAID». Скажу сразу, что я склоняюсь ближе к
последнему мнению и считаю HostRAID поделкой вроде winmodem'ов.
Поставить ALT Linux Master 2.2 на вышеуказанный
контроллер можно, для этого необходимо подсунуть ядру инсталлятора в режиме
установки Expert обновленные модули
scsi_mod.o
и aic79xx.o.
Указанные драйвера нужно записать на дискету с файловой системой
ext2 и подсунуть инсталлятору.
Но после установки нас ожидает еще одно разочарование — на
компакт-дисках находится старое ядро, в котором нет обновленной версии драйвера
aic79xx.o, поэтому прежде чем нажать финальное «OK»
в инсталляторе нужно поставить в свежеустановленную систему обновленное
ядро, которое нужно собрать самостоятельно заранее.
P.S. Ядро в инсталляторе — это ни что иное, как дистрибутивное
2.4.20-alt5-boot, собранное под архитектуру
i386. Чтобы иметь возможность подсунуть инсталлятору любой
драйвер от интересующей вас железяки, нужно взять с дистрибутивных дисков
файл kernel24-2.4.20-alt5.src.rpm, установить его с помощью
rpm, в каталоге ~/RPM/SPECS/ в файле
kernel24.spec нужно выставить сборку загрузочного
ядра (%define BUILD_BOOT 1), а сборку
остальных ядер отменить. Изменения к ядру (новые версии
драйверов) лучше делать патчами — в понятии
rpm. После обновления текстов ядра его можно
собирать: rpmbuild --target=i386 -bc kernel-2.4-stable.spec. После этого находим собранные
файлы *.o и записываем их на дискету. Если при
загрузке в инсталляторе insmod будет ругаться на
Unresolved symbols, то нужно выяснять каких
модулей не хватает (в моём случае перед загрузкой
aic79xx.o потребовалось предварительно подгрузить
scsi_mod.o) и подгрузить их перед вашими модулями.