[sisyphus] PXE network boot & initrd.img

Peter V. Saveliev =?iso-8859-1?q?peet_=CE=C1_altlinux=2Eru?=
Чт Апр 1 10:21:12 MSD 2004


On Thu, 1 Apr 2004 00:47:59 -0500
Ivan Adzhubey <iadzhubey на rics.bwh.harvard.edu> wrote:

> Господа, товарищи и братья!
> 
> Вопрос совершенно off topic, но трехдневное неустанное гугление не привело к 
> позитивному результату, так что очень прошу поделиться если у кого есть 
> опыт...

Есть мнение, что nfsroot работает только если модуль сетевой карточки и
nfs и sunrpc и nfsroot собраны в монолитном ядре. Так написано в доках
ядра, и так работает у меня.

> 
> Кто-нибудь пользуется сетевой загрузкой? Хочется странного, хотя все советуют 
> собирать клиентское ядро со всеми необходимыми драйверами - хочу грузить по 
> сети и ядро и initrd с модулями, в том числе с модулями драйверов сетевых 
> карточек. Удалось настроить dhcpd, tftp, pxelinux, все работает, кроме 
> initrd. При попытке указать в параметрах pxelinux образ initrd - ядро 
> загружается нормально, затем пишет на консоли клиента:
> 
> Loading initrd: initrd-test.img...

Возможно, именно потому.

<skip />

Подумав, в итоге перешёл на другую схему. Для неё не требуется
модифицированное ядро, но при этом initrd нужно собирать самому. В
initrd пихается скрипт, который (по шагам):

1) делает ext2 на ramdisk /dev/ram1
2) монтирует его
3) wget -O - | tar -zxf ...  качает дистрибутив с сервера (~30..60Mb) на /dev/ram1
4) отмонтирует
5) выходит, а в параметрах ядра указано: root=/dev/ram1
...
6) нормальный инит
7а) если бездисковый сервер, то это всё, начинаем работать
7б) если нужны суровые системы, то стоят винты с lvm, на которых стоит
    ALT Linux, запускающийся в virtual private server (на загрузке -
    ядро vs)
8) что-то меняем если, то дампим систему обратно на boot-server,
   с именем по дате, а там перекидываем симлинк на последний или
   более нужный


То есть, имеем кучу +сов, включая отсутствие завязки на nfs-сервер после
загрузки, за неимением такового, автоматический бэкап версий системы с
возможностью отката перезагрузкой на любую (a-la cisco, но не только
конфиг), более стройную архитектуру (virtual servers), возможность
дублирования/бэкапа на лету (enbd) и машины "на подхвате", на случай
падения (vrrpd).

Пример сборки initrd и скрипты для загрузки и дампа и т.п. могу выслать.

-- 

<signature />



Подробная информация о списке рассылки Sisyphus