Загрузка по сети (Как создать initrd и bzimage)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Добрых дел мастер
Сообщения: 49
ОС: FC5

Загрузка по сети

Сообщение Добрых дел мастер »

Итак, решил грузиться по сети. Собрал ядро, сделал initrd
Гружусь - не получается. На этапе определения железа просто замирает - и все.
Ядро - 2.6.22. Собирал монолитом, из железа включил все, что надо. initrd сделал упаковкой корня с небольшой чисткой. (на текущий момент минимальность не нужна. Ибо нефиг оптимизировать, пока не работает)
При этом, если я возьму ядро и initrd из текущей ОС - все в порядке. Если вместо initrd подсунуть друкой файл - замирает на том же этапе. Значит, до него еще не доходит и виновато ядро.
С какими опциями надо собирать ядро? Возможно, есть что-нибудь неочевидное, что надо сделать? Воюю уже несколько дней, так что в Гугле уже был и маны курил. Не помогло.
Помогите плиз.
Эти дайсы себе слишком много позволяют
Отпусти меня, чудо-трава. Я тебе за это песенку спою
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Загрузка по сети

Сообщение rm_ »

Попробуйте собрать initrd с помощью mkinitramfs, только перед сборкой подправьте /etc/initramfs-tools/initramfs.conf, там есть пункт, который нужно выставить в "nfs":

Код: Выделить всё

#
# NFS Section of the config.
#

#
# BOOT: [ local | nfs ]
#
# local - Boot off of local media (harddrive, USB stick).
#
# nfs - Boot using an NFS drive as the root of the drive.
#

BOOT=local

И здесь тоже, netboot:

Код: Выделить всё

#
# MODULES: [ most | netboot | dep | list ]
#
# most - Add all framebuffer, acpi, filesystem, and harddrive drivers.
#
# dep - Try and guess which modules to load.
#
# netboot - Add the base modules, network modules, but skip block devices.
#
# list - Only include modules from the 'additional modules' list
#

MODULES=most
Спасибо сказали:
Добрых дел мастер
Сообщения: 49
ОС: FC5

Re: Загрузка по сети

Сообщение Добрых дел мастер »

Не помогло. Ибо проблема в ядре. До initrd дело еще не доходит.
К тому же, я не нашел mkinitramfs (искал на http://rpmfind.net/)
Попробовал mkinitrd. Но это не имеет значения, имхо.
Эти дайсы себе слишком много позволяют
Отпусти меня, чудо-трава. Я тебе за это песенку спою
Спасибо сказали:
loki4
Сообщения: 115
ОС: GNU/Linux Arch Linux

Re: Загрузка по сети

Сообщение loki4 »

Ну а на чем останавливается загрузка? Какие последние сообщения ядра?
А зачем Вам initrd? Соберите без него.

Собственно говоря, ничего особого в ядре не нужно, если вы хотите загрузить только его с локального жесткого диска. Если корневая ФС должна грузиться по NFS, то нужно особо отметить Network File Systems -> Root file system on NFS, ну и сопутствующие опции.
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Загрузка по сети

Сообщение Ленивая Бестолочь »

в разделе FileSystems включите NFS , в Network включите по IP kernel configuration (если будете пользовать DHCP или чтото еще - отметте там), потом опять в FileSystems - Root file system on NFS.
все это НЕ модулем, в оборудовании сетевуху свою тоже НЕ модулем.
вот =)
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Загрузка по сети

Сообщение rm_ »

А я вообще ядро не пересобирал - воспользовался стандартным Debian'овским.
Нужно было просто сделать initrd правильно, как описал выше (с правкой initramfs.conf).
Спасибо сказали:
Добрых дел мастер
Сообщения: 49
ОС: FC5

Re: Загрузка по сети

Сообщение Добрых дел мастер »

2loki4, Сначала загрузка останавливалась на Hotplug pci. Удалил из ядра. Потом еще на чем-то, но результат тот же.
Последняя надпись (после последнего "облегчения" ядра от ругательных надписей) -
assign_interrupt_mode Found MSI capability
При этом ядро не в панике.
По поводу "Соберите без initrd" - можно поподробнее?
По NFS не хочу. Хочется загрузить из initrd, а затем смонтировать по ssh папку, в которую буду бекапить разделы, либо разливать из бекапа.
2JIeHb, Ядро монолитное, так что все внутри.
2rm_, Возникли сложности с initrd на основе cpio. Я уже прочитал, что если выдрать их из дистра подревнее (например RH9) - оно внутри будет ext2. Может быть так и поступлю.
Эти дайсы себе слишком много позволяют
Отпусти меня, чудо-трава. Я тебе за это песенку спою
Спасибо сказали: