Страница 1 из 1

Master <-> Slave

Добавлено: 07 ноя 2005, 00:16
DyadyaVova
Приветствую, Господа!
Вот такой(ие) вопрос(ы).
Есть два HDD(на одном IDE канале), на каждом стоял линух. По ряду причин пришлось поменять их местами, т.е. Master <-> Slave.
После данной операции мои любимые линухе перестали грузиться и начали бранить меня kernelPanic'ами( в /etc/fstab всё поправил как надо. Если я правильно понял, дело в System.map). Ну, я, не мудрствуя лукаво, взял и пересобрал ядро Гентушного линуха и...
он заработал. А вот со вторым линухом(АСП10) проблема:
Во-первых при выполнении make modules_install он орёт, мол
множественный линк требует обязательного указания директории в параметрах(пробовал я туда пихнуть - не получается). Ну, решил я не делать этот make modules_install(всё необходимое включил в ядро).
Скопировал bzImage и System.map в /boot и... После перезагрузки, вместо паники, вывалилось сообщение, что
Warning! Unable to open an initial console

А теперь вопросы:
1) Где требуется помимо fstab производить изменения при замене mastera slave'ом и почему?
2) Что не даёт мне пересобрать ядро в АСП? (make mrproper я делал)
3) Почему не удается открыть Первичную консоль?? Может я в конфиге накосячил, хотя на то не похоже, т.к. для Генту и АСП использую один конфиг, ну небольшие изменения делал.

Спасибо!

Добавлено: 07 ноя 2005, 00:33
Llama
пологаю, проблема в загркзчике, а точнее -в том, что надо передавать корректную опцию root=

Добавлено: 07 ноя 2005, 01:50
DyadyaVova
Неа, с загрузчиком всё ОК!
Загружаюсь через командную строку Груба(вот такой извращенец я) и там всё под контролем

Добавлено: 07 ноя 2005, 12:15
kif0rt
DyadyaVova писал(а):Неа, с загрузчиком всё ОК!
Загружаюсь через командную строку Груба(вот такой извращенец я) и там всё под контролем
В menu.lst после title ... секция root описана правильно !?

Добавлено: 07 ноя 2005, 18:20
DyadyaVova
А причем тут menu.lst, я же сказал что пишу всё руками, т.е. при запуске компа выскакивает командная строка груба, в ней я всё и пишу. Чтобы вы не сомневались в правильности команд, приведу более подробное описание:
Хард, который был Slave,и соответственно имел разделы
/dev/hdb1 /boot ext2
/dev/hdb2 swap swap
/dev/hdb3 / reiserfs
/dev/hdb4 /bla reiserfs

Я переключил на Master. В /etc/fstab все hdb поменял на hda.
При загрузке пишу в командной строке груба:
root (hd0,2)
kernel (hd0,0)/bzImage
boot

Всё. Ядро начинает грузиться.
Насколько я знаю, даже если в menu.lst не прописан root=... то
паника может возникнуть по другой причине, ядро заорет, что мол
Unable to mount root fs
Тут же совсем другие крики:
Unable to open initial console

Добавлено: 07 ноя 2005, 23:54
Llama
DyadyaVova, initrd Пушкин прописывать будет? да и root тодже недобно бы... +возможны косяки с devfs

Добавлено: 08 ноя 2005, 02:07
DyadyaVova
А вот что-то раньше без initrd обходился, поскольку ядро практически монолитно. А это вообще что такое initrd?? Слыхать-то я слыхал, а вот физический смысл у него каков??

Добавлено: 08 ноя 2005, 04:39
Nimitz
Да... Силен.

От себя могу предложить добавить после второй строки
initrd /initrd

или

initrd (hd0,0)/initrd

Вот еще одно из

kernel (hd0,3)/boot/bzImage root=/dev/hda3 console=tty0 resume=/dev/hda1
module (hd0,3)/boot/initrd


А вообще утилитку не мешало б, которая автоматом делает нормальный загрузчик. Может на CD1 какого нибудь из твоих двух есть при загрузке?


Касаемо пересборки ядра... процедура стандартная, чего там не работает не знаю.

По Unable to open an initial console google неплохо показал себя:

http://wiki.archlinux.org/index.php/Udev_(Русский)

WARNING: Unable to open an initial console
Если ваше ядро при загрузки зависает с ошибкой:
WARNING: Unable to open an initial console

загрузитесь с инсталяционного диска ArchLinux
смонтируйте свой корневой раздел (пример: mount /dev/discs/disc0/part3 /mnt)
смените корневой каталог командой chroot (пример: chroot /mnt)
создайте отсутствующие статические узлы в /dev:
cd /dev
mknod -m 660 console c 5 1
mknod -m 660 null c 1 3

Эти узлы необходимы для загрузки Udev.
Дополнительную информацию можно посмотреть здесь.

Добавлено: 08 ноя 2005, 10:17
Llama
Насчет initrd могу и ошибаться. ядо-то как японимаю самосборное... Вмысл в том, что в современных дистрибутивах /dev зачастую создается динамически при помощи udev или devfs - соответсвенно если это не работает по каким-то причинам - то /dev будет пустой

Добавлено: 19 ноя 2005, 16:10
Darth Vox
DyadyaVova писал(а): А это вообще что такое initrd?? Слыхать-то я слыхал, а вот физический смысл у него каков??
initrd - Initial Ramdisk, т.е. образ ФС, содержащий жизненно важные для последующей загрузки данные. Вроде бы.

Добавлено: 19 ноя 2005, 21:27
mend0za
ответ неверный

в initrd содержаться модули ядра, которые подгружаются до монтирования корневой файловой системы.

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

Добавлено: 20 ноя 2005, 08:00
michael
Без initrd вполне можно обойтись, если поддержка корневой файловой системы и устройства, на котором она находится вкомпилена в ядро. Ну и если ничего странного не хочется.:)

Добавлено: 20 ноя 2005, 12:42
Llama
В случае с LVM/DM обйотись все равно нельзя.