124
contributi
(→Compilazione con make-kpkg (debian-way): --append-to-version -splash) |
|||
Riga 1: | Riga 1: | ||
== Introduzione == | == Introduzione == | ||
Questo how-to | Questo how-to spiegherà il procedimento da seguire per compilare (alla debian-way) un kernel 2.6.11 con la patch bootsplash. | ||
== Software richiesto == | == Software richiesto == | ||
In ambiente Debian, ci viene in aiuto il tool '''[[APT]]''' (Advanced Package Tool), che ci | In ambiente Debian, ci viene in aiuto il tool '''[[APT]]''' (Advanced Package Tool), che ci fornirà tutto (o quasi) ciò di cui abbiamo bisogno. | ||
Anzitutto, editiamo il nostro '''/etc/apt/sources.list''' aggiungendo il [[I_repository_ed_il_loro_utilizzo | repository]] bootsplash: | Anzitutto, editiamo il nostro '''/etc/apt/sources.list''' aggiungendo il [[I_repository_ed_il_loro_utilizzo | repository]] bootsplash: | ||
Riga 30: | Riga 30: | ||
<pre># apt-get install kernel-source-2.6.11</pre> | <pre># apt-get install kernel-source-2.6.11</pre> | ||
Con questo comando, [[APT]] | Con questo comando, [[APT]] scaricherà un archivio .tar.bz2 in '''/usr/src/''', contenente proprio il sorgente del [[kernel]]. | ||
È inoltre necessario scaricare una patch apposita da applicare al kernel: | È inoltre necessario scaricare una patch apposita da applicare al kernel: | ||
Riga 40: | Riga 40: | ||
== Compilazione == | == Compilazione == | ||
=== Scompattazione e Patch del Sorgente === | |||
Bene, prima di procedere con la compilazione, è necessario applicare la patch bootsplash (vedi sopra) al nostro kernel. | Bene, prima di procedere con la compilazione, è necessario applicare la patch bootsplash (vedi sopra) al nostro kernel. | ||
Riga 45: | Riga 47: | ||
Prima di tutto, scompattiamo l'archivio contenente i sorgenti. | Prima di tutto, scompattiamo l'archivio contenente i sorgenti. | ||
Per fare | Per fare ciò, spostiamoci in '''/usr/src/''', e procediamo con la scompattazione': | ||
<pre> | <pre> | ||
Riga 57: | Riga 59: | ||
<pre> | <pre> | ||
# cd /usr/ | # cd /usr/src/kernel-source-2.6.11 | ||
# patch -p1 < /usr/src/bootsplash-3.1.4-sp3-2.6.8.1.diff | # patch -p1 < /usr/src/bootsplash-3.1.4-sp3-2.6.8.1.diff | ||
</pre> | </pre> | ||
Riga 64: | Riga 66: | ||
A questo punto, possiamo procedere con la compilazione del kernel. | A questo punto, possiamo procedere con la compilazione del kernel. | ||
=== Configurazione del Kernel === | |||
Anzitutto, configuriamo il kernel stesso: | Anzitutto, configuriamo il kernel stesso: | ||
Riga 77: | Riga 81: | ||
</pre> | </pre> | ||
Attiviamo qualche altra opzione per il boot: | Attiviamo qualche altra opzione per il boot: | ||
Riga 94: | Riga 91: | ||
|------ (8192) Default RAM disk size (kbytes) | |------ (8192) Default RAM disk size (kbytes) | ||
|------ [*] Initial RAM disk (initrd) support | |------ [*] Initial RAM disk (initrd) support | ||
</pre> | </pre> | ||
Attiviamo le opzioni necessarie a mostrare la schermata di boot: | Attiviamo le opzioni necessarie a mostrare la schermata di boot: | ||
Riga 102: | Riga 99: | ||
| Device Drivers | | Device Drivers | ||
|--- Graphics support | |--- Graphics support | ||
|------ | |------ <M> VGA 16-color graphics support | ||
|------ <*> VESA VGA graphics support | |||
|------ Console display driver support | |||
|--------- [*] VGA text console | |||
|--------- [*] Video mode selection support | |||
|--------- <*> Framebuffer Console support | |||
|------ Bootsplash configuration | |||
|--------- [*] Bootup splash screen | |||
</pre> | </pre> | ||
Ricordiamoci ovviamente di indicare, tra i [http://it.wikipedia.org/wiki/Filesystem Filesystem], quelli che utilizziamo sulla nostra macchina in aggiunta a quello ''ROM'', che viene utilizzato per le immagini initrd, le schede che abbiamo, etc... | |||
Se stiamo ricompilando un kernel ovviamente sono cose che non si dovrebbero dimenticare!!! | |||
=== Compilazione con make-kpkg (debian-way) === | |||
Ora che il kernel è compilato, possiamo procedere alla compilazione (debian-way): | |||
<pre> | |||
# make-kpkg clean | |||
# make-kpkg --initrd --append-to-version -splash binary | |||
</pre> | |||
Prendiamo in considerazione l'ultimo comando: | |||
'''make-kpkg''' è uno strumento che ci aiuta a creare kernel pacchettizzati in file binari, con estensione *.deb. | |||
: --initrd - Crea il RAMDisk iniziale per mostrare l'immagine al boot; | |||
: --append-to-version -splash - Aggiunge la stringa '-splash' alla versione del kernel che stiamo creando. In questo modo, se stiamo già utilizzando un kernel 2.6.11, il nostro nuovo kernel sarà il '2.6.11-splash', così in caso di problemi al boot potremo sempre tornare al kernel ''funzionante''. | |||
: binary - Questo argomento specifica il ''target'' della nostra compilazione: | |||
<pre> | |||
binary specifica che vogliamo compilare kernel_image, kernel_doc, kernel_headers e kernel_source | |||
kernel_source questo target produce un pacchetto .deb contenente i sorgenti del nuovo kernel che stiamo compilando | |||
kernel_headers questo target produce un pacchetto .deb contenente gli header inclusi nel nuovo kernel | |||
kernel_doc questo target produce un pacchetto .deb contenente la documentazione relativa al nuovo kernel | |||
kernel_image questo target produce un pacchetto .deb contenente il kernel in formato binario, con tutti i moduli specificati nella configurazione | |||
</pre> | |||
Una volta terminata la compilazione, troveremo in /usr/src un pacchetto il cui nome sarà qualcosa di molto simile a '''kernel-image-2.6.11-splash_10.00.Custom_i386.deb'''. | |||
A questo punto possiamo installare il nostro nuovo kernel! | |||
<pre> | |||
# dpkg -i /usr/src/kernel-image-2.6.11-splash_10.00.Custom_i386.deb | |||
</pre> | |||
Controlliamo la presenza del RAMDisk iniziale. Per fare ciò eseguiamo questo comando: | |||
<pre> | |||
# ls /boot/initrd.img-2.6.11* | |||
</pre> | |||
Se il comando restituisce un errore, creiamo il nostro RAMDisk: | |||
<pre> | |||
# cd /boot/ | |||
# mkinitrd -o /boot/initrd.img-2.6.11-splash 2.6.11-splash | |||
</pre> | |||
== Installazione di Bootsplash == | |||
In questa fase ci viene in aiuto quel repository che abbiamo aggiunto all'inizio al nostro '''/etc/apt/sources.list'''. | |||
Aggiorniamo i nostri archivi APT ed installiamo Bootsplash: | |||
<pre> | |||
# apt-get update | |||
# apt-get install bootsplash sysv-rc-bootsplash bootsplash-theme-tuxinfo-debian | |||
</pre> | |||
Attenzione! L'ultimo pacchetto (bootsplash-theme-tuxinfo-debian) è il '''tema che vedremo al boot'''. Per vedere quali temi sono disponibili, diamo il seguente comando: | |||
<pre> | |||
# apt-cache search bootsplash-theme | |||
</pre> | |||
(Suggerimento: conviene inviare l'output in pipe a ''more'' o ''less'', dato che esistono numerosi temi!) | |||
Scegliamo in questo caso il tema "tuxinfo-debian". | |||
Durante l'installazione comparirà una finestra per la configurazione, che ci chiederà quale immagine utilizzare per il nostro boot. | |||
Selezioniamo l'immagine creata in precedenza, cioè '''initrd.img-2.6.11-splash'''. | |||
=== Configurazione del Bootloader === | |||
A questo punto siamo pronti per modificare il nostro bootloader. Facciamo un esempio per i due bootloader più comuni: GRUB e LiLO: | |||
Configurazione per GRUB ('''/boot/grub/menu.lst''') | |||
<pre> | |||
title Debian GNU/Linux, kernel 2.6.11-splash | |||
root (hd0,0) | |||
kernel /boot/vmlinuz-2.6.11-splash root=/dev/hda1 ro bootkbd=it | |||
initrd /boot/initrd.img-2.6.11-splash | |||
savedefault | |||
boot | |||
</pre> | |||
Configurazione per LiLO ('''/etc/lilo.conf''') | |||
<pre> | |||
image=/boot/vmlinuz-2.6.11-splash | |||
label="2.6.11-splash" | |||
initrd=/boot/initrd.img-2.6.11-splash | |||
append="splash=silent" | |||
</pre> | |||
Attenzione! Se usate LiLO come bootloader, è necessario aggiornare la sua configurazione con il seguente comando (dopo la modifica di /etc/lilo.conf): | |||
<pre> | |||
# lilo | |||
</pre> | |||
== Conclusioni == | |||
Bene, adesso siamo in grado di riavviare la nostra macchina e gustarci un bel bootsplash! | |||
Nel caso vogliate cambiare tema, dopo aver installato il relativo pacchetto '''bootsplash-theme-*''', basta fare: | |||
<pre> | |||
# dpkg-reconfigure bootsplash | |||
</pre> | |||
Bisogna poi selezionare il nuovo tema che abbiamo installato, di nuovo initrd.img-2.6.11-splash come initrd, ricontrolliamo LiLO / GRUB e riavviamo... | |||
Happy Debian! | |||
---- | |||
[[User:Hanska|Hanska]] 20:32, 14 May 2005 (CEST) |
contributi