unet писал(а):
1 получил ип скачал и запустил ядро
2 примонтировал NFS
3 =#=#
Что унас должно произойти на третьем шаге?
на втором шаге ядро монтирует по NFS root file system, с которой на третьем шаге стартует init, а дальше всё как обычно, в соотвествии с тем, что будет написано в /etc/init.d.
unet писал(а):
Как я понял в NFS должна быть начальная файловая система(точнее каталоги var usr lib и т.д. с содержимым для загрузки ОС)
не начальная, а корневая. /bin, /sbin, /etc, /var, /lib, /root. Вдобавок к ней затем достаточно смонтировать /usr, /usr/local и /home с того же сервера -- и получаем полноценную бездисковую систему. Можно попытаться извернуться и монтировать также и /var отдельно, но не уверен, что стоит.
unet писал(а):
Я смотрю сейчас в сторону LTSP для реализации всего этого.
возможно, не совсем подойдёт под наши специфические нужды.
unet писал(а):
Есть ли другие способы ?
Какой минимальный набор содержимого мне нужно отдать?
Я думаю, что этот набор почти совпадает с "базой" Debian'a. У меня есть список пакетов, в которые входят все минимально необходимые вещи, список был снят путём анализа работающей конфигурации. Их предвариательно получилось 97. Возможно, они тянут зависимостями ещё с десяток -- не проверял. Эти пакеты можно установить пакетным менеджером Debian'a в отдельную иерархию где-нибудь в /usr/local (кажется, за это отвечает утилита dbootstrap), а потом эту иерархию и раздавать по NFS. Вернее, можно эту иерархию растиражировать для каждого узла персонально, со сменой IP адресов -- не так много места займёт при небольшом числе узлов -- где-то 20-30 мегабайт штука.
Подробнее не расскажу, не копался, но, мне кажется -- направление верное с точки зрения минимизации усилий и простоты дальнейших апгрейдов. Ну, то есть -- тут есть все шансы это дело автоматизировать почти на 100%, пользуясь только стандартными средствами Debian.
Список выслал на почту.
Насчёт вкомпилировать модули сетевых карт в ядро -- я думаю, это не такая уж и проблема: если известна заранее аппаратная конфигурация кластера, то отчего бы не скомпилировать только те драйвера, которые нужны, а остальные просто выкинуть? для другого кластера можно и перекомпилить заново -- не так уж это и долго. я бы так поступил.