Подготовка ядра для удаленной загрузки
Чтобы ядро можно было загружать через сеть с помощью Etherboot или Netboot, оно должно быть специальным образом подготовлено. Для этого служит программа mknbi, входящая в пакет mknbi (при создании этого документа использовалась версия 1.4.4). Поместить ее на сервер можно, подключившись из OC Windows к серверу по ftp.
Для ее установки необходимо распаковать файл с исходными текстами в каталог /usr/src/mknbi-1.4.4 и выполнить команды
make
mkdir /usr/local/lib/mknbi
cp first32elf* /usr/local/lib/mknbi
Программа имеет несколько параметров, из которых мы рассмотрим четыре:
--format=format Указывает формат выходного файла.
--target=target Указывает тип целевого двоичного кода.
--rootdir=rootdir Задает имя каталога, из которого будет подмонтирована корневая файловая система
--ip=string Позволяет задать IP адреса клиента, сервера, шлюза и маску подсети. Также возможно указать dhcp или bootp для автоматической настройки с помощью этих протоколов.
Создадим каталог, в котором будет располагаться ядро для удаленной загрузки:
mkdir /exports
Дальнейшие действия зависят от того, каким образом мы будем подключать коревую файловую систему. Для подключения через NFS необходимо выполнить команду (предполагается, что корневая файловая система будет располагаться в каталоге /exports/node01)
./mknbi --format=elf --target=linux --rootdir=/exports/node01 --ip=dhcp /usr/src/kernel-source-2.4.18/arch/i386/boot/bzImage > /exports/net_boot_kernel
Для варианта с RAM диском команда выглядит несколько иначе:
./mknbi --format=elf --target=linux --rootdir=/dev/ram0 --ip=dhcp /usr/src/kernel-source-2.4.18/arch/i386/boot/bzImage /initrd/initrd.gz > /exports/net_boot_kernel
О том, как создать файл /initrd/initrd.gz, который содержит образ корневой файловой системы, рассказывается в п..
По окончании этого этапа клиентский компьютер уже может загружать ядро. За информацией по mknbi обращайтесь к [].