Product SiteDocumentation Site

8.11. Installare un kernel

8.11.1. Funzionalità di pacchetto kernel Debian

Un pacchetto kernel Debian installa l'immagine del kernel (vmlinuz-versione), la sua configurazione (config-versione) e la sua tabella dei simboli (System.map-versione) in /boot/. La tabella dei simboli aiuta gli sviluppatori a comprendere il significato di un messaggio d'errore del kernel; senza di essa, il kernel restituirebbe solo un "oops" (un "oops" del kernel è equivalente ad un difetto di segmentazione nei programmi in spazio utente, in altre parole messaggi generati a seguito della dereferenziazione di un puntatore non valido) che contiene unicamente un indirizzo di memoria numerico, che è un'informazione inutile senza una tabella che relazioni questi indirizzi ai simboli ed ai nomi delle funzioni. Questi moduli sono installati nella directory /lib/modules/versione/.
Gli script di configurazione del pacchetto generano automaticamente un'immagine initrd, che è un mini-sistema pensato per essere caricato in memoria (da qui il nome, che sta per "init ramdisk") dal bootloader, e utilizzato dal kernel Linux unicamente per caricare i moduli necessari ad accedere ai dispositivi che contengono il sistema Debian completo (per esempio, i driver per i dischi SATA). Alla fine, gli script di post-installazione aggiornano i collegamenti simbolici /vmlinuz, /vmlinuz.old, /initrd.img e /initrd.img.old così che possano puntare, rispettivamente, agli ultimi due kernel installati, così come alle corrispondenti immagini initrd.
La maggior parte di questi task sono scaricati per agganciare script nelle directory /etc/kernel/*.d/. Per esempio, l'integrazione con grub si basa su /etc/kernel/postinst.d/zz-update-grub e /etc/kernel/postrm.d/zz-update-grubper chiamare update-grub quando i kernel sono installati o rimossi.

8.11.2. Installare con dpkg

Using apt is so convenient that it makes it easy to forget about the lower-level tools, but the easiest way of installing a compiled kernel is to use a command such as dpkg -i package.deb, where package.deb is the name of a linux-image package such as linux-image-4.9.30-ckt4-falcot_1_amd64.deb.
I passi di configurazione descritti in questo capitolo sono base ma funzionano sia per un sistema server sia per una postazione di lavoro e possono essere duplicati massivamente con modalità semi-automatiche. Tuttavia non sono sufficienti per fornire da soli un sistema completamente configurato. Alcune parti necessitano ancora di configurazione, cominciando con i programmi di basso livello conosciuti come «servizi Unix».