LINUX.ORG.RU

initrd и имидж его


0

0

Дистр Arch 0.2.7. собрал ядро 2.6.17. с initrd, пытаюсь создать образ: mkinitrd /boot/initrd.img-2.6.17 2.6.17 Checking Input... /sbin/mkinitrd <kernel_version> [options] Where <kernel_version> is one of: auto build for the installed Arch kernel full build with all possible modules kernel_version={version} use kernel version (no autodetect) Options: --ide exclude ide modules --scsi exclude scsi modules --usb exclude usb modules --cdrom exclude cdrom modules --fw exclude firewire modules --raid exclude raid modules --dm exclude device mapper modules --remove-module=MODULE exclude MODULE --add-module=MODULE include MODULE --lvm-root=ROOT_DEV use ROOT_DEV as the LVM root device --root-dir=ROOT_DIR look for modules in ROOT_DIR/lib/modules instead of /lib/modules --quiet no status output during initrd generation --show show modules that are included in initrd и сообственно все, пробывал разные параметры каторые только мог найти в гугле, результат одинаков, как сождать имидж?

★★★

Дистр Arch 0.2.7. собрал ядро 2.6.17. с initrd, пытаюсь создать образ:

mkinitrd /boot/initrd.img-2.6.17 2.6.17
Checking Input...
/sbin/mkinitrd <kernel_version> [options]

Where <kernel_version> is one of:
auto build for the installed Arch kernel
full build with all possible modules
kernel_version={version} use kernel version (no autodetect)

Options:
--ide exclude ide modules
--scsi exclude scsi modules
--usb exclude usb modules
--cdrom exclude cdrom modules
--fw exclude firewire modules
--raid exclude raid modules
--dm exclude device mapper modules
--remove-module=MODULE exclude MODULE
--add-module=MODULE include MODULE
--lvm-root=ROOT_DEV use ROOT_DEV as the LVM root device
--root-dir=ROOT_DIR look for modules in ROOT_DIR/lib/modules
instead of /lib/modules
--quiet no status output during initrd generation
--show show modules that are included in initrd

и сообственно все, пробывал разные параметры каторые только мог найти в гугле, результат одинаков, как сождать имидж?

GUrYn ★★★
() автор топика
Ответ на: комментарий от GUrYn

А что, без initrd вообще никак не обойтись?

Deleted
()
Ответ на: комментарий от Johnny_Mnemonic

Вся беда в том что мне было очень лень переберать все парметры ядра и я взял конфиг от арчевского ядра 2.6.16. и загрузил его в menuconfig ядра 2.6.17. но в том ядре было initrd, и я усердно пытался создать имдж, но теперь я буду очень рад если кто подскажет как этот гребанный initrd убрать из ядра. Хотя наверное стоит сесть убить время и все сделать как полагается.

GUrYn ★★★
() автор топика
Ответ на: комментарий от GUrYn



может тебе просто сделать
pacman -Syu
новое ядро скачется, сгенерируется initrd, останется подогнать переустановить загрузчик.
если нет то сделай:

pacman -Sy && pacman -S mkinitcpio
и почитай линк сверху - там всё просто.
при желании можно подогнать /etc/mkinitcpio.conf под себя.
у меня так:
HOOKS="base"
MODULES="ide-core ide-disk generic via82cxxx reiserfs" <-- драйверы для ide-controller'a и драйвер для корневой файловой системы.

потом просто делаем
mkinitcpio -g /boot/backed_myself_kernel26.img -k 2.6.17 <-- в /lib/modules/ должна быть директория "2.6.17"

правим lilo.conf или что-там для grub и переустанавливаем загрузчик

#################
для mkinitrd:
подгоняешь /etc/mkinitrd.conf под себя
(нужны драйверы только для ide/sata/scsi, в зависимости от твоего контроллера. можно узнать через hwdetect --ide/sata/scsi. модуль для root fs не нужен)
у меня было:
HOSTCONTROLLER_IDE="generic via82cxxx" потом
mkinitrd kernel_version=2.6.17
и
mkinitrd kernel_version=2.6.17 full <-- на всякие вонючие (все модули)
выше по ссылкам смотришь примеры для lilo или grub


Johnny_Mnemonic
()
Ответ на: комментарий от GUrYn


> я буду очень рад если кто подскажет как этот гребанный initrd убрать из ядра

для этого достаточно скомпилит модули для твоего ide/sata/scsi контроллера и модуль для корневой файловой партиции монолитно в ядро.
тогда initrd не нужен

Johnny_Mnemonic
()
Ответ на: комментарий от Johnny_Mnemonic

А initrd (в всяком случае, в Дебиане) делается командой update-initramfs -k <версия ядра> -c

dpkg ★★★★
()
Ответ на: комментарий от GUrYn

>> я буду очень рад если кто подскажет как этот гребанный initrd убрать из ядра

>для этого достаточно скомпилить модули для твоего ide/sata/scsi контроллера и >модуль для корневой файловой партиции монолитно в ядро.
>тогда initrd не нужен

короче это и есть твой вариант.
т.е. чтобы загрузить ядро, собранное по слакварьскому принципу,
достаточно прописать его без initrd в конфиге загрузчика.

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

Johnny_Mnemonic
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.