Se mi perdoni il privato, preferirei allegarti qualche suggerimento che a me è stato uile. Si tratta di una mail privata che ho scambiato con un amico di altra lista.
*** on Monday 25 August 2003 15:08, [EMAIL PROTECTED] wrote: > Scusate il disturbo, > E' la prima vola che mi trovo a dover compilare un kernel, > ho letto da qualche parte che per compilare i kernel 2.4.xx si > deve intervenire su alcuni pacchetti chiave quali gcc, libc s > SysVInit e modificare alcuni file di sistema. What? Non credo proprio! Al massimo devi rinominare le librerie dei moduli, e (ma non è necessario) l'etraversion del makefile. Per evitare di scrivere troppo ;-), ti allego quanto detto, tramite copiaincolla: ***** > - Copio da un'altra parte vmlinuz, System.map, Config rinominati > (consiglio tuo) yes, puoi anche semplicemente rinominarli (non occorre che li sposti altrove). Questo perche' nel caso che il kernel compili correttamente, lo agganci a lilo e poi ti fa uno scherzetto da prete come ha fatto a me, puoi tornare indietro come se niente fosse semplicemente avviando con un floppy (o dal cd in rescue mode), rimettendo a posto i nomi dei 3 files di cui sopra e dando nuovamente lilo -v. Questo ti permette di salvarti le chiappe sempre e comunque senza rischiare di combinare casini irreparabili ;) > - Stessa sorte per la /lib/modules/2.4.x (sempre roba tua). yes, vedi sopra magari non e' necessario, ma te lo dico lo stesso. Se stai compilando un nuovo kernel (ossia non stai ricompilando quello che gia' usi) spostati nella dir /usr/src e rimuovi il link 'linux', quindi decomprimi il nuovo kernel nella stessa dir dove ti trovi e ricrea il link che punti al nuovo kernel. In soldoni (ammettendo che ti stia compilando il 2.4.21): cd /usr/src rm linux (rimani nella dir dove sei) tar xvfz /percorso/dove/hai/scaricato/il/kernel/compresso/linux-2.4.21.tar.gz ln -s linux-2.4.21 quindi entra nella dir dei nuovi sorgenti ('cd linux'). Ok, andiamo avanti: > - #make mrproper meglio di no... questo comando oltre ad eliminare residui di precedenti configurazioni ti cancella anche il file .config che contiene la configurazione precedente del kernel. Alcune volte puo' essere una scelta cosapevole, ma altre (ad esempio se vuoi solo correggere qualche piccola cosa) e' un suicidio perche' ti tocca ricominciare la configurazione da capo. Se dovesse accadere accidentalmente, il file puoi recuperarlo dal config che hai rinominato nella dir /boot (ovviamente questo fa riferimento al kernel che ha generato, quindi e' relativo al vecchio kernel)... oggi mi spiego come un cane col labbro leporino, pardon! > - #make xconfig (considera il mio livello..) meglio 'make menuconfig' (anche se non sei espertissimo) da consolle che e' semi-grafico e ti permette di evitare di avviare x (fai le stesse cose muovendoti con le frecce anziche' col mouse senza la necessita' di avviare il server grafico che e' peeeeeeesante ;) ). > - # vi /usr/src/linux-xxxx/Makefile > (nella riga EXTRAVERSION metto la data al nome del nascituro kernel) se vuoi, ma non e' necessario. > - #make dep Ok > - #make clean non importa. Questo comando ti serve solo per eliminare i "residui" di vecchie compilazioni. Diventa necessario qualora, a fronte di una ricompilazione andata male o non terminata, stessi ricominciando la procedura da capo facendo qualche modifica in make menuconfig. Se i sorgenti sono "vergini" (leggi appena scompattati) e' del tutto inutile usare make clean... male non fa, ma e' superfluo. > - #make bzImage > LOG-k 2> grattachecca Bravo (fra un po' eviterai di registrare i messaggi della compilazione, ma adesso che e' la prima volta, se dovessero spuntare fuori errori, in questo modo puoi postarli senza problemi) > - #make modules > LOG-m 2> fichetto Benissimo > - #make modules_install Yes sir > - #make install senti... ascolta me, facciamo le cose per benino. Non usare 'make install', ma fai le cose a manina che almeno sappiamo cosa abbiamo fatto. Terminata l'installazione dei moduli tu sei ancora in /usr/src/linux. Copia nella dir boot i seguenti files: .config (lo trovi nella dir dove sei), rinominandolo 'config-2.4.21' System.map (idem come sopra), rinominandolo 'System.map-2.4.21' bzImage (lo trovi in /usr/src/linux/arch/i386/boot/ ed e' il nuovo kernel!!!), rinominandolo 'vmlinuz-2.4.21' Fino a qua niente di complicato mi pare. A questo punto, spostati nella dir /boot e cancella i vecchi link (verifica che siano dei link con 'ls -la', se non lo fossero limitati a rinominarli): cd /boot rm vmlinuz rm System.map rm config ricrea i nuovi link che puntino al nuovo kernel: (sei in /boot) ln -s vmlinuz-2.4.21 vmlinuz ln -s System.map-2.4.21 System.map ln -s config-2.4.21 config Verifica che lilo faccia riferimento effettivamente a 'vmlinuz' come immagine di avvio (dovresti avere in lilo.conf una riga del tipo: 'image=/boot/vmlinuz' se non e' cosi' correggila in questo modo). Chiudi lilo.conf, quindi il solito 'lilo -v'. Riavvia e godi (o piangi) ;)) > Se tutto va bene (se...) controllo il nuovo /etc/lilo.conf, e > riavvio, con le mani dove sai. Può andare? Vai libero > Attendo fiducioso risposta, e intanto leggo qualcosa sui > moduli, che non ne so niente (mi consigli di mettere i supporti USB > modulari o statici? meglio modulari > La stessa richiesta per il driver sonoro). anche questo modulare. WARNING: ricorda di compilare in modo statico *tutti* i filesystem che ti servono [non solo i fs di linux (non so cosa usi, reiser? ext2? ext3?) ma anche l'eventuale fat, vfat ed il supporto ad ntfs senno' non funzia nulla al riavvio]. ******* Mi sembra ci sia tutto. > Domanda numero due: ho un portatile su cui ho installato linux, non > mi riconosce la pcmcia e va in kernel panic all avvio, quali moduli > del kernel devo configurare? Quelli delle schede pcmcia, naturalmente. > Il pc è un compaq presario 907ea, il > kernel che ho scaricato è il 2.4.21 può andare bene? Non ho il portatile, ma qualsiasi kernel liscio ed in versione stabile (e quello è l'ultimo stabile!) va bene. Un ultimo consiglio: leggi quanta più doc possibile in /usr/src/linux/Documentation. Ciao -- ***************************************************** * I'm bombadur the dwarf, and this is my axe ! * * * * Coltivate Linux, tanto Window$ si pianta da solo * *****************************************************