LINUX.ORG.RU

переход на новое ядро.


0

0

Дистрибутив-Дебиан.диск-SATA. У меня сейчас стоит ядро 2.6.18. по ряду причин я хочу перейти на ядро 2.6.21.5. вносимые изменения по сравнению с текущим ядром: я убираю поддержку в ядре generic/default IDE chipset support , generic PCI IDE chipset Support , и вкомпиливаю поддержку своего чипсета- Intel ich7(Intel PIIXn соответственно) и добавляю Intel ESB,ICH,PIIX3/PIIX4 Pata/Sata support. Это весь список вносимых изменений. а проблема в том что после этого ядро не грузится и пишет что оно не может найти /dev/hda-что судя по сообщениям которые я успеваю увидеть верно так как диск монтируется?(не уверен но анализируется ядром точно как scsi) на scsi. но если скажем в GRUB при загрузке написать вместо root=/dev/hda1 root=/dev/scsi[0-1] то получается тоже самое. в связи с этим вопрос-как узнать куда подключен диск в момент загрузки-т.е. из grub или более общий-что в таком случае можно сделать? Заранее спасибо.

переход на новое ядро.

забыл: непонятно также что делать с тем что fstab везде стоит /dev/hda

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

Какое /dev/scsi0?

Винчестеры на SCSI/SATA нумеруются как /dev/sd[a-z0-9]

Например, root=/dev/sda1

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

да, ошибка глупая. но все равно с sda1 не работает. Нельзя ли как-нибудь через grub посмотреть куда будут назначены диски? а то угадывать очень долго получается...

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

нет поскольку после этого я лишусь всех работующих ядер-я же не смогу потом это исправит, а загрузочного диска у меня нет(пока). Сообственно если это единственный вариант я сделаю загрузочный диск. вот только ошибка которую выдает ядро-это "не существует /dev/[h,s]da[0-1] или unknown block device" и "kernel panic:укажите правильный девайст для монтирования ядра" (перевод относительно вольный но до монтиорования всех остальных дисков) он не доходит. так что в меру моих познаний ему на этом этапе все равно что находится в fstab

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

> нет поскольку после этого я лишусь всех работующих ядер-я же не смогу потом это исправит, а загрузочного диска у меня нет(пока).

Вы это сами придумали? Почему mkinitrd помешает работоспособности старых ядер?

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

у меня ядро без initrd,(точнее ядро собиралось без опции --initrd) если делать с ним(т.е. с опцией) то получаю ошибку еще при установке ядра -mkinitrd.yaird "не могу загрузить? ide generic support"(по смыслу именно так) что верно так как я его отключил.

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

Короче,

# mkinitrd /boot/initrd-2.6.21-mine.img 2.6.21-mine

grub.conf:

title My Cool Distro (2.6.21)
        kernel /boot/bzImage-2.6.21 ro root=/dev/sda1
        initrd /boot/initrd-2.6.21-mine.img

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

нет, мне так кажется. просто если текущее ядро видит диск как /dev/hda а я поменяю в fstab все на /dev/sda то насколько я понимаю текущее ядро будет пытаться подмонтировать разделы как /dev/sda ? возможно я что-то не понимаю тогда прошу мне обьяснить.

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

да и модули в ядро вкомпилены.

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

>просто если текущее ядро видит диск как /dev/hda а я поменяю в fstab 
>все на /dev/sda то насколько я понимаю текущее ядро будет пытаться 
>подмонтировать разделы как /dev/sda ? возможно я что-то не понимаю 
>тогда прошу мне обьяснить.

Все верно.

1. Приготовить два файла fstab (fstab.hda и fstab.sda)
2. В /etc/init.d есть скрипт mountall.sh в начале скрипта вставить
   строки проверки с каким ядром грузимся.
   Например:

if /bin/grep -q 'root=/dev/sda' /proc/cmdline; then
    cp /etc/fstab.sda /etc/fstab
else
    cp /etc/fstab.hda /etc/fstab
fi

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

А нафиг вообще так извращаться, монтируйте раздел по volume label.

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