Я хочу скомпилировать собственное ядро из официального дерева исходных текстов (kernel.org). Сама машина запускает последнее стабильное ядро RHEL без проблем, но я не могу понять, почему оно паникует на любом стандартном ядре. Я подозреваю, что это проблема с драйвером, но я относительно новичок в ее отладке.
Ядро, которое попыталось скомпилировать со стандартной конфигурацией, - 2.6.32.55. Я также безуспешно пытался скомпилировать его с предыдущей рабочей конфигурацией ядра.
Технические характеристики машины следующие:
При попытке загрузиться в стандартное ядро возникает паника при инициализации устройства-сопоставителя, что заставляет меня думать, что это проблема с драйвером RAID. Похоже, что в стандартном ядре установлены последние версии драйверов aacraid, хотя я попытался перекомпилировать ядро с использованием последней версии с adaptec.com с той же проблемой.
Вот полученная мной трассировка стека. Мы будем очень благодарны за любую информацию о том, как продолжить отладку. Спасибо!
https://s3.amazonaws.com/uploads.hipchat.com/9460/23303/80l8xsnfl7fa7e9/panic2.png
Сообщения «Попытка убить init» обычно возникают, когда он не может найти / sbin / init (или не может его выполнить).
Дважды проверьте свой root=
параметр в конфигурации загрузчика и убедитесь, что он указывает на устройство для вашего /
раздел, а не /boot
или где-нибудь еще случайно.
Изменить: Redhat также использует initrd, поэтому это может быть еще одной проблемой. Поэтому, если у вас настроен initrd, убедитесь, что /init
в нем существует (ядро ищет /init
при использовании initrd / initramfs и /sbin/init
когда нет)
Я смог разобраться в проблеме. После получения более подробного вывода (с помощью поддержки SoftLayer, спасибо им) он показывал проблемы с setuproot. Похоже, что необходимо установить следующий параметр конфигурации ядра, чтобы включить старый стиль SYSFS.
CONFIG_SYSFS_DEPRECATED_V2=y
После этого ядро загрузилось как положено.