LINUX.ORG.RU
решено ФорумAdmin

Компиляция ядра для RHEL5(2.6.18) версии 2.6.26


0

1

Решил пересобрать ядро 2.6.26 наложить патчи какие мне нужно для системы RHEL5.4(2.6.18) Пересобрал, все модули включил в initrd ( scsi_mod sd_mod libata ahci ehci-hcd ohci-hcd uhci-hcd jbd ext3 ata_piix такие же модули как для ядра 2.6.18 ) диск определяется как sda но не грузится, вываливается в kernel panic.

Всякие там: CONFIG_SYSFS=y, CONFIG_SYSFS_DEPRECATED=y, CONFIG_SYSFS_DEPRECATED_V2=y Включал, и нифига :(

Куда рыть ? :)

При загрузке с ядра 2.6.26 доходит до:

SCSI device sda: drive cache: write back

sda: sda1 sda2 sda3

Witing for driver inicializacion.

mount: error mounting /dev/root on /sysroot as ext3: No such device

Kernel panic ...

Определяет диски но не видит с чего грузится, почему!?

Я догадываюсь почему, только не могу понять почему на ядре 2.6.18 работало с таким же набором модулей а на 2.6.26 не хочет.

Подробнее: _http://www.opennet.ru/openforum/vsluhforumID4/467.html#0



Последнее исправление: jetv (всего исправлений: 2)
Ответ на: комментарий от ZuBB

Это ты типа пошутил или дал совет, умник ? ...

Я и спрашиваю, почему он не может понять с чего грузится! Девайс /dev/root есть и ext3.ko модулем при загрузке тоже есть.

.... Прошу изречения, типа «читать до просветления» оставить для младшего брата.

Я прошу помощи, а не ищу умников.

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

если у тебя там есть инитрд, в нем же вроде как есть встроенный шел. возьми да и посмотри что да как там..

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

«если у тебя там есть инитрд, в нем же вроде как есть встроенный шел. возьми да и посмотри что да как там»

Если ты имеешь в виду файл init, то да смотрел.

Говорю еще раз, initrd-2.6.18 не отличается от initrd-2.6.26 внутри, как по модулям так и по файлу инициализации init

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

в новом initrd есть /dev/root

ты проверил и он там действительно есть, или только думаешь так? я к чему: если пишет что его нет, то значит не все так гладко

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

если я правильно понял у тебя ssd disk в рхеловском ядре 2.6.18 определяется как sda ибо проходит как scsi устройство. как раз гдето между 2.6.18 и 2.6.26 в ядре произошло следующее: все устройства которые детектились как /dev/hd* стали /dev/sd*. думаю что у этой проблемы ноги отсюда ростут.

сейчас вижу только следующий вариант: попытатся приготовить ванильное 2.6.26 (для теста я бы не использовал initrd, дабы уменьшить кол-во точек «отказа»). если заведется, значит и у тебя должно. если нет, тогда возможны варианты, ибо RH большой любитель бекпортинга..

ZuBB ★★★★★
()
Последнее исправление: ZuBB (всего исправлений: 1)
Ответ на: комментарий от ZuBB

ну ahci от запихнул, так что пофиг на ata_piix

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

укажи в параметрах загрузки root=/dev/ram

он скорее всего не удариться в панику, а останется в шелле, посмотришь что в /proc/partitions

Если у тебя несколько дисков, то порядок из регистрации может измениться.

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

initrd-2.6.18 не отличается от initrd-2.6.26 внутри

Вы в этом точно уверены? Просто в 2.6.18 у вас перед ext3 (монтирование корневой ФС) вылазит строка:

Fusion MPT base driver

А в 2.6.26 этой строки у вас нет. А initrd у вас самодельный, не через mkinitrd? В штатном после:
Waiting for driver initialization.
должно выпадать сообщение
Creating root device.
И только потом попытка монтирования.

mky ★★★★★
()

Как я и говорил «Я догадываюсь почему, только не могу понять почему на ядре 2.6.18 работало с таким же набором модулей а на 2.6.26 не хочет.» все заработало после добавления двух доп. модулей в initrd

Вопрос, почему 2.6.18 работает а ядро 2.6.26 с таким же набором модулей вываливается панику, не понимаю :)

cat /proc/partitions

major minor #blocks name

8 0 117220824 sda

8 1 153600 sda1

8 2 4194304 sda2

8 3 112871896 sda3

Все диски есть, устройства есть, все что нужно есть но нифига не работает!

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

все заработало после добавления двух доп. модулей в initrd

Каких именно?

Если интерестно узнать почему, то засунули бы busybox в initrd, чтобы получить shell имено в той системе и убедится, что mkblkdev из nash создала файлы в /dev/.

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