Introduzione ============ Questo documento è pensato per provvedere ad una lista dei minimi livelli di software necessari per usare un kenel 2.4, così come provvede a delle brevi istruzioni riguardanti qualsiasi altro utente "smanettone" può incontrare cercando di vivere sul filo del rasoio. Se stai facendo un aggiornamento da un kernel pre-2.2.x, per favore, consulta il file Changes incluso con il kernel 2.2.x per più informazioni; molte di queste non sono qui ripetute. Fondamentalmente, questo documento assume che il tuo sistema sia già preparato e funzionante con almeno un kernel 2.2.x. Questo documento è basato originariamente sul mio "Changes" file per i kernel 2.0.x, e quindi deve delle credenziali alla stessa gente di quel file (Jared Mauch, Axel Boldt, Alessandro Sigala, e infinite alre persone sparse per la Rete). L'ultima revisione di questo documento è disponibile su . Sentiti libero di tradurre questo documento. Se lo fai, per favore spediscimi un indirizzo URL con la tua traduzione perchè sia incluso nelle future versioni di questo documento. Smotrite file , yavlyaushisya russkim perevodom dannogo documenta. Visite para obtener la traducción al español de este documento en varios formatos. Eine deutsche Version dieser Datei finden Sie unter . Aggiornato al: 11 Gennaio 2001 Chris Ricker (kaboom@gatech.edu or chris.ricker@genetics.utah.edu). Requisiti minimi correnti ========================= Aggiorna come *minimo* il sistema a queste revisioni di software prima di pensare che tu abbia incontrato un bug! Se sei insicuro su quale versione stai attualmente usando, i comandi suggeriti più sotto te lo diranno. Ancora, tieni a mente che questa lista presume che tu abbia già un sistema completamente pronto e funzionante con un kernel 2.2. Anche se, non tutti i programmi di utilità qui elencati sono necessari su tutti i sistemi; ovviamente, se non hai nessuna scheda PCMCIA (PC Card), per esempio, probabilmente non ti preoccuperai di pcmcia-cs. o Gnu C 2.91.66 # gcc --version o Gnu make 3.77 # make --version o binutils 2.9.1.0.25 # ld -v o util-linux 2.10o # fdformat --version o modutils 2.4.2 # insmod -V o e2fsprogs 1.19 # tune2fs o reiserfsprogs 3.x.0b # reiserfsck 2>&1|grep reiserfsprogs o pcmcia-cs 3.1.21 # cardmgr -V o PPP 2.4.0 # pppd --version o isdn4k-utils 3.1pre1 # isdnctrl 2>&1|grep version Compilare il Kernel =================== GCC --- La versione di gcc richiesta può dipendere dal tipo di CPU nel tuo computer. Il prossimo paragrafo si applica ai possessori di CPU x86, ma non necessariamente a quelli di altre CPU. I possessori di altre architetture di CPU dovrebbero ottenere le imformazioni sui requisiti del proprio gcc da altre fonti. Il compilatore raccomandato per il kernel è ecgs 1.1.2 (gcc 2.91.66), e dovrebbe essere usato quando hai bisogno di assoluta stabilità. Puoi usare gcc 2.95.2 se lo desideri, sebbene potrebbe causare dei problemi. Versioni successive di gcc non sono state collaudate abbastanza per la compilazione del Kernel Linux, e ci sono certi bug (principalmente, ma non esclusivamente, nel kernel) che richiedono di essere corretti per poter usare questi compilatori. In ogni caso, usare pgcc al posto di egcs o un semplice gcc è cercare problemi. Nota che gcc 2.7.2.3 non è più supportato come compilatore del kernel. Il kernel non girerà più attorno ai bug in gcc 2.7.2.3 e, di fatto, rifiuterà di compilarsi con esso. In aggiunta, per favore fai attenzione all'ottimizzazione. Qualsiasi maggiore di -O2 non è raccomandata. Similmente, se scegli di usare gcc-2.95 or derivati, sii certo di non usare -fstrict-aliasing (il quale, in funzione della tua versione di gcc 2.95, può richiedere l'uso di -fno-strict-aliasing). Make ---- Hai bisogno di Gnu make 3.77 o successivo per compilare il kernel. Binutils -------- Linux su architettura Intel 32 è passato di recente dall'uso di as86 a quello di gas per assemblare il codice 16 bit per il boot, rimuovendo la necessitò di as86 per compilare il kernel. Questo cambiamento, comunque, significa che hai bisogno di una versione recente di binutils. Se puoi, aggiorna binutils all'ultima 2.9.5 o 2.10. Le versioni più vecchiè come 2.8, 2.8xx, e la FSF 2.9.1 dovrebbero essere evitate del tutto se possibile. La recente 2.9.1.0.x (qualsiasi x >= 22 ) può, ed esegue, una corretta compilazione del kernel, ma ci sono parecchi benefici nell'aggiornamento alla 2.9.5 o 2.10 se lo fai. Utilità di Sistema ================== Cambi architetturali -------------------- DevFS è ora nel kernel. Controlla Documentation/filesystem/devfs/* nella directory sorgente del kernel per tutti i dettagli. Il Logical Volume Manager (LVM) è ora nel kernel. Se vuoi usarlo, hai bisogno delle utilità LVM. Gli User ID a 32 bit sono ora realtà. Buon Divertimento! La documentazione Linux per funzioni sta passando a documentazione in linea tramite commenti formattati in maniera speciale vicino alla propria definizione nei sorgenti. Questi commenti possono essere utilizzati insieme a modelli SGML nella directory Documentation/DocBook per fare dei files DocBook, i quali possono essere convertiti da fogli di stile DocBook a PostScript, HTML, PDF e molti altri formati. Per essere in grado di farlo, devi aver installato Jade o un convertitore di fogli di stile DocBook di tua preferenza. Util-linux ---------- Le nuove versioni di util-linux provvedono supporto di *fdisk per dischi più larghi, nuove opzioni a mount, riconoscono più tipi di partizioni, hanno un fdformat che funziona con i kernel 2.4, e benefici simili. Probabilmente vuoi questo aggiornamento. Ksymoops -------- Se l'impensabile succede, e il tuo kernel fa oops, hai bisogno della versione 2.4 di ksymoops per decodificare il rapporto; dai un'occhio a REPORTING-BUGS nella radice dei sorgenti Linux per più informazioni. Modutils -------- Un'aggiornamento a una versione recente di modutils corregge i bug più frequenti dei kernel 2.3.x, e abilita il caricamento automatico dei moduli USB. In aggiunta, l'organizzazione dei moduli sotto /lib/modules/`uname -r`/ è stato reso più corretto. Questo cambiamento richiede una passaggio a una versione recente di modutils Mkinitrd -------- Questi cambiamenti all'organizzazione dell'albero di /lib/modules richiede anche un aggiornamento di mkinitrd. E2fsprogs --------- L'ultima versione di e2fsprogs corregge molti bug in fsck e debugfs. Ovviamente, è una buona idea aggiornarsi. Reiserfsprogs ------------- Il pacchetto reiserfsprogs dovrebbe essere usato per il reiserfs-3.6.x (Linux kernel 2.4.x). E' una composizione di pacchetti, e contiene versioni funzionanti di mkreiserfs, resize_reiserfs, debugreiserfs e reiserfsck. Queste utilità funzionano sia su piattaforme i386 che su Alpha. Pcmcia-cs --------- Il supporto PCMCIA (PC Card) è ora parzialmente implementato nel sorgente principale del kernel. Fai attenzione quando ricompili il kernel ;-). Assicurati di avere l'ultima versione di pcmcia-cs. Intel IA32 microcode -------------------- Un driver è stato aggiunto per permettere l'aggiornameto del microcode Intel IA32, accessibile sia come un file devfs che come una regolare character device. Se non usi devfs hai bisogno di: mkdir /dev/cpu mknod /dev/cpu/microcode c 10 184 chmod 0644 /dev/cpu/microcode come root prima di usarlo. Probabilmente vuoi anche avere l'utilità user-space microcode_ctl insieme a questo. Se hai compilato il driver come modulo puoi aver bisogno di aggiungere a modules.conf la seguente linea: alias char-major-10-184 microcode Powertweak ---------- Se stai usando la versione 0.1.17 o precedente, dovresti aggiornarti alla 0.99.0 o successive. Versioni vecchie possono dare problemi con programmi che usano la memoria condivisa. Rete ==== Cambiamenti generali -------------------- Il firewalling IP a il codice NAT sono stati rimpiazzati un'altra volta. Il nuovo software netfilter (inclusi i moduli di compatibilità ipfwadm e ipchains) sono distribuiti separatamente. Se hai necessità di configurazioni di rete avanzate, dovresti tenere in considerazione l'uso di utilità di rete ip-route2. PPP --- Il driver PPP è stato ristrutturato per supportare il multilink e per abilitarlo ad operare a diversi strati. Se usi PPP, aggiornati almeno a ppp-2.4.0b1. Se non stai usanto devfs, DEVI avere il device /dev/ppp, che può essere costruito con: mknod /dev/ppp c 108 0 come root. Se compili ppp come modulo, hai bisogno delle seguenti linee in /etc/modules.conf: alias char-major-108 ppp_generic alias /dev/ppp ppp_generic alias tty-ldisc-3 ppp_async alias tty-ldisc-14 ppp_synctty alias ppp-compress-21 bsd_comp alias ppp-compress-24 ppp_deflate alias ppp-compress-26 ppp_deflate Se use devfsd e compili ppp come modulo, hai bisogno della seguente linea in /etc/devfsd.conf: LOOKUP PPP MODLOAD Isdn4k-utils ------------ Per dei cambiamenti nella lunghezza del campo numero telefonico, isdn4k-utils ha bisogno di essere ricompilato o (preferibilmente) aggiornato. Trovare il software aggiornato ============================== Compilatori *********** egcs 1.1.2 (gcc 2.91.66) ------------------------ o gcc 2.95.2 ---------- o Gnu Make ******** Make 3.77 -------- o Binutils ******** 2.9.1 series ------------ o 2.9.5 and 2.10 series --------------------- o System utilities **************** Util-linux ---------- o Ksymoops -------- o Modutils -------- o Mkinitrd -------- o E2fsprogs --------- o o Reiserfsprogs ------------- o LVM toolset ----------- o Pcmcia-cs --------- o Jade ---- o DocBook Stylesheets ------------------- o Intel P6 microcode ------------------ o Powertweak ---------- o Network ******* PPP --- o Isdn4k-utils ------------ o Netfilter --------- o o o Ip-route2 --------- o Suggerimenti e Correzioni =========================== Sentiti libero di spedirmi cambiamenti, correzioni, maledizioni, fiammate, soldi, ecc.. Buona Linuxata !