Pagina 1 di 2
Passare da kernel 2.4.33 a 2.6.20.1
Inviato: lun 2 apr 2007, 14:03
da madtux
Salve a tutti.
Ieri provando a passare da kernel 2.4 a 2.6 e seguendo la guida di wikislack,sembrava
andasse tutto x il meglio quando ad un certo punto va in kernel panic dicendo
Codice: Seleziona tutto
Kernel panic - not syncing: VFS Unable to mount root fs on unknown-block(3,2)
Ho scaricato anche il generic-config provando a fare come nel topic
viewtopic.php?t=18100
solo che non ho usato il oldmenuconfig come un pirla

.
Adesso stavo penando di riscaricarmi il file generic e ricompilarlo da live
usando oldmenuconfig,che da quello che ho capito compila il kernel seguendo la
configurazione precedente.
Ditemi la cosa è fattibile

Non mi va di buttare via tutto e ricominciare

Inviato: lun 2 apr 2007, 14:32
da submax82
certo se usi un config del kernel precedente devi usare prima make oldconfig
per l'errore o fai l'initrd oppure metti built-in il tipo di filesystem di root e il chip del controller hd della scheda madre.
prova anche il mio tool
Inviato: lun 2 apr 2007, 14:34
da tgmx
Il passaggio da 2.4 a 2.6 lo farei usando il kernel precompilato che trovi nel cd della Slack poi cercherei di migliorarlo un po' per volta.
Altrimenti è facile dimenticarsi qualcosa di importante e ottenere errori come quello.
Inviato: lun 2 apr 2007, 15:08
da madtux
@submax
L'idea di usare una live x compilare è buona quindi?
Il fatto di initrd non mi è chiuaro cosa devo fare?
Inviato: lun 2 apr 2007, 15:17
da Luci0
Forse é un problema di initrd.gz ...
Se la root filesystem ext3 o reiserfs devi creare un initrd.gz e modificare lilo.conf e "ricaricarlo".
Di default il supporto di ext3 e reiserfs non é presente nel kernel 2.6 precompilato ...
Altrimenti ti sei dimenticato di aggiungere il supporto al boot di alcuni controller ... leggi il file /boot/README.initrd scritto da Patrick Volkerding in persona...
Per sistemare il pasticcio puoi eseguire il boot dal CD di installazione, montare la partizione ... chroottare sulla partizione montata, creare l' initrd.gz giusto modificare lilo.conf e dare il comando lilo ...
...e come dice Patrick
------------
Have fun! ...

Inviato: lun 2 apr 2007, 15:47
da submax82
madtux ha scritto:@submax
L'idea di usare una live x compilare è buona quindi?
Il fatto di initrd non mi è chiuaro cosa devo fare?
ma perchè devi usare una live?!
prova anche il mio tool se ti piace... magari dopo
Inviato: lun 2 apr 2007, 15:52
da albatros
La serie 2.4 è abbastanza diversa dalla 2.6, ti conviene prendere un config della 2.6 e partire da lì, usando make oldconfig per adattare i file di configurazione ad una minor version più recente (es. da 2.6.18 a 2.6.20).
Per l'initrd secondo me conviene compilare staticamente il supporto ai filesystem che ci interessano.
@madtux: il problema è dovuto al fatto che il kernel non è in grado di accedere al filesystem root e questo può essere dovuto o al mancato supporto per il filesystem (che magari è in dei moduli contenuti nel filesystem stesso) o al mancato supporto per il tuo controller del disco.
La soluzione può essere creare un ram disc iniziale con il supporto ai filesystem che ci interessano nel primo caso (o compilare staticamente il supporto per questi fs), nel secondo abilitare il supporto al proprio chipset.
L'idea di usare una live non è cattiva, ma neanche brillante: non ne vedo il motivo ed inoltre le librerie della live potrebbero essere diverse da quelle della tua distribuzione "dead", insomma, quella installata, per cui potresti avere problemi in fase di esecuzione del programma. Ricorda inoltre che nelle glibc compilate vi è una compatibilità a partire da una certa versione del kernel decisa in fase di compilazione delle stesse.
Inviato: lun 2 apr 2007, 15:57
da Luci0
Comunque creare l' initrd non é così difficile ... basta provare e sporcarsi le mani ...

Inviato: lun 2 apr 2007, 19:29
da Vito
albatros ha scritto:La serie 2.4 è abbastanza diversa dalla 2.6, ti conviene prendere un config della 2.6 e partire da lì, usando make oldconfig per adattare i file di configurazione ad una minor version più recente (es. da 2.6.18 a 2.6.20).
Ecco fatto

Inviato: lun 2 apr 2007, 23:37
da stefanmcds-mnt
posso dare un suggerimento ?
io farei in questi termini
dalla distro slack prenderei il file config da kernels/huge26
è gia funzionante con tutti i moderni hw
ho provato sia sul portatile ASUS A6V dal 2.6.17.13 al 2.6.20.4 che su diversi hw
ovviamente se non hai preventivemente, prima di installare il nuovo kernel, rinominato il vmlinuz e system.map in xxxxx-2.4.xxx ed aggiornato il lilo beh la soluzione migliore è partire dal cd installazione montare il disco chrootare su esso ed eseguire il lavoraccio
Inviato: mar 3 apr 2007, 12:04
da panduz
Usi il fs reiserFs?
Perche' anch'io quando ho ricompilato ho avuto lo stesso errore di kernel panic, alla fine ho risolto mettendo come statico solo i moduli relativi al fs reiserFs, mentre ho messo a dinamico tutto cio' che riguardava gli altri fs
Inviato: mar 3 apr 2007, 13:56
da submax82
panduz ha scritto:Usi il fs reiserFs?
Perche' anch'io quando ho ricompilato ho avuto lo stesso errore di kernel panic, alla fine ho risolto mettendo come statico solo i moduli relativi al fs reiserFs, mentre ho messo a dinamico tutto cio' che riguardava gli altri fs
non è questione del tipo di fs, se non usate initrd si fà così per qualsiasi tipo di filesystem abbiate... per sicurezza metteteli tutti built-in
Inviato: mar 3 apr 2007, 14:32
da Luci0
@madtux
Comunque dai un occhio a Slackware for Dummies ... Capitolo 19
Tips & Tricks ... Ciao

Inviato: sab 26 mag 2007, 11:16
da salvop
scusate,riprendo la discussione,senza aprire altro topic, perché ho lo stesso problema e non riesco a trovare la soluzione.
L'errore è questo:
Kernel panic - not syncing: VFS Unable to mount root fs on unknown-block(3,2)
Ho una slack 11; sono passato al kernel 2.6.21.1, in .tgz, installi relativi moduli ed headers; ho usato il comando mkinirtd per generare initrd.gz con supporto al mio fs ( reiser), modificato lilo, ma, quando provo a far partire la slack con il nuovo kernel, si pianta e dà quel messaggio d'errore. dove sto sbagliando?
Inviato: sab 26 mag 2007, 11:32
da submax82
salvop ha scritto:scusate,riprendo la discussione,senza aprire altro topic, perché ho lo stesso problema e non riesco a trovare la soluzione.
L'errore è questo:
Kernel panic - not syncing: VFS Unable to mount root fs on unknown-block(3,2)
Ho una slack 11; sono passato al kernel 2.6.21.1, in .tgz, installi relativi moduli ed headers; ho usato il comando mkinirtd per generare initrd.gz con supporto al mio fs ( reiser), modificato lilo, ma, quando provo a far partire la slack con il nuovo kernel, si pianta e dà quel messaggio d'errore. dove sto sbagliando?
la current usa glibc diverse ecc... prova il mio pacchetto....
http://submax.altervista.org/slackware/ ... 6-kpkg.tgz (copia e incolla in un'altra finestra di firefox per scaricare)
questo è per slack11 ... non ha bisogno di initrd e aggiorna lilo da solo
altrimenti compilalo a mano...
oppure usa il 2.6 per slackware 11 presente nei cd o dvd sotto extra/ o qui
ftp://ftp.slackware.com/pub/slackware/s ... -2.6.17.13
N.B.: leggi S4D