=== oemsetup

Интерактивный «шаг», входящий в подпакет *make-initrd-bootchain-localdev*,
предназначенный для догрузки в initrams «на лету» недостающего (модулей ядра,
правил udev, и т.д.). В процессе работы может выводить диалог выбора накопителя
(виджет *choice*). При поиске локального устройства используется виджет
*ponder*. Данный «шаг» можно использовать сам по себе, но в случае *altboot*
его не следует указывать, т.к. при наличии непустого параметра *updatemodules*
в /proc/cmdline, «шаг» *oemsetup* станет первым, что выполнит сам *altboot*.

По умолчанию «шаг» ищет накопитель с меткой тома, определяемой конфигурационной
переменной *$OEM_SETUP_STORAGE*, однако пользователь может выбрать в диалоге
любое другое устройство. Для дистрибутивов Альт здесь ожидается метка тома
«*alt-drivers-update*», для других дистрибутивов дефолтом является «*OEMSETUP*».
Для носителя с обновлениями от вендора допускается любая поддерживаемая файловая
система (рекомендуется ext2/3/4 или vfat).

В корне устройства должен находиться каталог «*OEM-setup*» с профилями
оборудования. Внутри подкаталога профиля ожидается файл «*initrd-update.img*»,
представляющий собой сжатый gzip'ом cpio-образ с файлами обновления initramfs.
Название профиля оборудования (подкаталога) определяется параметром *updatemodules*.
После распаковки архива в корень initramfs запускается скрипт «*/root/update.sh*»,
при его наличии, иначе выполняется команда «*depmod -a*».

Полный путь к архиву обновления на носителе:
«**/OEM-setup/**<профиль>**/initrd-update.img**».

Параметры загрузки:

* *updatemodules* — определяет профиль оборудования и место, где будут
  искаться обновления на носителе.

Возможные значения updatemodules:

* *1* — подразумевается использование профиля по умолчанию («default»);
* *ID* — имя профиля вычисляется командой «**machine-info --drivers**»;
* _другое_ — имя профиля указывается непосредственно в качестве значения.

Использование *updatemodules=ID* в /proc/cmdline позволяет администратору
большой сети с различным проблемным оборудованием иметь единый носитель
обновления для различающихся по конфигурации физических машин.

Поставщику содержимого архива «*initrd-update.img*» следует помнить, что
модули ядра в нём должны быть совместимыми с версией ядра в целевом образе
initramfs, другое содержимое архива также должно соответствовать целевому
образу initramfs. Скрипт */root/update.sh* может вызывать вспомогательные
функции make-initrd, включая набор из *initeractive-sh-functions*,
*bootchain-sh-functions* и *altboot-sh-functions*. См. детали в
_<<_разработчику_bootchain_altboot,разделе для разработчика>>_.

