Nowe posty

xx Jak poprawić polecenie wyszukujące największe pliki? (3)
2021-06-13, 20:00:52
xx CUPS - Wyłączenie hostname w nazwie udostępnionej drukarki (6)
2021-06-12, 02:45:06
xx Tłumaczenie prostych programów napisanych w csh na sh (0)
2021-06-11, 16:07:52
xx Do regulaminu (0)
2021-06-07, 02:16:34
xx kompletny restore systemu (5)
2021-06-03, 11:47:08
xx Połączenie wifi, nie skanuje w poszukiwaniu sieci. (1)
2021-06-02, 22:04:54
xx problemy z instalacją (1)
2021-06-02, 14:23:26
xx Pomoc w napisaniu skryptu (11)
2021-05-31, 13:34:19
xx Instalacja php5.4 na Debian10 (2)
2021-05-31, 09:13:54
xx Wielkie firmy wymuszają dane (7)
2021-05-30, 20:25:21

Autor Wątek: Kompilacja jądra  (Przeczytany 4190 razy)

paroxyzm

  • Gość
Kompilacja jądra
« dnia: 2007-12-05, 09:58:02 »
Witam,

Mam laptop dell inspiron 6000 i próbuje postawić jakieś jajko...
niestety podczas bootowania wywala mi błąd:
VFS: Cannot open root device UUID=(blebleble...) or unknown block (0,0)
Please append correct root= boot option


Z tego co czytałem na sieci to podobno jest to wynikiem, tego, że nie wkopmilowało się w jądro obsługi plików ext2 albo ext3...
Jednak mam je wkompilowane.

Kompilacje robiłem tak:
cd /usr/src/linux-XXX/
make menuconfig
make dep
make
make modules
make modules_install



%%%% .conf
# File systems
#
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_JBD=y
%%%%

%%%% menu.lst

title      Ubuntu, kernel 2.6.20-16-generic
root      (hd0,1)
kernel      /boot/vmlinuz-2.6.20-16-generic root=UUID=0a23c8af-6927-4b02-934c-15e48dde1ddf ro quiet splash
initrd      /boot/initrd.img-2.6.20-16-generic
quiet
savedefault


title final_try
root      (hd0,1)
kernel      /boot/vmlinuz root=UUID=0a23c8af-6927-4b02-934c-15e48dde1ddf ro single

Dzięki za info.

chmooreck

  • Gość
Kompilacja jądra
« Odpowiedź #1 dnia: 2007-12-05, 10:16:25 »
Cytuj
VFS: Cannot open root device UUID=(blebleble...) or unknown block (0,0)
Please append correct root= boot option


root=UUID=0a23c8af-6927-4b02-934c-15e48dde1ddf
opis błędu chyba jest jasny ? ;-)
a nie możesz po prostu podać czegoś w stylu /dev/sda1 (tam gdzie masz partycję '/') ?

paroxyzm

  • Gość
Kompilacja jądra
« Odpowiedź #2 dnia: 2007-12-05, 11:55:31 »
Cytat: chmooreck
Cytuj
VFS: Cannot open root device UUID=(blebleble...) or unknown block (0,0)
Please append correct root= boot option


root=UUID=0a23c8af-6927-4b02-934c-15e48dde1ddf
opis błędu chyba jest jasny ? ;-)
a nie możesz po prostu podać czegoś w stylu /dev/sda1 (tam gdzie masz partycję '/') ?
Dzięki za odpowiedź.

Spróbuję dodać, ale nie sądzę, żeby to coś zmieniło,
bo root=UUID=0a23c8af-6927-4b02-934c-15e48dde1ddf
jest dokładnie taki sam dla nowego kernela(final_try) jak i dla działającego....

Dlaczego nie stworzył się obraz initrd??

P.S.
Co to jest linux-headers w /usr/src i czym się różni od źródeł?

Dzięki:D

chmooreck

  • Gość
Kompilacja jądra
« Odpowiedź #3 dnia: 2007-12-05, 12:16:58 »
initrd nie tworzy się 'z automatu', musisz go sobie wygenerować narzędziami dostępnymi w dystrybucji - tutaj może być problem, brak wkompilowanej obsługi sterownika SATA/IDE i brak odpowiedniego modułu w initrd

do kompilacji jajek z serii 2.6 wystarczy
# make all modules_install

linux-headers są to nagłówki jądra, z którym został skompilowany glibc, poza modułami jądra wszystkie kompilowane programy powinny korzystać (w razie potrzeby) właśnie z nich

paroxyzm

  • Gość
Kompilacja jądra
« Odpowiedź #4 dnia: 2007-12-06, 00:19:16 »
W grubie - menu.lst
zmieniłem UUID na zwykły wpis

 
kernel /boot/vmlinuz root=/dev/sda2 ro

Niestety ten sam błąd

.conf jest dokładnie taki sam jak na stronie:
http://lindeman.nu/category/linux-on-dell-insipron-6000


Sciągnąłem sobie .conf stamtąd.... w końcu ten sam(?) nieznacznie różniący się sprzęt.

Dzięki

arctgx

  • Gość
Kompilacja jądra
« Odpowiedź #5 dnia: 2007-12-06, 01:04:32 »
Na działającym Linuksie zobacz poleceniem mount, gdzie masz zamontowaną główną partycję. to powinno wyeliminować problem jej wyboru w linii komend jądra.

Ale problem może być inny. Skoro jest to sda*, to może do jądra trzeba wrzucić na stałe lub do initrd moduły obsługi dysków SATA i kontrolera na płycie głównej.

Pogrzeb po forum - już podobny problem był całkiem niedawno - rozwiązany zresztą.

paroxyzm

  • Gość
Kompilacja jądra
« Odpowiedź #6 dnia: 2007-12-06, 18:32:16 »
Cytat: arctgx
Na działającym Linuksie zobacz poleceniem mount, gdzie masz zamontowaną główną partycję. to powinno wyeliminować problem jej wyboru w linii komend jądra.
mount
/dev/sda2 on / type ext3 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
/sys on /sys type sysfs (rw,noexec,nosuid,nodev)
varrun on /var/run type tmpfs (rw,noexec,nosuid,nodev,mode=0755)
varlock on /var/lock type tmpfs (rw,noexec,nosuid,nodev,mode=1777)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
devshm on /dev/shm type tmpfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda1 on /windows type ntfs (rw,noexec,nosuid,nodev)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)


Cytat: arctgx
Ale problem może być inny. Skoro jest to sda*, to może do jądra trzeba wrzucić na stałe lub do initrd moduły obsługi dysków SATA i kontrolera na płycie głównej.

Pogrzeb po forum - już podobny problem był całkiem niedawno - rozwiązany zresztą.
OK


Dzieki:)

ankul

  • Gość
Kompilacja jądra
« Odpowiedź #7 dnia: 2007-12-07, 12:21:14 »
Witam

Jeżeli masz gdzieś pod ręką jakieś live cd to zabotuj się z niego i podaj
wyniki komendy:
file /boot/initrd.img-2.6.20-16-generic
ważne jest czy initrd to skompresowany sytem:
ext2/ext3 - najczęściej spotykane (knoppix "series") czy
cpio - debian czy
cramfs - chyba stary debian czy
squashfs - np finnx czy
lzma - INSERT
czy jakieś jeszcze inne cudo
do tych systemów plików musisz mieć wkompilowane moduły (jeśli taki jest
fs initrd), i nie zapomnij o ramfs i tmpfs
więcej w katalogu ./Documentation w źródłach kernela

Interpretacja linii
root=UUID=0a23c8af-6927-4b02-934c-15e48dde1ddf ro quiet splash
leci najczęściej już w initrd tam jeżeli coś się wywali
to wyrzuca do "very limited shell" (busybox) pozwala to rozpoznać
gdzie nam coś się zatrzymuje.

ps.
title final_try
root        (hd0,1)
kernel        /boot/vmlinuz root=UUID=0a23c8af-6927-4b02-934c-15e48dde1ddf ro single

Kernel bez initrd? nie mam dużego doświadczenia ale nigdy takiego nie
widziałem.

PAX