Ошибка при первом запуске системы: "VFS: Cannot open root device "303" or unknown block(3,3)"
Добрый день!
После компиляции ядра, при первом запуске Gentoo, возникает следующая ошибка:
"VFS: Cannot open root device "303" or unknown block(3,3)"
Please append a correct "root=" boot option; here are avaible partitions:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(3,3)
Я уже что, только не пробовал, ничего не получается.
Вот мои конфигурационные файлы:
/etc/fstab:
/dev/hda1 /boot ext2 defaults, noatime 1 2
/dev/hda3 / ReiserFS defaults 0 1
/dev/hda2 none swap sw 0 0
/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
/etc/lilo.conf:
boot=/dev/hda
prompt
timeout=50
default=gentoo
image=/boot/vmlinuz
label=gentoo
read-only
root=/dev/hda3
image=/boot/vmlinuz
label=gentoo.rescue
read-only
root=/dev/hda3
append="init=/bin/bb"
/etc/make.conf
CFLAGS="-O2 -march=i686 -pipe"
CXXFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
MAKEOPTS="-j2"
GENTOO_MIRRORS="http://gentoo.osuosl.org/ ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ ftp://ftp.wallawalla.edu/pub/mirrors/ftp.gentoo.org ftp://ftp.ntua.gr/pub/linux/gentoo/ http://ftp.ntua.gr/pub/linux/gentoo/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo http://mirror.muntinternet.net/pub/gentoo/ ftp://mirror.muntinternet.net/pub/gentoo/ http://mirror.mdfnet.se/mirror/gentoo ftp://mirror.mdfnet.se/gentoo http://mirror.yandex.ru/gentoo-distfiles/ ftp://mirror.yandex.ru/gentoo-distfiles/ http://gentoo.kiev.ua/ftp/ ftp://gentoo.kiev.ua/ http://mirror.bytemark.co.uk/gentoo/ ftp://mirror.bytemark.co.uk/gentoo/"
USE="-gtk -gnome -qt3 -qt4 -kde -dvd -alsa -cdr -X -ipv6 sasl lmtp apache2 mysql"
Вывод lspci:
00:00.0 Host bridge: Intel Corporation 82845G/GL[Brookdale-G]/GE/PE DRAM Controller/Host-Hub Interface (rev 03)
00:02.0 VGA compatible controller: Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 82)
00:1f.0 ISA bridge: Intel Corporation 82801DB/DBL (ICH4/ICH4-L) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801DB (ICH4) IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 02)
00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 02)
01:09.0 Ethernet controller: VIA Technologies, Inc. VT6105 [Rhine-III] (rev 8b)
01:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
Видимо, я где-то чего-то упустил при выставления опций ядра, но очень непонятно, что именно.
Буду очень благодарен за оказанную помощь!
- Для комментирования войдите или зарегистрируйтесь
reiserfs в ядре включен?
reiserfs в ядре включен?
Где мало слов, там вес они имеют... (с) W. Sheakespeare
ReiserFS
Вот какие опции я включал в настроечном меню:
<*> Reiserfs support
│ │ [*] Enable reiserfs debug
│ │ [*] Stats in /proc/fs/reiserfs
│ │ [*] ReiserFS extended attributes
│ │ [*] ReiserFS POSIX Access Control Lists [*] ReiserFS Security Labels
http://clearkbdbuf.livejournal.com
попробуй root=/dev/sda3
попробуй root=/dev/sda3
Где мало слов, там вес они имеют... (с) W. Sheakespeare
IDE
Дык у меня винт подключен по IDE, я читал, что если он SATA, то тогда обозначается как /dev/sda3.
Вот:
livecd linux # ls -la /dev | grep sda
livecd linux # ls -la /dev | grep hda
brw-rw---- 1 root disk 3, 0 Jan 2 2003 hda
brw-rw---- 1 root disk 3, 1 Jan 2 2003 hda1
brw-rw---- 1 root disk 3, 2 Jan 2 2003 hda2
brw-rw---- 1 root disk 3, 3 Jan 2 2003 hda3
Или я что-то путаю? Но на всякий случай попробую, чем черт не шутит.
http://clearkbdbuf.livejournal.com
http://www.gentoo.ru/node/144
http://www.gentoo.ru/node/14436
Где мало слов, там вес они имеют... (с) W. Sheakespeare
libata
libata - это конечно хорошо, но как быть с ошибками, при запуске lilo см. ниже
http://clearkbdbuf.livejournal.com
с lilo не знаком, у меня
с lilo не знаком, у меня grub... насколько я понимаю, boot=/dev/hda - это параметр для lilo, попробуй его не менять...
а root=/dev/hda3 - это для ядра, его поменяй...
...второе - не знаю как в lilo разделы нумеруются, в грубе sda3 будет hd0.2...
ну и третье - ядро сам собирал, или генкернелом?
Где мало слов, там вес они имеют... (с) W. Sheakespeare
не дает
1. Поменял на root=/dev/hda3, не трогая boot=/dev/hda, выводит:
Fatal: Illegal 'root' specification: /dev/sda3
2. В лило прописывается, как hda3 и все, я поэтому его и выбрал, я не понял эти обозначения, когда первый раз ставил Gentoo.
3. Ядро собирал сам: cd /usr/src/linux && make menuconfig
http://clearkbdbuf.livejournal.com
ClearKbdBuf написал(а):1.
сдается мне, что вы не включили поддержку вашего ide-контроллера в ядре...
Где мало слов, там вес они имеют... (с) W. Sheakespeare
Я тоже так думаю, но я
Я тоже так думаю, но я повключал практически все что связано с IDE, контроллер у меня интеловский, как видно из вывода lspci, потому поддержку контроллеров других производителей не стал включать. Но все что связано с Ineteloм,а так же пункты, где явно не указано что это не чей либо контроллер тоже включены.
http://clearkbdbuf.livejournal.com
lspci под инсталСД чего
lspci под инсталСД чего показывает? ide контроллер какой?
Где мало слов, там вес они имеют... (с) W. Sheakespeare
вывод lspci (контроллер IDE)
00:1f.1 IDE interface: Intel Corporation 82801DB (ICH4) IDE Controller (rev 02)
http://clearkbdbuf.livejournal.com
http://www.gentoo.ru/node/125
http://www.gentoo.ru/node/12598
Где мало слов, там вес они имеют... (с) W. Sheakespeare
частенько ide ставят и
частенько ide ставят и jmicro. сталкивался даже на дорогих матерях. проверьте. в ядро [*]
P.S.: Linux - это красная таблетка :-) Windows - синяя...
Ошибка Lilo
Не дает он так прописать: после того как в lilo.conf прописал:
...
boot=/dev/sda
...
root=/dev/sda3
...
(точки ... означают пропущенное содержимое)
после /sbin/lilo
выдает:
Fatal: raid_setup: stat("/dev/sda")
http://clearkbdbuf.livejournal.com
Все дело в том что ядро с
Все дело в том что ядро с установочного СД определяет IDE диски как hd*, а новое собранное ядро определяет их как sd*.
это связано с использованием libata.
чтоб установить загрузчик в опцию boot=/.. нужно писать именно hda (ну то есть тот диск на который должен встать загрузчик и как его видит текущее ядро), а вот в опции root= написать соответственно sda*.
я правда настраивал только grub, пришлось еще поправить файл /boot/grub/device.map, тоже вместо /dev/hda прописать /dev/sda, но уже после установки загрузчика. и можно грузить новое ядро
Такая же засада.. После фрюхи
Такая же засада..
После фрюхи все это выглядит просто дико.
тоесть lilo с лайфсд не дает прописывать не существующее устройство sda,
а ядро не может загрузится с устройста hda, потому что оно определилось как sda.
И тупик.
Пути выхода кто нибудь предложит?
ps
grub использовать не могу, т.к. он не понимает мой монитор или видео карту, в общем кракозабрами забивает экран и стоит.
Доброго времени суток!
Доброго времени суток! Столкнулся с подобной проблемой, правда после обновления ядра до 2.6.30, поддержка IDE вкомпилена в ядро, конфиг использовал тот же что и на предыдущей версии ядра(2.6.24)
/etc/fstab:
/dev/hda2 /boot ext2 defaults, noatime 1 2
/dev/hda4 / ext3 defaults 0 1
/dev/hda3 none swap sw 0 0
/etc/lilo.conf:
boot=/dev/hda
prompt
timeout=50
default=WindowsXP
image=/boot/2.6.30-gentoo
label=gentoo
read-only
root=/dev/hda4
other=/dev/hda1
label=WindowsXP
Предполагаю, что проблема в libatа, пробовал вкомпилить её в ядро и отключить поддержку IDE, исправить fstab и lilo.conf, но без результатов. Если кто-то знает что делать, подскажите плз. Уважаемый ClearKbdBuf, если вы нашли выход из сложившейся ситуации, расскажите что делать.
всего 4 действия )))
1. Удостоверьтесь, что ваше железо поддерживается!
2. Избавьтесь от поддержки IDE и включите libata (поддержка IDE в нее входит! между собой эти дврова конфликтуют)!
3. Удостоверьтесь, что модуль поддержки ФС, которая используется в корневом разделе, либо вкомпилен статически в ядро, либо находится в initramfs(поддержка initramfs тоже должна быть включена)!
4. Избавьтесь от Lilo и переходите на grub. ИМХО, grub сложнее, но гораздо более гибок и не имеет ограничений
Это, в принципе, всё, из-за чего может происходить такая ошибка! ;-)
Спасибо, попробую,
Спасибо, попробую, относительно 1-ого пунтка, в этом я уверен, по крайней мери на 2.6.24 работало) По поводу 3-его, поддержка всех используемых фс вкомпилена в ядро По поводу 4-ого я к этому выводу тоже приходил, но как-то руки не доходили пока:) Так что остается вкомпилить поддержку libata и поставить grub)) Кстати, а если у меня SATA жесткий тоже имеется, как он называться будет и IDE жесткий в Grub писать как sd(0,0) или как hd(0,0)?
в грабе везде пишется hd, там
в грабе везде пишется hd, там тока циферки имеют значение ;-)
если к стати есть SATA диски, то советую так же в биосе включить режим SATA контроллера AHCI и включить соответствующую поддержку в ядре ;-) работать будет пошустрее, т.к. иначе работает по протоколу IDE ;-)
Theli написал(а): 4.
я не настолько уверен в этом, груб местами гораздо удобнее но ограничений там определённо больше. например он должен понимать ФС с которой грузит, есть проблемы с загрузкой с SoftRAID/LVM, в отличии от lilo который полностью помещается в MBR.
а зачем помещать boot раздел
а зачем помещать boot раздел на RAID или LVM (особенно LVM)??? О_о
Я прошу прощения за оффтоп и
Я прошу прощения за оффтоп и нубский вопрос, но как удалить Lilo?
Попробовал emerge -C lilo, пакет вроде был удален, по крайней мери 2-ой раз ничего не нашлось. lilo.conf я затер, но все равно грузится Lilo(
Переписать грабом? Или
Переписать грабом? Или затереть нулями MBR(512 байт) через dd?
Нейтральность - высшее достижение сознания!
Переписал грабом. Спасибо, с
Переписал грабом. Спасибо, с ним я разобрался) Осталось разобраться с ядром)) Чет я не могу найти где в ядре включается поддержка libata... Подскажите плз.
Device Drivers ---> <*>
Искать там или это и есть
Искать там или это и есть libata? Если это оно и есть, то оно давно было вкомпилено и в /boot/grub/device.map жесткий диск прописан как /dev/hda, и тот благополучно грузится...
это оно и есть ;-) не знаю,
это оно и есть ;-)
не знаю, что у вас в /boot/grub/device.map, но я ставил граб так: grub-install /dev/sda ... вроде так ))) главное, чтобы в грабе custom-cflags юз-флаг был выключен, иначе ошибки будут типа "hd(128,14800000) not found" или как-то так ;-)
Всем огромное спасибо. По
Всем огромное спасибо. По поводу grub-install /dev/sdb(по разбивке понял что в ядре так определился мой IDE жесткий), это как раз оказалось не важным, т.к. при изменении /boot/grub/device.map как
Писало что /dev/sdb Unknown device. При попытке опросить биос: grub-install --recheck /dev/sdb, grub скидывал по дефолту все что я написал в /boot/grub/device.map, Т.е. установить граб на /dev/sdb как бы не удавалась, не дает ядро с livecd. К счастью этого и не понадобилось, после того как изменил /etc/fstab и /boot/grub/grub.conf на /dev/sdb все заработало, правда отказываются грузится иксы, NVIDIA драйверы мозг парят, но это как говорится "совсем другая история":) Еще раз всем огромное СПАСИБО:)