View Full Version : compilare il Kernel
Sto tentando di compilare il kernel 2.4.18 con Debian woody 3.0
Do' i comandi come da manuale :
cd /usr/src
tar xfvz linux-2.4.18.tar.gz
rm -rf linux
ln -s linux-2.4.18 linux
# tar xfvz pcmcia-cs-xxx.tar.gz <- non lo do non miserve
# ln -s pcmcia-cs-xxx pcmcia <- non lo do
cd linux <---- a questo comando mi risponde che linux non e' una directory.
Quindi non mi azzardo a procedere con il resto delle istruzioni(sempre da manuale).
Cosa sto sbagliando?
Grazie sempre e comuque per la disponibilita'.
Bomboklaat
31-07-2002, 07:02
Se non sbaglio devi dare:
cd /usr/src/linux in una stringa
ilsensine
31-07-2002, 08:12
Il comando tar xfvz linux-2.4.18.tar.gz decomprime il kernel nella directory linux (non linux-2.4.18), che hai prontamente cancellato con il comando successivo.
Originariamente inviato da ilsensine
[B]Il comando tar xfvz linux-2.4.18.tar.gz decomprime il kernel nella directory linux (non linux-2.4.18), che hai prontamente cancellato con il comando successivo.
Lo decomprime in /usr/src/linux giusto?
Quindi il comando rm -rf linux non serve che lo dia ? Qual'e' il suo scopo?
ilsensine
31-07-2002, 13:02
Normalmente /usr/src/linux è un link simbolico alla directory che contiene il vero kernel (sotto la Redhat mi sembra che abbia un altro come, cmq). La procedura corretta per installare i nuovi sorgenti è:
rm -f linux (non serve -r, in quanto un link simbolico è come un file)
tar xzf linux-2.4.18.tar.gz
mv linux linux-2.4.18
ln -s linux-2.4.18 linux
cd linux
ecc.
...accidenti...
mi era venuto il sospetto che "rm" andasse dato prima della decompressione del file con i moduli del kernel.
La sequenza dei comandi l'ho tratta da un manuale Debian trovato sul sito ufficiale.
Se riesco ad arrivare in fondo gli scrivo per avvisare.
Questa sera provo come mi hai indicato.
Grazie.
fai una cosetta "standard" e semplice... (a me senza ulteriori cazzate mie mi è sempre andato)
apt-get install nano
apt-get install libncurses-dev
apt-get install make
apt-get install gcc
cd /usr/src
rm linux
rm -r linux
apt-get remove kernel-source-2.4.18
rm -r linux-2.4.18
apt-get install kernel-source-2.4.18
cd linux-2.4.18
make menuconfig
*configuri tutto quanto ed esci salvando*
make dep
make clean
make bzImage
make modules
make modules_install
cp arch/i386/boot/bzImage /boot/
nano /etc/lilo.conf
dove c'è label=Linux ci dovrebbe essere una riga con /vmlinuz o simile cambiala con /boot/bzImage
premi ctrl x e sici si x salvare dai invio x tenere il nome uguale
una volta alla console scrivi lilo e dai invio ti dice linux add windows add o simile
shutdown -r now e al ritorno ti dovrebbe andare il kernel 2.4.18 compilato
cmq questo grandioso "rm" serve x rimuovere un file facendo
rm nomefile
o una directory facendo
rm -r nomedirectory
non è nulla di plateale ma sempre utile ;)
(cp = copy , mv = move)
qweasdzxc
31-07-2002, 15:38
Originariamente inviato da vici
[B]Sto tentando di compilare il kernel 2.4.18 con Debian woody 3.0
Do' i comandi come da manuale :
cd /usr/src
tar xfvz linux-2.4.18.tar.gz
rm -rf linux
ln -s linux-2.4.18 linux
# tar xfvz pcmcia-cs-xxx.tar.gz <- non lo do non miserve
# ln -s pcmcia-cs-xxx pcmcia <- non lo do
cd linux <---- a questo comando mi risponde che linux non e' una directory.
Quindi non mi azzardo a procedere con il resto delle istruzioni(sempre da manuale).
Cosa sto sbagliando?
Grazie sempre e comuque per la disponibilita'.
#per la prima volta###############
apt-get install libncurses5-dev #per poter usare menuconfig
apt-get install tcl8.3 #per potere usare xconfig
apt-get install kernel-package #cosi ti crei il deb del kernel
apt-get install bin86 gcc make #insomma la roba che serve per compilarlo, non mi ricordo di preciso, probabilmente l'hai gia installata
cd /usr/src
tar zxvf linux-2.4.18.tar.gz #o te lo decomprimi come vuoi
#se lo decomprimi in una dir che non e chiamata linux, fai ln -s dirattuale linux
cd linux
cp /boot/config-x.x.xxxxx ./.config #usa la configurazione del tuo attuale kernel, cosi la prima volta non devi fare miracoli
make-kpkg clean
make-kpkg kernel-image
dpkg -i ../kernel-image-2.x.xx.deb #dicendo a lilo di usare la configurazione corrente
#per le volte successive##############
cp /usr/src/linux
make menuconfig #cambia solo poche opzioni alla volta cosi capisci dove sbagli se sbagli
#make xconfig #magari lo preferisci, funziona solo da x
make-kpkg clean
make-kpkg kernel-image
dpkg -i ../kernel-image-2.x.xx.deb
dopo il riavvio (o anche prima dipende dal kernel) con modconf sistemi i moduli come desideri
Originariamente inviato da qweasdzxc
[B]
#per la prima volta###############
apt-get install libncurses5-dev #per poter usare menuconfig
apt-get install tcl8.3 #per potere usare xconfig
apt-get install kernel-package #cosi ti crei il deb del kernel
apt-get install bin86 gcc make #insomma la roba che serve per compilarlo, non mi ricordo di preciso, probabilmente l'hai gia installata
cd /usr/src
tar zxvf linux-2.4.18.tar.gz #o te lo decomprimi come vuoi
#se lo decomprimi in una dir che non e chiamata linux, fai ln -s dirattuale linux
cd linux
cp /boot/config-x.x.xxxxx ./.config #usa la configurazione del tuo attuale kernel, cosi la prima volta non devi fare miracoli
make-kpkg clean
make-kpkg kernel-image
dpkg -i ../kernel-image-2.x.xx.deb #dicendo a lilo di usare la configurazione corrente
#per le volte successive##############
cp /usr/src/linux
make menuconfig #cambia solo poche opzioni alla volta cosi capisci dove sbagli se sbagli
#make xconfig #magari lo preferisci, funziona solo da x
make-kpkg clean
make-kpkg kernel-image
dpkg -i ../kernel-image-2.x.xx.deb
dopo il riavvio (o anche prima dipende dal kernel) con modconf sistemi i moduli come desideri
Fatto. Sembra tutto ok.
Ma alla ripartenza , sia da dischetto(creato di proposito all richiesta di LILO) che da boot loader(winxp)
il caricamento si ferma. Queste sono le ultime righe che, credo, indichino il perche' del blocco :
request-modules[block-major-3]:root fs not mounted
VFS : cannot open root device "345" or 03:45
please append a correct "root=" boot option
Kernel panic : VFS : unable to mount root FS on 03:45
Premetto che ho due dischi hda con winxp hdb con debian su /dev/hdb5/ , lilo e su /dev/hdb5/ perche uso il loader di winxp.
Altra cosa che non so se indica qualche cosa e' che nella directory /boot c'e' un file che si chiama boot.0345(guarda caso).
Ovviamente (e per fortuna:-) il load della vecchia versione del kernel 2.2.x funziona correttamente.
qweasdzxc
01-08-2002, 10:55
non so se possa essere colpa della configurazione di boot loader che usi, io usavo lilo e basta, quando installi il deb lui va ad aggiornare lilo con la configurazione attuale, non so se e necessario andare a smanettare anche l'osloader.... in quel caso fai come le persone per bene e usa lilo come boot manager nell'mbr
il problema lo da anche se non cerchi di configurare niente del kernel, ma solo usare la configurazione precedente? se usi un kernel 2.2 e possibile che la conf sia abbastanza diversa, e magari e meglio che vai a configurare a mano anche la prima volta
per fare esperienza con qualche kernel che sicuramente funziona, fai un apt-get install kernel-image-2.4.18 (ci sono anche versioni ottimizzate, vedi se ne trovi qualcuna che ti piace o che funziona)
se invece il kernel si blocca dopo che tu hai messo le mani per configurarlo e possibile che sbagli nel configurarlo, in particolare occhio ai controller ide supportati, e al file system supportati, che di solitonon devono essere compilati come moduli ma nel kernel
qweasdzxc
01-08-2002, 10:57
rileggendo meglio: non ti parte neanche da dischetto? allora e probabile che hai sbagliato configurazione, controllala meglio e/o prova un kernel precotto (o che per qualche motivo il dischetto cerchi di montare la partizione sbagliata, boh... magari specificagliela tu a mano)
qweasdzxc
01-08-2002, 10:59
altra cosa che mi viene in mente, ho visto che usi il dischetto... mai provato a usare il cd di debian per fare rescue e altre cose? con quello puoi provare anche un kernel 2.4 (anzi puoi usarlo per installare direttamente la prossima volta debian, che cosi hai anche supporto per qualche filesystem decente)
Originariamente inviato da qweasdzxc
[B]rileggendo meglio: non ti parte neanche da dischetto? allora e probabile che hai sbagliato configurazione, controllala meglio e/o prova un kernel precotto (o che per qualche motivo il dischetto cerchi di montare la partizione sbagliata, boh... magari specificagliela tu a mano)
Mi da proprio l' impressione che non senta la riga "root=" del file lilo.conf.
Mi sai dire come si specifica a mano (come mi stai suggerendo)?
Sapresti anche indicarmi se nella configurazione del kernel con menuconfig da qualche parte si puo' specificare, appunto, la partizione di root direttamente, in modo tale che faccia parte della compilazione del kernel stesso?
ilsensine
02-08-2002, 08:11
La butto lì: non è che hai compilato il supporto per il tuo file system root come modulo? Va compilato staticamente nel kernel, altrimenti come fa a caricare il modulo di gestione del file system se si trova...sul file system?
Sono finalmente riuscito a fare il boot con il kernel 2.4.18.
Ricapitolando : invece di usare il file /boot/.config.xxxx della versione 2.2.x come base di partenza,
ho configurato ex novo con make menuconfig il file config presente con i sorgenti del nuovo kernel nel pacchetto da scompressare.
Tutto sommato diversi parametri me li dava gia' settati.
Ed ora il boot da dischetto funziona.
Ovviamente ho altri problemi(con i moduli) come la scheda di rete e la scheda sonora , ma questa e' un'altra storia. Per questi problemi non rispondetemi. Mi faro' sentire io se non ne vengo a capo.
Ciao e grazie.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.