LINUX.ORG.RU

Сборка ядра - изменить root device.


0

1

При запуске свежесобранного sys-kernel/gentoo-sources-3.1.5 получаю что-то похожее на

Kernel panic:VFS: Unable to mount root fs on unkown-block (2,0)
Лечится оно добавлением root=/dev/sda1 в /boot/grub/grub.conf, но:
1. Почему оно теперь пытается грузиться с (2,0), если всегда (2.6.*-3.0.6) правильно определялось, что нужно грузиться с (8,1)?
2. Как сделать так, чтобы снова не требовалось дописывать root= в grub.conf? Где это рулится?

Ответ на: комментарий от xorik

Чувствую, вопрос не понят...

default 0
timeout 3
title Gentoo Linux 3.1.5
root (hd0,0)
kernel /boot/kernel-3.1.5 root=/dev/sda1

title Gentoo Linux 3.0.6
root (hd0,0)
kernel /boot/kernel-3.0.6
3.0.6 запускается, а вот для 3.1.5 ВНЕЗАПНО стало нужным дописывать root=/dev/sda1
wtf и как сделать поведение 3.1.5 таким-же, как и у 3.0.6?

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

Вот у меня так-же было. В параметрах пусто и «VFS: Mounted root (reiserfs filesystem) readonly on device 8:1.»
Теперь не так. Теперь, если в параметрах пусто - «VFS: Unable to mount root fs on unkown-block (2,0)»
Хочу к мамесделать как раньше, но не могу понять, где и что крутить. Где эти дефолтные 2,0 поменять на 8,1? Почему, блин, у него стало root=/dev/fd0 по-умолчанию?

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

Как сделать так, чтобы снова не требовалось дописывать root= в grub.conf? Где это рулится?

Это рулится параметром CONFIG_CMDLINE[_BOOL]:

Processor type and features --> Built-in kernel command line

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

Вариант, конечно... Но причина такого поведения всё равно не ясна.

# grep CMDL linux-{3.0.6,3.1.5}-gentoo/.config
linux-3.0.6-gentoo/.config:# CONFIG_CMDLINE_BOOL is not set
linux-3.1.5-gentoo/.config:# CONFIG_CMDLINE_BOOL is not set
У кого-нть есть исходники rdev? А то у меня гуглятся одни маны на неё.

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

Спасибо, помогло.
Вскрытие показало, что minor,major корневого устройства лежит в 512-байтном заголовке ядра со смещением 508 байт (от начала файла).
Дальнейшая гуглёжка привела к документу Documentation/x86/boot.txt в котором сказано, что

Field name:     root_dev
Type:           modify (optional)
Offset/size:    0x1fc/2
Protocol:       ALL

  The default root device device number.  The use of this field is
  deprecated, use the "root=" option on the command line instead.
В итоге - придётся вписывать в cmdline.

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