Avanti
Indietro
Indice
Qui si spiega come compilare e installare un kernel della serie stabile
2.2.x. Di solito questo si fa per includere nel kernel delle funzionalità non
presenti, ad esempio il supporto per alcune schede che per motivi di genericità
non vengono sempre incluse nei kernel di serie delle distribuzioni, oppure
per modelli recenti che per forza non esistevano all'epoca. Non è un procedimento
complicato, ma vanno seguiti dei passi stabiliti, per non creare instabilità
nel sistema a causa del mancato supporto a proprietà basilari, come il supporto
al filesystem ext2, o ai binari elf, oppure ancora al tipo di disco da cui
fate il boot. Per sapere quale kernel avete in funzione nel vostro PC, usate
il comando 'uname -r'. Per sapere qual è l'ultima versione di kernel disponibile
online, usate il comando 'finger @finger.kernel.org'.
Reperimento
Il sito principale è ftp.kernel.org, ma esistono i mirror nazionali, reperibili
come ftp.XX.kernel.org, dove XX è il codice del paese (ad esempio "it" per Italia,
"de" per Germania, "fr" per Francia, "uk" per Inghilterra, e così via). Cercate nella
directory /pub/linux/kernel/2.2. In genere esistono 2 tipi di file in 2 formati
di compressione diversi. I file sono del tipo: linux-VERSIONE_KERNEL.tar.COMPRESSORE,
oppure patch-VERSIONE_KERNEL.tar.COMPRESSORE. COMPRESSORE può essere "gz" per
file compressi con GZIP, o "bz2" per file compressi con BZIP2 (in genere più
piccoli) I file che iniziano per "linux" contenengono i sorgenti del kernel COMPLETO,
mentre i file che iniziano per "patch" contengono solo le differenze con le versioni
precedenti. Quindi, per esempio, ci possono essere i file: linux-2.2.14.tar.gz,
linux-2.2.14.tar.bz2, patch-2.2.14.tar.gz e patch-2.2.14.tar.bz2, insieme in
genere a tutte le versioni precedenti. Conviene scaricare la versione completa
se proprio non avete i sorgenti, mentre se avete una versione precedente potete
scaricare solo i file di differenza, da applicare sui sorgenti in vostro possesso
per avere alla fine la STESSA IDENTICA versione di sorgenti che avreste ottenuto
dalla versione completa. Ricordate però che dovete scaricare TUTTE le versioni
di patch dalla versione in vostro possesso fino a quella che volete ottenere
(quindi se avete i sorgenti completi linux-2.2.11.tar.gz, e volete arrivare
alla versione 2.2.14, dovete scaricare i file patch-2.2.12.tar.gz, patch-2.2.13.tar.gz
e patch-2.2.14.tar.gz, da applicare al 2.2.11 in successione, come indicato
in seguito (ATTENZIONE!: le patch delle versioni "pre..." non sono incrementali).
Un consiglio: NON usate i sorgenti standard forniti dalle distribuzioni se
dovete applicarvi delle patch, perché in genere sono versioni modificate e
le patch notando questo fatto non vengono applicate (tipico il caso della RedHat),
oltre al fatto che non mettono a posto alcuni collegamenti. Inoltre cercate
di evitare le versioni sperimentali dei kernel (2.X.YYY, con X dispari), a
meno che non aggiungano il supporto per qualche nuovo hardware di cui non potete
fare a meno, perché a volte non sono completamente stabili (sono sperimentali
per questo).
Software necessario
Naturalmente i sorgenti del kernel. Poi i programmi gzip e bzip2, in base
al tipo di compressione usata per i sorgenti. I pacchetti software: "make", "bin86",
"glibc-devel", "gcc" (in genere, se viene segnalata la mancanza qualche file, fa
parte di questi pacchetti, quindi installateli tutti). Se volete usare l'interfaccia
grafica di configurazione in X-Window, naturalmente dovete aver installato
e configurato bene l'X-server, e poi vi servono anche il pacchetto contenente
il linguaggio "tcl" e il suo tool grafico "tk".
Scompattazione, patch e avvio della configurazione
Ecco i passi da seguire (tutto ciò che è tra doppi apici è un comando,
e va dato senza di essi; come esempio si suppone di avere una versione 2.2.11
e di aggiornare alla versione 2.2.14):
1. Se non lo siete già, diventate utente root e spostatevi in /usr/src
("su root", più la password, poi "cd /usr/src")
2. Date: "ls -l". Controllate se esiste una riga che contiene 'linux': se
non esiste, saltate al punto 5; se esiste e il primo carattere della riga è
d, si tratta di una directory, saltate al punto 4; altrimenti se esiste e il
primo carattere della riga è l, si tratta di un collegamento, continuate col
punto 3
3. Rimuovete il link: "rm -f linux" (in questo modo i vecchi sorgenti eventualmente
presenti rimarranno nella directory cui puntava il link, in genere 'linux-VERSIONE_KERNEL'),
e saltate al punto 5
4. Rinominate la directory: "mv linux linux.old" (in questo modo i vecchi
sorgenti eventualmente presenti verranno spostati nella directory 'linux.old'),
e continuate col punto 5
5. Scompattate i nuovi sorgenti: se il file in vostro possesso finisce
in '.gz', date "tar xvzf /persorso/del/file/linux-2.2.11.tar.gz", mentre se finisce
con '.bz2', date "tar xvf /persorso/del/file/linux-2.2.11.tar.bz2 --use-compress-program
bzip2"
6. Se avete già l'ultima versione dei sorgenti, saltate al punto 7, altrimenti
se dovete applicare delle patch per aggiornare i sorgenti ad una versione più
recente, date i seguenti comandi (TUTTE le patch vanno applicate in sequenza):
cd linux
gzip -dc /persorso/del/file/patch-2.2.12.gz | patch -p1
gzip -dc /persorso/del/file/patch-2.2.13.gz | patch -p1
gzip -dc /persorso/del/file/patch-2.2.14.gz | patch -p1
cd ..
nel caso abbiate dei file del tipo 'patch-VERSIONE_KERNEL.bz2', sostituite
nei comandi precedenti 'gzip' con 'bzip2'
7. Rinominate la directory ottenuta in base alla versione dei sorgenti
che avete ottenuto (nell'esempio 2.2.14) e ricreate alcuni collegamenti simbolici:
mv linux linux-2.2.14
ln -s linux-2.2.14 linux
rm -rf /usr/src/linux/include/asm /usr/include/asm
rm -rf /usr/include/linux /usr/include/scsi
ln -s /usr/src/linux/include/asm-i386/ /usr/src/linux/include/asm
ln -s /usr/src/linux/include/asm-i386/ /usr/include/asm
ln -s /usr/src/linux/include/linux/ /usr/include/linux
ln -s /usr/src/linux/include/scsi/ /usr/include/scsi
così da portare il tutto in una situazione standard (i sorgenti devono
essere in '/usr/src/linux/')
8. Si passa ora alla fase più delicata dell'operazione: scegliere cosa
includere e cosa no nel kernel. Date "cd linux" e poi "make mrproper" per eliminare
residui di eventuali vecchie compilazioni (attenzione che questo comando cancella
il file '.config', che contiene le impostazioni date in una precedente compilazione,
quindi nel caso fatevene una copia). Ora date a vostra scelta uno dei tre comandi
seguenti, in base al tipo di interfaccia che volete usare (solo quello che
c'è prima del # !!!):
make config # (interfaccia a caratteri base)
make menuconfig # (interfaccia a caratteri con menu)
make xconfig # (interfaccia grafica - dovete essere in X-Window)
e passiamo alla configurazione dei parametri.
Code maturity level options
- Prompt for development and/or incomplete code/drivers: 'y'
Processor type and features
- Processor family: selezionate il vostro processore. Nel caso di Intel Pentium
Pro, Pentium II, Celeron o superiori, oppure Cyrix 6x86 o Cyrix_mii, scegliete
PPro/6x86MX
- Maximum Physical Memory: scegliete 1GB se avete meno di 1 GB, 2GB altrimenti
- Math emulation: 'n' ('y' solo se avete un 386 o 486 sx senza coprocessore)
- MTRR (Memory Type Range Register) support: 'y', anche se il vostro processore
non lo supporta
- Symmetric multi-processing support: 'y' solo se avete più processori (nello
STESSO computer!)
Loadable module support
- Enable loadable module support: 'y'
- Set version information on all symbols for modules: 'n'
- Kernel module loader: 'y'
General setup
- Networking support: 'y' SEMPRE, serve almeno per il dispositivo di loopback.
least need it for loopback interface
- PCI support: 'y', tranne se avete vecchi PC senza bus PCI
- PCI access mode: Any
- PCI quirks: 'y'
- PCI bridge optimization (experimental): 'n'
- Backward-compatible /proc/pci: 'y'
- MCA support: 'n', tranne che per vecchi PC IBM con bus Microchannel
- SGI Visual Workstation support: 'n'
- System V IPC: 'y'
- BSD Process Accounting: 'y'
- Sysctl support: 'y'
- Kernel support for a.out binaries: 'm'
- Kernel support for ELF binaries: 'y'
- Kernel support for MISC binaries: 'm'
- Kernel support for JAVA binaries (obsolete): 'n'
- Parallel port support: 'y' or 'm', a scelta.
- PC-style hardware: 'm'
- Support foreign hardware: 'n'
- Advanced Power Management BIOS support: 'y' solo nei portatili (nei PC
Desktop potrebbe causare kernel panic e OOPS). Tutte le opzioni che seguono
sono disponibili solo se questa opzione è 'y'
- Ignore USER SUSPEND: 'n'
- Enable PM at boot time: 'n'
- Make CPU Idle calls when idle: 'n'
- Enable console blanking using APM: 'y'
- Power off on shutdown: 'y'
- Ignore multiple suspend: 'y'
- Ignore multiple suspend/resume cycle: 'y'
- RTC stores time in GMT: 'y' solo se il PC è impostato sull'ora di Greenwich
invece di quella locale
- Allow interrupts during APM BIOS calls: 'n'
Plug and Play support
- Plug and Play support: 'y'
- Auto-probe for parallel devices: 'm' se avete periferiche su porta parallela,
altrimenti 'n'
Block devices
- Normal PC floppy disk support: 'm'
- Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support: 'y' se si hanno periferiche
IDE
- Use old disk-only driver on primary interface: 'n'
- Include IDE/ATA-2 DISK support: 'y' se avete pariferiche IDE da cui volete
fare il boot (se avete dischi IDE ma partite da SCSI, mettete 'm')
- Include IDE/ATAPI CDROM support: 'm' se avete un CDROM IDE
- Include IDE/ATAPI TAPE support: 'y' o 'm' solo se avete periferiche di
backup a nastro IDE
- Include IDE/ATAPI FLOPPY support: 'y' o 'm' solo se avete periferiche floppy
IDE, tipo ZIP
- SCSI emulation support: 'm' se avete un masterizzatore IDE
- CMD640 chipset bugfix/support: 'y' se avete questo chip ('n' se avete solo
periferiche SCSI)
- CMD640 enhanced support: 'n'
- RZ1000 chipset bugfix/support: 'y' se avete questo chip ('n' se avete solo
periferiche SCSI)
- Generic PCI IDE chipset support: 'y'
- Generic PCI bus-master DMA support: 'y'
- Boot off-board chipsets first support: 'n'
- Use DMA by default when available: 'y'
- [...VARIE]: attivate le varie opzioni in base al vostro PC (in
genere, 'n' a tutte)
- Loopback device support: 'm'
- Network block device support: 'n'
- Multiple devices driver support: 'n' a meno che non vogliate provare il
RAID software (leggete il RAID-HOWTO)
- RAM disk support: 'n'
- XT hard disk support: 'n' -- what, you still have disks like this? :)
- Parallel port IDE device support: 'm' se avete qualche periferica IDE su
porta parallela, tipo CDROM (e selezionate il driver opportuno), 'n' altrimenti
- Compaq SMART2 support: 'n'
Networking options
- Packet socket: 'm'
- Kernel/User netlink socket: 'y'
- Routing messages: 'n'
- Netlink device emulation: 'm'
- Network firewalls: 'y' se volete abilitare il supporto per il firewalling
e masquerading
- Socket filtering: 'n'
- UNIX domain sockets: 'y' altrimenti X-window non si avvierà
- TCP/IP networking: 'y'
- IP: multicasting: 'n'
- IP: advanced router: 'y' se volete usare il PC come router o per fare il
masquerading di una rete locale verso Internet
- [...VARIE]: in genere, 'n' a tutte
- IP: firewalling: 'y' se volete configurare firewall e masquerading. Se
volete attivare quest'ultimo, DOVETE rispondere 'y' anche a "IP: always defragment",
"IP: masquerading" e "IP: ICMP masquerading"
- IP: firewall packet netlink device: 'y'
- IP: transparent proxy support: 'y'
- IP: masquerading: 'y' per attivare il masquerading
- IP: ICMP masquerading: 'y' per attivare il masquerading
- IP: masquerading special modules support: 'n'
- IP: optimize as router not host: 'y' per attivare il masquerading e il
router
- [...VARIE]: in genere, 'n' a tutte
- IP: TCP syncookie support: 'y' per prevenire il D.O.S. da SYN-FLOOD
- IP: Reverse ARP: 'n'
- IP: Allow large windows (not recommended if <16MB of memory): 'y'
- CPU is too slow to handle full bandwidth: 'n', tranne se siete connessi
a interfacce a larga banda (gigabit Ethernet, FDDI, etc.)
- [...VARIE]: in genere, 'n' a tutte, tranne se dovete collegarvi
a reti Novell, nel qual caso attivate "The IPX protocol"
QoS and/or fair queueing
- QoS and/or fair queueing: 'n' (il resto è disabilitato di conseguenza)
Telephony Support
- Linux Telephony Support: 'n' (il resto è disabilitato di conseguenza)
SCSI support
- SCSI support: 'y' se avete uno o più adattatori e periferiche SCSI oppure
un drive ZIP parallelo o un masterizzatore, 'n' altrimenti.
- SCSI disk support: 'y' (e non 'm') per se fate il boot da un disco SCSI,
altrimenti non riuscirete ad avviare il sistema!
- SCSI tape support: 'm' se avete periferiche a nastro SCSI
- SCSI CDROM support: 'm' se avete CDROM SCSI
- Enable vendor-specific extensions (for SCSI CDROM): 'y' se avete CDROM
SCSI Nec, Toshiba o masterizzatori HP
- SCSI generic support: 'm' se avete un masterizzatore, IDE o SCSI
- Probe all LUNs on each SCSI device: 'n'
- Verbose SCSI error reporting (kernel size +=12K): 'n'
- SCSI logging facility: 'n'
SCSI low-level drivers
- [...VARIE]: in genere, 'n' a tutte, tranne che per il vostro
eventuale adattatore SCSI
- IOMEGA parallel port (ppa - older drives): 'm' se avete uno dei primi modelli
di ZIP parallelo
- IOMEGA parallel port (imm - newer drives): 'm' se avete uno degli ultimi
modelli di ZIP parallelo
- [...VARIE]: in genere, 'n' a tutte, tranne che per il vostro
eventuale adattatore SCSI
Network device support
- Network device support: 'y' se avete una scheda di rete o per collegarvi
a Internet
- Dummy net driver support: 'm'
- [...VARIE]: in genere, 'n' a tutte
- PLIP (parallel port) support: 'm' se volete creare una rete con cavi paralleli
PLIP, altrimenti 'n'
- PPP (point-to-point) support: 'y' o 'm' se volete collegarvi a Internet
via modem
- [...VARIE]: in genere, 'n' a tutte
ARCnet devices
Ethernet (10 or 100Mbit)
- ETHERNET (10 or 100Mbit): 'y' se avete uno o più adattatori di rete Ethernet
- [...VARIE]: in genere, 'n' a tutte tranne che per il vostro modello
di scheda
Ethernet (1000 Mbit)
- [...VARIE]: in genere, 'n' a tutte
Appletalk devices
- Dovrebbe essere disattivato, altrimenti 'n' a tutte
Token ring devices
- [...VARIE]: in genere, 'n' a tutte
Wan interfaces
- [...VARIE]: in genere, 'n' a tutte
Amateur Radio support
- [...VARIE]: in genere, 'n' a tutte
IrDA subsystem support
- IrDA subsystem support: 'y' o 'm' se avete una porta a infrarossi (tipicamente
i portatili)
- IrLAN protocol: 'y' o 'm' se avete abilitato IrDA e avete un sistema di
emulazione di rete Ethernet
- IrCOMM protocol: 'y' o 'm' se avete abilitato IrDA e avete un sistema di
emulazione di porta seriale
- IrLPT protocol: 'y' o 'm' se avete abilitato IrDA e avete un sistema di
emulazione di porta parallela, e abilitate il supporto client o server
- IrDA protocol options: 'y'
- Cache last LSAP: 'y'
- Fast RRs: 'n' (guardate l'help)
- Debug information; 'n'
- IrLAP compression: 'n'
Infrared-port device drivers
- IrTTY (uses Linux serial driver): 'y' o 'm'
- IrPORT (IrDA serial driver): 'y' o 'm'
- [...VARIE]: in genere, 'n' a tutte tranne che per il vostro modello
di chip
ISDN subsystem
- ISDN support: 'y' se avete un adattatore ISDN interno
- Support synchronous PPP: 'y' se vi connettete a Internet
- Use VJ-compression with synchronous PPP: chiedete al provider se è supportata
- Support generic MP (RFC 1717): 'n' (guardate l'help)
- Support audio via ISDN: 'n' (guardate l'help)
- Support ISDN diversion services: 'n' (guardate l'help) e nel caso abilitate
"Support AT-FAX Class 2 commands"
- [...VARIE]: in genere, 'n' a tutte tranne che per il vostro modello
di scheda
Old CD-ROM drivers (not SCSI, not IDE)
- Old CD-ROM drivers (not SCSI, not IDE): 'n', tranne che per vecchi modelli
di CDROM con interfaccia proprietaria
Character devices
- Virtual terminal: 'y'
- Support for console on virtual terminal: 'y'
- Standard/generic (dumb) serial support: 'y'
- Support for console on serial port: 'n'
- Extended dumb serial driver options: 'n'
- Non-standard serial port support: 'n'
- Unix98 PTY support: 'y' e lasciate il valore "Maximum number of Unix98 PTYs
in use (0-2048)" al default, 256
- Parallel printer support: 'm' se avete una stampante parallelaif you have
a parallel port printer
- Support IEEE1284 status readback: 'y'
- Mouse Support (not serial mice): 'y' in genere, ma guardate l'help e attenti
ai laptop. Se avete un mouse seriale, scegliete 'n'
- QIC-02 tape support: 'y' se avete un sistema di backup a nastro non SCSI
(esclusi quelli su controller floppy, altre informazioni nel seguito)
- Watchdog Timer Support: 'n'
- /dev/nvram support: 'n'
- Enhanced Real Time Clock Support: 'y'
- Double Talk PC internal speech card support: 'n'
Mice
- [...VARIE]: in genere, 'n' a tutte tranne che per il vostro modello
di mouse (esclusi i seriali, guardate sopra)
Joysticks
- [...VARIE]: in genere, 'n' a tutte tranne che se volete il supporto
per i joystick, e sceglietene il modello
Watchdog Cards
- Dovrebbe essere disattivato, altrimenti 'n' a tutte
Video For Linux
- [...VARIE]: in genere, 'n' a tutte tranne che se volete il supporto
per una scheda di acquisizione video, radio o Quickcam, e sceglietene il modello
Ftape, the floppy tape device driver
- Ftape (QIC-80/Travan) support: 'y' se avete un drive a nastro connesso
al controller dei floppy disk
Filesystems
- Quota support: 'n' tranne che se volete stabilire delle quote di disco
per gli utenti (in genere sui server)
- Kernel automounter support: 'n' tranne se volete che i device vengano montati
in automatico
- ADFS filesystem support (read only) (EXPERIMENTAL): 'n' tranne se volete
accedere a filesystem Acorn
- Amiga FFS filesystem support: 'n' tranne se volete accedere a filesystem
Amiga
- Apple Macintosh filesystem support (experimental): 'n' tranne se volete
accedere a filesystem Macintosh
- DOS FAT fs support: 'y' or 'm' per poter accedere a dischi o partizioni
MS-DOS/Windows da Linux
- MSDOS fs support: 'm'
- UMSDOS: Unix-like filesystem on top of standard MSDOS filesystem: 'n'
- VFAT (Windows-95) fs support: 'm' (comprende il supporto a FAT32)
- ISO 9660 CDROM filesystem support: 'm'
- Microsoft Joliet CDROM extensions: 'y'
- Minix fs support: 'n'
- NTFS filesystem support (read only): 'n' tranne se volete accedere a filesystem
Windows NT (il supporto in scrittura è PERICOLOSO)
- OS/2 HPFS filesystem support (read only): 'n' tranne se volete accedere
a filesystem OS/2
- /proc filesystem support: 'y'
- /dev/pts filesystem for Unix98 PTYs: 'y'
- QNX filesystem support (EXPERIMENTAL): 'n' tranne se volete accedere a
filesystem QNX
- Second extended fs support: 'y'
- [...VARIE]: in genere, 'n' a tutte
Network File Systems
- Coda filesystem support (advanced network fs): 'n'
- NFS filesystem support: 'y' se il vostro PC è un client NFS
- NFS server support: 'y' se il vostro PC è un server NFS, e nel caso lasciate
a 'n' "Emulate SUN NFS server"
- SMB filesystem support (to mount WfW shares etc.): 'y' se volete montare
partizioni di rete da server Windows (9x o NT). NON serve per creare un server
Samba (per questo serve appunto Samba), ma solo per accedere ad altre partizioni
- NCP filesystem support (to mount NetWare volumes): 'y' se volete montare
partizioni di rete da server Novel NetWare, altrimenti 'n'
Partition Types
- [...VARIE]: in genere, 'n' a tutte
Native Language Support
- [...VARIE]: in genere, 'n' a tutte tranne a quelle seguenti:
- Codepage 437 (United States, Canada): 'm'
- Codepage 850 (Europe): 'm'
- NLS ISO 8859-1: 'm'
- NLS ISO 8859-15: 'm'
Console drivers
- [...VARIE]: in genere, 'n' a tutte tranne a quelle seguenti:
- VGA text console: 'y'
- Video mode selection support: 'y' se volete usare il framebuffer (per accedere
alle schede video VESA non supportate altrimenti e per avere un pinguino al
boot ;-) ). Serve comunque un X-Server
- Support for frame buffer devices (EXPERIMENTAL): 'y' se volete attivare
il framebuffer
- VESA VGA graphics console: 'y' se volete attivare il framebuffer
Sound
- [...VARIE]: in genere, 'n' a tuttetranne a quelle seguenti:
- Sound card support: 'm' se avete una scheda audio, e selezionate il driver
opportuno
Additional low level sound drivers
- [...VARIE]: in genere, 'n' a tutte, o selezionate il driver opportuno
Kernel hacking
Fatto tutto questo, salvate con l'opzione apposita, incrociate le dita
e date:
make dep && make clean && make bzImage && make modules
uscite e andate a farvi un caffè o una lunga passeggiata (con un processore
a 200 MHz servono in genere una quindicina di minuti, regolatevi!) Non è come
aspettare un figlio, ma la prima volta ci si ritrova con le unghie completamente
rosicchiate ;-). Se tutto è andato bene, il vostro nuovo bambino... ehm, kernel,
è contenuto nel file '/usr/src/linux/arch/i386/boot/bzImage'. Complimenti!
Ora bisogna installare il tutto. Per prima cosa i moduli. Se avete ricompilato
la stessa versione di kernel che state già usando, dovete spostare la directory
con la versione precedente dei moduli, prima di installarli (se avete compilato
una versione diversa da quella in uso, potete saltare il primo dei due comandi
seguenti):
mv /lib/modules/VERSIONE_KERNEL /lib/modules/VERSIONE_KERNEL.old
make modules_install
Fatto questo, controllate se nella directory "/boot" esistono i seguenti
file:
ls -l /boot/System.map /boot/vmlinuz
come prima, se il primo carattere è una 'l' si tratta di collegamenti (rimuoveteli
con rm -f /boot/...), mentre se è '-' si tratta di file (rinominateli con mv
-f /boot/NOMEFILE /boot/NOMEFILE-VERSIONE_KERNEL_PRECEDENTE). Ora copiate in
"/boot" il kernel e la System-map aggiornate e ricreate i collegamenti (l'esempio
si riferisce sempre al kernel 2.2.14):
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.2.14
ln -s /boot/vmlinuz-2.2.14 /boot/vmlinuz
cp /usr/src/linux/System.map /boot/System.map-2.2.14
ln -s /boot/System.map-2.2.14 /boot/System.map
Se usate 'loadlin', copiate il nuovo kernel nella sua directory (guardate
la pagina apposita di questo howto). Mentre se usate 'lilo', modificate il
file '/etc/lilo.conf' in modo da avere sia il vecchio kernel che il nuovo (fino
a quando non sarete sicuri che quest'ultimo funzioni perfettamente - la parte
aggiunta per il nuovo kernel è quella tra le due righe di ###...,
e qualcosa potrebbe essere diverso):
boot = /dev/hda
delay = 5
vga = normal
root = /dev/hdb2 # correggere con la vostra partizione di root!
read-only
image = /boot/vmlinuz.old # controllate o rinominate il vecchio kernel di conseguenza
label = oldlinux
#################################
image = /boot/vmlinuz # questo è il nuovo kernel
label = linux
#################################
other = /dev/hda1
label = dos
table = /dev/hda
e ridate '/sbin/lilo -v' per rimetterlo a posto (man lilo, man lilo.conf
o lilo-howto per altre informazioni). Se volete rimuovere lilo, usate il comando
"fdisk /mbr" dal DOS, oppure 'lilo -U' da Linux. Per la stampante, controllate
che il file /etc/conf.modules contenga le righe:
alias parport_lowlevel parport_pc
options parport_pc io=0x378, 0x278 irq=7 auto
Se volete provare il kernel prima di usarlo definitivamene, tralasciate
per ora tutta la parte dopo ' make modules_install' e copiatelo su un dischetto
che userete come boot (il floppy NON va montato per eseguire queste operazioni!!!):
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.2.14
cp /usr/src/linux/vmlinuz-2.2.14 /dev/fd0
rdev /dev/fd0 /dev/hda2
rdev -R /dev/fd0 1
Sostituite a /dev/hda2 la vostra partizione di root ('/')!!! Questo è tutto!
Nota per Debian: dopo aver ricompilato, potete ottenere un pacchetto .deb
contenente kernel e moduli e che aggiorna anche in automatico lilo, col seguente
comando dato da dentro la dir /usr/src/linux/ :
make-kpkg --revision pingu.0 kernel_image
dove potete sostituire pingu.0 con quello che volete.
Avanti
Indietro
Indice