Где бы почитать, как создать initrd без busybox без mkinitrd и без update-initramfs
В ручную.
Создание initrd на пальцах
[флуд и ругань удалены]
Итог:
metra, предупреждение: 3.2.11
redux, предупреждение: обсуждение действий модераторов.
За бывший холивар извиняюсь.
Уточню вопрос:
Через chroot собран lfs (с незначительными отклонениями) с использованием хоста-системы дебиан-5.
На машине несколько винтов, и без UUID ядро путает их.
Вот хотел UUID прикрутить, для этого и initrd.
Но с минимальными инструментами.
Немного еще, может в эту сторону:
Может у кого лежит недалеко названия инструментов, по более, чем голый компилятор с мэйком,
для работы с ядром. Что-то я пока застрял.
Без busybox'а чтобы, а то он алиасы делает на несколько команд, которые уже есть,- костыль какой-то получается, этот busybox.
про сборку initramfs в гентушной вике хорошо написано(специфичного практически ничего нет)
На машине несколько винтов, и без UUID ядро путает их.
Вот хотел UUID прикрутить, для этого и initrd.
Но с минимальными инструментами.
это звучит странно...
Может у кого лежит недалеко названия инструментов, по более, чем голый компилятор с мэйком,
для работы с ядром. Что-то я пока застрял.
а что ещё нужно, кроме компилятора и гнутого мейка? есть скрипты в папке scripts.
Без busybox'а чтобы, а то он алиасы делает на несколько команд, которые уже есть,- костыль какой-то получается, этот busybox.
это не костыль он нужен, чтобы не пихать 100500 разных бинарников и библиотек в маленькие системы, ибо они будут весить намного больше
это звучит странно...
Я уже второй раз на это попадаю.
Вот пример
sata винт стоит
и старый IDE.
На иде собрана ось, загрузчик поставлен. Но новые-то ядра hda не признают- всё через sda.
В итоге, когда я через chroot, то у меня есть hda, а когда гружусь с IDE винта, идет попытка монтирования root'а от системы-хоста, где сборка была.
Прописывал уж всякие пути в конфиге груба.
В общем, UUID нужен. Если ось развита, я его создаю и прописываю.
С другой стороны, даже если я в grub и fstab подберу что прописать, - хотелось бы ось собрать,- чтоб при подключении девайса ко многим компам работало.
это не костыль он нужен, чтобы не пихать 100500 разных бинарников и библиотек в маленькие системы, ибо они будут весить намного больше
Всё равно немного не то.
А никак нельзя UUID без initrd?
Я то его прописывал, но кернел-паник тогда.Ругается, что там блок-девайс такой-то не распознан, рута не видит.
Получается, что либо подбирать пути, как диски обзываются, (что на другой машине может быть по другому), либо инструментарий расширять, чтоб initrd создать.
про сборку initramfs в гентушной вике хорошо написано(специфичного практически ничего нет)
Я на подобные материалы попадал, даже на русском
http://lug.yaroslavl.ru/archive/node/107
и тд.
Получается, надо этот busybox думать....
А никак нельзя UUID без initrd?
скорей всего нет, ядро о uuid'ах ничего не знает...
можете распаковать инитрд из "больших" дистров и посмотреть, чего туда пихают....
для создания ссылок на uuid'ы надо покопать в сторону mdev.
больше добавить нечего - час уже поздний...
Fat-Zer,
скорей всего нет, ядро о uuid'ах ничего не знает...
Я тут прочитал в каком-то блоге, что Торвальдс против включения этого дела в ядро, и не включает....
можете распаковать инитрд из "больших" дистров и посмотреть, чего туда пихают....
Хорошая идея. Я тут подумал, может создать его на системе-хосте.
В пользу надежды работоспособности этого говорит вот что:
Я собирал (на дебьяне) ядра с монолитным включением фс- без initrd, - короче они грузились без инитрд, а потом я им инитрд подкладывал, и загрузка шла через него, что отображалось на экране.(хотя, сейчас подумал, там ведь может быть точное что-то).
redux пишет:
На машине несколько винтов, и без UUID ядро путает их.
........
это звучит странно...
всё решилось сборкой ядра без опции
Initial RAM filesystem..............
Что собственно и надо было сразу делать. smile