Šta je novo?

bzImage i kernel panic

kUdtiHaEX

Super ridža
Administrator
Učlanjen(a)
18.07.2001
Poruke
18,077
Poena
1,365
Moja oprema  
CPU & Cooler
Intel® Core™ i5-9500F, NZXT Kraken Z63
GPU
Asus GTX 2070 Super
Storage
Samsung 980 Pro NVMe 1 TB
Kućište
NZXT H210i
Monitor
LG C2 42"
Miš & tastatura
Logitech G502, Keychron K8, Nuphy Air75, Ducky TKL One 2
Ostale periferije
Glupi HP štampač
Laptop
Apple Macbook Pro 14" M1
Tablet
Apple iPad Pro 11"
Mobilni telefon
Apple iPhone 13 Pro Max
Pametni uređaji
Apple Watch Ultra
Pristup internetu
  1. Kablovski internet
Elem, imam sveze instaliranu Fedoru Core 2. Sa njom dolazi 2.6.5.1 kernel, ako se ne varam. Treba da instaliram modem (Lucent 56k) koji radi na svim mogucim distroima bez ikakvog petljanja sa kernelom sem na FC 2 (a radi i na FC 1.9 :)).
E sada, drajveri za modem su za kernel 2.6.6 a ja imam nesto stariji. OK, rekompajliracu noviji kernel, ionako mi treba NTFS podrska.
Do sada sam rekompajlirao kernel bar 20 puta, proceduru savrseno poznajem od konfigurisanja do namestanja LILO-a ili GRUB-a. Ovaj put jednostavno negde gresim. Naime, iskompajlirao sam 2.6.7 verziju kernela i dobio bzImage koji sam prekopirao u /boot. Editovao sam grub.conf i dodao linije:
title Fedora Core 2 (2.6.7)
root (hd0,0)
kernel /bzImage ro root=LABEL=/ rhgb quiet

Resetovao sam sistem, pokusao da pokrenem novi kernel i dobio poruku:
ERROR 13: Kernel panic - VFS - Unable to mount root fs on unknown block (0,0).

Ideje?
 
Zaboravio si da u kernel image ugradis podrsku za linuxov fajl sistem; znaci, podrsku za FS particija /boot i / ne treba kompajlirati kao module, vec kao built-in.
 
Nisam dirao podrsku za FS particije / i /boot....samo sam dodao NTFS podrsku u tom delu.
 
nisi napravio initrd u kome bi bili svi moduli potrebni za citanje root particije. verovatno ti u /etc/lilo.conf lepo pise da se za 2.6.5 ucitava neki tamo initrd-2.6.5 ili slicno. isto to moras da napravis i za novi kernel. znaci, instaliras module pa pravis initrd...
 
Ne, nisam napravio initrd ali ne pozivam initrd za novi kernel. Znaci linija initrd ne postoji za novi kernel, dok za stari postoji. Takodje, koristim GRUB.
 
pa to je i problem - u initrd-u za stari kernel ti se nalaze moduli za file system-e, a novi niti si napravio niti si ucitao, tako da ti je novi kernel ostao bez tih modula i ne moze da cita te file system-e...
 
Tako je - nisi napravio initrd, tj ram disk image, gde moraju da idu drajveri za FS ako ih kompajliras kao module. Initrd pravim samo zbog bootsplash-a (ako ga pravim :) ). Ja ipak vise volim da FS podrsku ugradjujem u kernel image.
 
OK, kako da napravim glupi intitrd za novi kernel?
 
I howto na lokaciji /usr/src/linux/Documentation/initrd :)
 
Sad ste me potukli do kolena :)
 
Vrh Dno