Кастомный LiveCD Kernel panic

Доброго времени суток в общем уже давно интересовался вопросом сборкой LiveCD и вот практически разобрался что к чему но уже на финишной прямой споткнулся.
В теории всё просто :
1) SysLinux (или какой либо другой загрузчик)
2) Ядро
3) initrd Временная FS
4) rootfs.sfs Сжатый mksquashfs и настроенный корневой раздел
Загрузчик загружает в память ядро и initrd в котором выполняется linuxrc который монтирует и передаёт управление FS в rootfs.sfs.

Но вот у меня затык, при попытке загрузить сие чудо получаю Kernel panic

как я понимаю ядро не может загрузить корневой раздел то есть мой initrd не грузится поскольку даже нет сообщения "Simple initrd is active" почему не работает не могу понять.

Собирал его на базе busybox мой скрипт для создания initrd

Часть конфига syslinux
label Install
	MENU LABEL Загрузка LiveCD
	kernel linux.c32 /boot/vmlinuz64
	append initrd=/boot/initrd64.img quiet
Chips
Собирал его на базе busybox
Почему не используете mkinitcpio + archiso?
В dracut тоже есть готовые модули.
Lupus pilum mutat, non mentem.
Вы используете для инит сжатый контейнер с ext2.
Если не ошибаюсь то сейчас "принято" использовать cpio формат. Возможно ядро собрано только с ним. Посмотрите ядерный конфиг.
Lupus pilum mutat, non mentem.
jim945
Если не ошибаюсь то сейчас "принято" использовать cpio формат. Возможно ядро собрано только с ним. Посмотрите ядерный конфиг.
Спасибо за подсказку, сейчас сжал в архив cpio
find . -print0 | cpio --null --create --verbose --format=newc | gzip --best > ./initramfs.cpio.gz
и с 10й попытки заработало
была ещё ошибка в линке lib64 на lib после её исправления всё заработало. Плюс ещё переименовал скрипт инициализации linuxrc в init. Хотя до этого мои попытки с cpio также не давали результата.

С dracut у меня пока не сложилось, я просто не понимаю как в него интегрировать скрипт init.
Почему не использую mkinitcpio в связке с archiso. Во первых просто хотелось разобраться как это работает изнутри и в дальнейшем планируется это использовать на других дистрибутивах отличных от Arch. Есть задумки для одной встраиваемой системы где как раз всё должно будит работать из initrd
Chips
разобраться как это работает
Подумал, что цель соблать свой live. Поэтому и предложил готгвые варианты.
Chips
как в него интегрировать скрипт init
Dracut и mkinitcpio формируют initramfs и реализуют свои init'ы.
Они хороши модульностью и автоматизацией. Позволяют реализовать свои сценарии загрузки из готовых "блоков"

Рекомендую посмотреть исходники mkinitcpio и его базовых модулей.
Он достаточно прост для изучения и прояснит много тонкостей.
Lupus pilum mutat, non mentem.
jim945
Подумал, что цель соблать свой live. Поэтому и предложил готгвые варианты.
Да так и задумывается но без привязки к какому либо дистрибутиву и готовым инструментам
 
Зарегистрироваться или войдите чтобы оставить сообщение.