LINUX.ORG.RU

Kernel panic в гостевой генте

 , ,


0

1

Самосборное ядро в VMware упорно не хочет грузить систему.

http://ompldr.org/vZ2RreA/panic.png

Схема разделов:

/dev/sda1 - /
/dev/sda2 - /home
/dev/sda3 - swap

Загрузчик - grub. Корневым разделом указан hd(0,0). root=/dev/sda1

В ядро жёстко вкомпилено всё, что только может понадобиться VMware - IDE/ATA, SCSI, SATA, ext2 (все разделы, кроме свопа, на ext2).

В чём может быть дело?

И что за unknown-block(8,1)? Откуда (8,1)?

Kindly_Cat
() автор топика

Извини за оффтопик, но - окошко у тебя больно клевое! Не поделишься рецептом, как запилить себе такой же интерфейс?

Zhbert ★★★★★
()

У тебя, наверное, и с хоста не загрузится с таким рутом. Попробуй загрузиться с живого диска, узнать uuid раздела и в грубе прописать его.

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

Это выключить:

Device Drivers  ---> 
   ATA/ATAPI/MFM/RLL support (DEPRECATED)  --->

Это включить:

Device Drivers  ---> 
   Serial ATA and Parallel ATA drivers  --->
В этом же разделе ищите драйвер вашего контроллера жёстких дисков.

Вы знаете перевод слова DEPRECATED ?

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

Почему он долбится в какой-то блок 8,1??? Что syslinux, что grub. Тупизм какой-то.

Конечно тупизм! Ты ведь даже не догадываешься, что ни syslinux, ни grub, ни какой бы то ни было другой загрузчик в принципе не может иметь никакого отношения к ошибке с твоего скриншота.

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

У тебя, наверное, и с хоста не загрузится с таким рутом

Что это значит?

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

При чём здесь vmware, при конфигурировании ядра через

make menuconfig

Напротив указанного параметра ядра написано DEPRECATED - означает устаревший.

Точно не помню, но ещё со времён 2.6.38 это параметр включать нельзя, а использовать CONFIG_ATA (Serial ATA and Parallel ATA drivers) подсистема libata она поддерживает и Parallel ATA (IDE) и Serial ATA (SATA), видимо вы давно ядро не конфигурировали.

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

подсистема libata она поддерживает и Parallel ATA (IDE) и Serial ATA (SATA)

Ну если она и древние чипсеты поддерживает, то ладно.

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

Вы используете initrd или нет ?

Нет.

Попробуйте использовать.

cd /usr/src/linux
genkernel ramdisk

Какие вы опции включали в

Device Drivers  ---> 
   Serial ATA and Parallel ATA drivers  --->

И покажите вывод lspci.

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

Попробуйте использовать.

Очень не хочется - загрузка долгая с ним.

Какие вы опции включали в

Я уже всё там повключал. И в SCSI тоже (vmware эмулирует scsi для виртуальных жёстких дисков).

И покажите вывод lspci.

http://s017.radikal.ru/i429/1211/51/85900d2c7e2a.png

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

Включен тоже.

Если включить все модули SCSI/ATA/SATA подряд, они же не могут мешать друг другу?

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

Ядро как бы намекает, что на sda нет партиций

Это как ещё? fdisk партиции видит, syslinux - тоже. Почему ядро не видит?

root=/dev/sdb1

Странно, но попробую.

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

Хоть что-то обнадёживает. А что имеет отношение?

Ядро. Задача загрузчика - загрузить ядро в память, передать ему параметры запуска и запустить. И всё. Раз у тебя ядро уже загрузилось, значит загрузчик сделал своё дело правильно. Неспособность ядром смонтировать корневую ФС никак не связана с загрузчиком.

Deleted
()

Собери ядро с initramfs (ЕМНИП, в gentoo для этого используется genkernel) и попробуй запустить. Оно хотя бы вывалится в busybox и ты сможешь посмотреть что именно у тебя происходит с дисковой подсистемой.

И ещё: не нужно собирать «минимальное ядро», «в котором только то, что нужно» и т.п. Это уже давно не имеет смысла за пределами встраиваемых систем. И не даёт ничего кроме проблем.

Deleted
()
Ответ на: FACEPALM от Kindly_Cat

/dev/sda в самом деле каким-то хреном превратилось в /dev/sdb

У устройств sd? нет стабильной схемы нумерования by design. В общем случае буква может быть любой. Почему именно получилось sdb, хотя диск всего один - фиг знает. Возможно это баг, но совсем не обязательно.

Для точного указания устройств используй UUID'ы или метки файловых систем.

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

Почему именно получилось sdb, хотя диск всего один - фиг знает

Ещё интереснее, откуда появился восьмимегабайтовый /dev/sda

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

Видимо, чудил какой-то модуль. Выкинул из ядра всё лишнее, система нормально грузится с /dev/sda1

Kindly_Cat
() автор топика
Ответ на: FACEPALM от Kindly_Cat

Это тестовый драйвер, для отладки. Не помню, как называется, я его тоже как-то случайно включил где-то в районе ATA devices.

AITap ★★★★★
()
Ответ на: FACEPALM от Kindly_Cat

используй UUID

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