Pagina 1 di 1

[RISOLTO] Kernel e Initrd

Inviato: dom 27 apr 2008, 14:02
da Vic Steele
Salve a tutti, sono nuovo in questo ambiente e innanzitutto saluto tutti, e poi vi ringrazio per l'esistenza di questa comunità.
Vi espongo il mio problema.
Ho una buona esperienza con Debian, e avendo la curiosità di spostarmi oltre questo sistema, ho puntato su Slackware, su cui ho l'esperienza di 5 minuti passati sul pc di un amico.
Non volendo rinunciare a Debian (e, ahimè, anche a Windows, che innegabilmente una volta su cento serve ancora) ho pensato che non ci sarebbe stato nessun problema se avessi creato un'altra partizione e fatto un altro boot con Slackware.
Per cui ho scaricato Slackware 12 e l'ho installato, apparentemente nessun problema.
L'unica cosa è che non ho installato il suo Lilo, in quanto ho preferito aggiornare il grub di Debian.
Apparentemente è andato tutto per il meglio, ma quando avvio Slackware durante il caricamento mi salta fuori l'errore:
Kernel Panic - not syncing: VFS: unable to mount root-fs on unknown-block(0,0)

Ho visto in giro che il problema è dovuto all'assenza di file .img creati con Initrd, e montando da Debian la partizione installata di Slackware ho effettivamente visto che nella directory /boot sono presenti solo i vari kernel e nessun .img, ma non avendo nessuna esperienza non ho ancora avuto modo di risolvere.
Avrei due domande da farvi:
1) Vedo la presenza di quattro tipi di Kernel: vmlinuz-generic-2.6.21.5 ; vmlinuz-generic-smp-2.6.21.5 ; vmlinuz-huge-2.6.21.5 e vmlinuz-huge-smp-2.6.21.5-smp . Sono sotto architettura i386, ho tentato di bootare il generic, ho fatto bene? Quali sono le differenze tra questi kernel?
2) Dove posso trovare una procedura completa per l'Initrd?

Vi ringrazio in anticipo per il supporto.

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 14:31
da Toni
ciao e benvenuto

1)la sigla smp indica che il kernel offre supporto per processori multicore ( dual core , core duo ,quad core , etc etc)
quindi se sei in possesso di un processore del genere scegli smp.
la differenza tra generic e huge è che un kernel generic offre supporto per l'hardware più comune ( soprattutto per i controller dei dischi ) , mentre huge include supporto per tutto l hardware supportato dal kernel linux ; in genere si tratta di un kernel da utilizzare per l' installazione.

2)http://www.slacky.eu/wikislack/index.ph ... itrd_HOWTO

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 14:33
da tigerwalk
il comando per creare l'initrd da dare dopo essere diventato root è:

Codice: Seleziona tutto

mkinitrd -c -k 2.6.xx.x -m ext3 -r /dev/sdax
ovviamente al posto delle xx va messa la versione del tuo kernel (che otterrai dal comando uname -r) e la partizione di boot (dove risiederà l'initrd). ext3 se utilizzi quello come file system.
p.s.: il kernel smp ha il supporto per i multiprocessore già attivato.
oops, battuto sul tempo...

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 14:40
da Vic Steele
Grazie a entrambi per la risposta.
Rimane un'altra questione: non ho accesso al sistema, posso lanciare il comando dopo aver bootato da disco come per l'installazione?

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 14:51
da tigerwalk
Vic Steele ha scritto:Grazie a entrambi per la risposta.
Rimane un'altra questione: non ho accesso al sistema, posso lanciare il comando dopo aver bootato da disco come per l'installazione?
devi chrootare sulle partizioni di slackware.
avvia una live o un' altra distro
monta le partizione di slackware /root in un mount point che ti sei creato, ad es. /mnt/slacky
poi fai il chroot
chroot /mnt/slaky /bin/bash
da questo momento i comandi avranno effetto sulla partizione di slackware.

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 14:54
da slucky
penso sia possibile, oppure da Debian ti chrooti sulla Slack e da lì lanci il comando per creare l'initrd, ma se invece di usare il kernel-generic usi il smp, non hai bisogno dell'initrd ;)

Saluti

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 15:09
da Vic Steele
Ho chrootato da Debian, in effetti non ci avevo pensato.
Ha creato initrd.gz che ho subito aggiunto al GRUB e ho riavviato.
Adesso però mi esce quest'altro errore:

ERROR: No /sbin/init found on rootdev (or not mounted). Trouble ahead.
Kernel panic - not syncing: Attempted to kill init!

Credo di aver già capito il motivo, ecco il mio Grub allo stato attuale:

title Slackware 12
root (hd0,2)
kernel /boot/vmlinuz root=(IN ro vga = normal
initrd /boot/initrd.gz
savedefault
boot

Il grub mi ha lasciato generico il caricamento del Kernel, presumo. Adesso proverò a scrivere il generico.

EDIT: sostituito e riavviato, il problema resta. Ecco cosa mi scrive:
initrd.gz: loading Kernel modules from initrd image:
Using /lib/modules/2.6.21.5/kernel/fs/mbcache.ko
Using /lib/modules/2.6.21.5/kernel/fs/jbd/jbd.ko
Using /lib/modules/2.6.21.5/kernel/fs//ext3/ext3.ko
Mount: cannot read /etc/fstab : no such file or directory.

L'errore poi è lo stesso sopra citato.
Per curiosità sono andato a vedere /etc/fstab e sembra ok:
/dev/hdc6 swap swap defaults 0 0
/dev/hdc3 / ext3 defaults 1 1
#/dev/cdrom /mnt/cdrom auto noauto,owner,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
proc /proc proc defaults 0 0
(tenete presente che ho scelto liberamente durante l'installazione di non montare gli altri dischi, quando funzionerà lo farò da solo)
A questo punto quale può essere il problema?
Ma posso davvero montare smp? Anche dal mio i386? Non avrò problemi in futuro?

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 15:39
da 414N
Perchè monti un'immagine generic e non una huge (che non implica smp come riportato erroneamente in precedenza)?
Se ne è parlato qui.

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 16:26
da slucky
non ho più il kernel di default sulla mia Slack, ma se non ricordo male ci dovrebbero essere anche le voci sul kernel huge e huge-smp, sostituisci la voce in grub e riprova.

Ciao

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 16:31
da submax82
se non sei pratico con mkinitrd puoi usare questo script http://www.slackware.com/~alien/tools/m ... nerator.sh

oppure puoi provare anche il kernel precompilato sul mio sito... nella pagina di kernelpkg trovi il 2.6.24.5 per Slackware 12.0 già pronto che non ha bisogno di initrd ;)

Re: Kernel e Initrd

Inviato: dom 27 apr 2008, 16:51
da Vic Steele
Ragazzi, che dire... grazie a tutti quanti, per la vostra disponibilità e per la celerità dei vostri interventi.

Vi sto scrivendo in questo momento da Slackware, che dopo aver impostato nel Grub il caricamento dell'Huge non ha avuto altri problemi.
A dire il vero qualcun altro minore adesso c'è, ma posso documentarmi da solo.

@ Submax: Dammi il tempo di ambientarmi un po' in questo sistema, e non mancherò affatto di provare il tuo aggiornato Kernel :) .

Grazie ancora a tutti.

EDIT: Aggiunto tag [RISOLTO]