1 508
contributi
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 2: | Riga 2: | ||
== Introduzione == | == Introduzione == | ||
Questo how-to spiegherà il procedimento da seguire per compilare | 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 fornirà tutto (o quasi) ciò di cui abbiamo bisogno. | 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 | Anzitutto, editiamo il nostro <code>/etc/apt/sources.list</code> aggiungendo il [[I_repository_ed_il_loro_utilizzo | repository]] bootsplash: | ||
<pre>deb http://www.bootsplash.de/files/debian/ unstable main</pre> | <pre>deb http://www.bootsplash.de/files/debian/ unstable main</pre> | ||
Riga 32: | Riga 32: | ||
<pre># apt-get install kernel-source-2.6.11</pre> | <pre># apt-get install kernel-source-2.6.11</pre> | ||
Con questo comando, [[APT]] scaricherà un archivio .tar.bz2 in | Con questo comando, [[APT]] scaricherà un archivio <code>.tar.bz2</code> in <code>/usr/src/</code>, contenente proprio il sorgente del [[kernel]]. | ||
È inoltre necessario scaricare una patch apposita da applicare al kernel: | |||
[http://www.bootsplash.de/files/bootsplash-3.1.6-2.6.11.diff Patch per Kernel 2.6.11] | [http://www.bootsplash.de/files/bootsplash-3.1.6-2.6.11.diff Patch per Kernel 2.6.11] | ||
In caso si tenti questa procedura con altri kernel, oppure, essendo la pagina soggetta ad aggiornamento, il file risulti inesistente, | In caso si tenti questa procedura con altri kernel, oppure, essendo la pagina soggetta ad aggiornamento, il file risulti inesistente, è possibile scaricare la patch di interesse cercandola in http://www.bootsplash.de/files/ | ||
''formato: bootsplash-versione_patch-versione_kernel.diff'' | ''formato: bootsplash-versione_patch-versione_kernel.diff'' | ||
Riga 46: | Riga 46: | ||
=== Scompattazione e Patch del Sorgente === | === Scompattazione e Patch del Sorgente === | ||
Bene, prima di procedere con la compilazione, | Bene, prima di procedere con la compilazione, è necessario applicare la patch bootsplash (vedi sopra) al nostro kernel. | ||
Prima di tutto, scompattiamo l'archivio contenente i sorgenti. | Prima di tutto, scompattiamo l'archivio contenente i sorgenti. | ||
Per fare ciò, spostiamoci in | Per fare ciò, spostiamoci in <code>/usr/src/</code>, e procediamo con la scompattazione: | ||
<pre> | <pre> | ||
Riga 57: | Riga 57: | ||
</pre> | </pre> | ||
A questo punto | A questo punto verrà; creata una nuova directory, <code>/usr/src/kernel-source-2.6.11/</code>. | ||
Spostiamoci dunque nella nuova directory e applichiamo la patch che abbiamo scaricato: | Spostiamoci dunque nella nuova directory e applichiamo la patch che abbiamo scaricato: | ||
Riga 66: | Riga 66: | ||
</pre> | </pre> | ||
Non dovrebbe essere segnalato alcun errore nella patch a questo punto. In caso contrario, rimuoviamo la directory dei sorgenti e ripetiamo la procedura dall'inizio. | Non dovrebbe essere segnalato alcun errore nella patch a questo punto. In caso contrario, rimuoviamo la directory dei sorgenti e ripetiamo la procedura dall'inizio. È importante applicare la patch bootsplash prima di qualunque altra patch, cioè sul kernel debian originale preso da APT. | ||
A questo punto, possiamo procedere con la compilazione del kernel. | A questo punto, possiamo procedere con la compilazione del kernel. | ||
Riga 112: | Riga 112: | ||
</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 | 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!!! | Se stiamo ricompilando un kernel, ovviamente sono cose che non si dovrebbero dimenticare!!! | ||
=== Compilazione con make-kpkg (debian-way) === | === Compilazione con make-kpkg (debian-way) === | ||
Riga 127: | Riga 127: | ||
Prendiamo in considerazione l'ultimo comando: | Prendiamo in considerazione l'ultimo comando: | ||
'''make-kpkg''' è uno strumento che ci aiuta a creare kernel pacchettizzati in file binari, con estensione | <code>'''make-kpkg'''</code>: è uno strumento che ci aiuta a creare kernel pacchettizzati in file binari, con estensione <code>.deb</code>. | ||
: --initrd | : <code>--initrd</code> crea il RAMDisk iniziale per mostrare l'immagine al boot; | ||
: --append-to-version -splash | : <code>--append-to-version -splash</code>: 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 | : <code>binary</code>: questo argomento specifica il ''target'' della nostra compilazione: | ||
<pre> | <pre> | ||
Riga 149: | Riga 149: | ||
</pre> | </pre> | ||
Una volta terminata la compilazione, troveremo in /usr/src un pacchetto il cui nome | Una volta terminata la compilazione, troveremo in <code>/usr/src</code> un pacchetto il cui nome sarà qualcosa di molto simile a <code>'''kernel-image-2.6.11-splash_10.00.Custom_i386.deb'''</code>. | ||
A questo punto possiamo installare il nostro nuovo kernel! | A questo punto possiamo installare il nostro nuovo kernel! | ||
Riga 157: | Riga 157: | ||
</pre> | </pre> | ||
Controlliamo la presenza del RAMDisk iniziale. Per fare | Controlliamo la presenza del RAMDisk iniziale. Per fare ciò eseguiamo questo comando: | ||
<pre> | <pre> | ||
Riga 172: | Riga 172: | ||
== Installazione di Bootsplash == | == Installazione di Bootsplash == | ||
In questa fase ci viene in aiuto quel repository che abbiamo aggiunto all'inizio al nostro | In questa fase ci viene in aiuto quel repository che abbiamo aggiunto all'inizio al nostro <code>/etc/apt/sources.list</code>. | ||
Aggiorniamo i nostri archivi APT ed installiamo Bootsplash: | Aggiorniamo i nostri archivi APT ed installiamo Bootsplash: | ||
Riga 180: | Riga 180: | ||
# apt-get install bootsplash sysv-rc-bootsplash bootsplash-theme-tuxinfo-debian | # apt-get install bootsplash sysv-rc-bootsplash bootsplash-theme-tuxinfo-debian | ||
</pre> | </pre> | ||
Attenzione! L'ultimo pacchetto (bootsplash-theme-tuxinfo-debian) | 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> | <pre> | ||
Riga 190: | Riga 190: | ||
Scegliamo in questo caso il tema "tuxinfo-debian". | Scegliamo in questo caso il tema "tuxinfo-debian". | ||
Durante l'installazione | 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, | Selezioniamo l'immagine creata in precedenza, cioè <code>'''initrd.img-2.6.11-splash'''</code>. | ||
=== Errore di post-installazione sysv-rc-bootsplash === | === Errore di post-installazione sysv-rc-bootsplash === | ||
Nel caso in cui sysv-rc-bootsplash non riesca a patchare gli | Nel caso in cui sysv-rc-bootsplash non riesca a patchare gli script di avvio, otterremo un errore del tipo: | ||
<pre>Testing if patches apply cleanly... | <pre>Testing if patches apply cleanly... | ||
4 out of 5 hunks FAILED -- saving rejects to file /etc/init.d/rcS.rej | 4 out of 5 hunks FAILED -- saving rejects to file /etc/init.d/rcS.rej | ||
Patches would not apply cleanly.</pre> | Patches would not apply cleanly.</pre> | ||
In questo caso dobbiamo ovviare al problema manualmente, | In questo caso dobbiamo ovviare al problema manualmente, poiché il pacchetto non riesce a applicare le modifiche necessarie ad abilitare la progress-bar di bootsplash. | ||
Procediamo come segue: | Procediamo come segue: | ||
Riga 211: | Riga 211: | ||
# apt-get install sysv-rc-bootsplash</pre> | # apt-get install sysv-rc-bootsplash</pre> | ||
In poche parole quel che abbiamo fatto non è stato altro che fare una copia di backup degli scripts esistenti, scaricare il vecchio pacchetto sysv-rc (con cui la patch funziona), copiare gli | In poche parole quel che abbiamo fatto non è stato altro che fare una copia di backup degli scripts esistenti, scaricare il vecchio pacchetto sysv-rc (con cui la patch funziona), copiare gli script dal pacchetto alla directory corretta (senza installarlo effettivamente) e quindi applicare la patch. | ||
=== Configurazione del Bootloader === | === Configurazione del Bootloader === | ||
A questo punto siamo pronti per modificare il nostro bootloader. Facciamo un esempio per i due 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 (<code>/boot/grub/menu.lst</code>) | |||
{{Warningbox| Le seguenti indicazioni valgono '''solo''' per GRUB e non per GRUB2}} | |||
<pre> | <pre> | ||
title Debian GNU/Linux, kernel 2.6.11-splash | title Debian GNU/Linux, kernel 2.6.11-splash | ||
Riga 227: | Riga 230: | ||
</pre> | </pre> | ||
Configurazione per LiLO ( | Configurazione per LiLO (<code>/etc/lilo.conf</code>) | ||
<pre> | <pre> | ||
image=/boot/vmlinuz-2.6.11-splash | image=/boot/vmlinuz-2.6.11-splash | ||
Riga 235: | Riga 238: | ||
</pre> | </pre> | ||
Attenzione! Se usate LiLO come bootloader, | Attenzione! Se usate LiLO come bootloader, è necessario aggiornare la sua configurazione con il seguente comando (dopo la modifica di <code>/etc/lilo.conf</code>): | ||
<pre> | <pre> | ||
# lilo | # lilo | ||
Riga 249: | Riga 252: | ||
</pre> | </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 | 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! | Happy Debian! |
contributi