К сожалению, из-за лицензионных ограничений производителей оборудования, не все драйвера могут быть включены в образ Solaris. Для установки особенно критичны драйвера на контроллеры дисков (а RAID-контроллеры в серверах не редкость) и драйвера на сетевые карты. При загрузке для инсталляции по сети Solaris подгружает образ x86.miniroot, содержащий базовое окружение системы.
В данном примере описана сборка для драйвера mega_sas для контроллеров LSI 1078 и т.п. Скачать его можно на сайте LSI. Более подробно о нем можно почитать здесь: Solaris 10 ITU Install and LSI 1078 MegaRAID SAS Controllers и на wiki разработчиков: project mega_sas.
Настройка сетевого install-сервера.
Документация находится здесь:
Creating an Install Server With DVD Media
В качестве инсталл-сервера может использоваться любая машина с Solaris 10. Скрипт находятся в /путь_до_образа_Solaris_10/Solaris_10/Tools/
В общем случае, настройка сводится к нескольким действиям:
1. Установка install-сервера
# ./setup_install_server <Путь к директории инсталл-сервера>
2. Разрешение сервисов dhcp-server и nfs/server:
# svcadm enable dhcp-server
# svcadm enable nfs/server
3. Добавляем строчку в /etc/dfs/dfstab и вызываем команду shareall:
share -F nfs -o ro,anon=0 <Путь к директории инсталл-сервера>
# shareall
4. Добавление клиента (инсталлируемого хоста)
./add_install_client -d -e <MAC-адрес> \
-s <IP-инсталл-сервера>:<Путь к директории инсталл-сервера> i86pc
5. Донастройка dhcp, если требуется. Для этого можно использовать графическую утилиту dhcpmgr или набор утилит dhcpconfig/dhtadm/pntadm
Вам также потребуется использовать профили и rules-файл, для того чтобы при установке Solaris пакет megasas доставлялся в систему. Они требуется в случае, если вы хотите указать особые свойства установки (размер разделов диска, пакетный кластер и дополнительные пакеты (как в нашем случае). Для установки настроек служб имен, IP-сети, пароля root и прочих индивидуальных настроек каждого хоста требуется использовать файл sysidcfg.
Примеры построения сетевого установочного сервера (JumpStart Server) вы найдете в директории /путь_до_образа_Solaris_10/Solaris_10/Misc/jumpstart_sample/
Более подобно файл rules описан здесь: http://docs.sun.com/app/docs/doc/821-0437/preparecustom-56059?l=ru&a=view
Создание профиля описано здесь:
http://docs.sun.com/app/docs/doc/821-0437/preparecustom-53442?l=ru&a=view
Скопируйте директорию пакета в расшаренную директорию на сервере:
# cp -r /var/tmp/megasas <Путь к директории дополнительных пакетов>
После этого следует добавить в профиль строчку:
package megasas add nfs://<IP-инсталл-сервера>/<Путь к директории дополнительных пакетов>
После того как rules-файл будет создан надо запустить скрипт check, чтобы был проверен синтаксис и сгенерирован файл rules.ok.
Пересборка образа x86.miniroot
Распаковать boot-архив во временную директорию (на самом деле он представляет из себя обычный cpio-архив.
# /boot/solaris/bin/root_archive unpack \
<Путь к директории инсталл-сервера>/boot/x86.miniroot /var/tmp/mr
Установить megasas поверх miniroot-архива:
# cd /var/tmp
# uncompress mega_sas.Z
# unzip mega_sas
# pkgadd -R /var/tmp/mr -d . megasas
Восстанавливаем boot-архив:
# /boot/solaris/bin/root_archive pack \
<Путь к директории инсталл-сервера>/boot/x86.miniroot.sas /var/tmp/mr
После этого можно подменить старый x86.miniroot вновь созданным.
После выполнения всех этих действий, загружайте сервер, используя PXE (загрузку по сети) - должна начаться инсталляция.