|
|
Riga 1: |
Riga 1: |
| | ''Torna all'indice: [[Linux Kernel in a Nutshell]]'' |
| | |
| __TOC__ | | __TOC__ |
|
| |
|
| Molte delle informazioni contenute in questo libro sono state estratte dalla documentazione del kernel e dal codice sorgente. Questa [la documentazione inclusa nel kernel, NdT] � il miglior posto dove trovare informazioni e riferimenti su come compilare e installare il kernel ed � normalmente tenuta aggiornata a seguito di cambiamenti nella procedura di compilazione.
| | Il [[LKN:_Personalizzare_un_Kernel|capitolo precedente]] ci ha insegnato i meccanismi per la riconfigurazione del kernel; in questo capitolo arriva la parte interessante, in cui si possono trovare tutte le modifiche più comuni che gli utenti hanno bisogno di apportare ai loro kernel, con le istruzioni specifiche per effettuarle. |
| | |
| == Libri ==
| |
| Sono disponibili molti ottimi libri relativi alla programmazione del kernel Linux, ma solo pochi di essi trattano la compilazione e installazione del kernel. Ecco un elenco di libri che ho trovato utili.
| |
| | |
| === Libri generici su Linux ===
| |
| | |
| * Ellen Siever, Aaron Weber, Stephen Figgins, Robert Love, e Arnold Robbins. ''Linux in a Nutshell'' (O�Reilly), 2005.<br/>Questo libro comprende una delle pi� complete e autorevoli guide ai comandi per Linux. Essa copre praticamente ogni singolo comando di cui potreste mai aver bisogno.
| |
| | |
| * Yaghmour, Karim. ''Building Embedded Linux Systems'' (O�Reilly), 2003.<br/>Questo libro, sebben principalmente rivolto agli sviluppatori di sistemi Linux embedded, contiene un'ottima sezione relativa a come creare una ''toolchain'' e un kernel con compilazione incrociata. Oltre a questa sezione del libro, � consigliato anche in virt� di altre sezioni che forniscono interessanti informazioni per coloro che vogliono imparare come personalizzare il kernel e il resto del sistema.
| |
| | |
| === Libri inerenti il kernel Linux ===
| |
| | |
| Molti di questi libri sono indirizzati ai programmatori interessati ad apprendere come programmare all'interno del kernel. Sono generalmente molto tecnici rispetto a questo libro, ma sono un ottimo punto di partenza se desiderate imparare e capire il codice che governa il kernel.
| |
| | |
| *Jonathan Corbet, Alessandro Rubini, e Greg Kroah-Hartman. ''Linux Device Drivers'' (O�Reilly), 2005.<br/>Questo libro illustra come differenti ''device driver'' operano e fornisce parecchi esempi applicatici di driver funzionanti. È raccomandato a chiunque vuole programmare driver per il kernel. È disponibile in rete gratuitamente a questo indirizzo: http://lwn.net/Kernel/LDD3/
| |
| | |
| * Love, Robert. ''Linux Kernel Development'' (Novell Press Publishing), 2005.<br/> Questo libro copre quasi tutti gli aspetti relativi al kernel Linux, illustrando come tutto opera insieme. Ottimo punto di partenza per iniziare a capire e conoscere le diverse componenti del kernel.
| |
| | |
| * Bovet, Daniel P. e Cesate, Marco. ''Understanding the Linux Kernel'' (O�Reilly), 2005.<br/> Questo libro si addentra negli aspetti relativi la progettazione e implementazione del nucleo del kernel Linux. Un ottimo riferimento per apprendere e capire gli algoritmi utilizzati nelle diverse porzioni del kernel. Fortemente raccomandato a coloro che vogliono comprendere nel dettaglio come funziona il kernel.
| |
| | |
| == Strumenti ==
| |
| | |
| In questo libro sono stati menzionati molti utili strumenti. Di seguito, presento un elenco dei siti dove � possibile reperire e scaricare tali strumenti.
| |
| | |
| * ''Linux kernel''<br/> http://www.kernel.org e ftp://ftp.kernel.org contiene tutte le versioni del sorgente del kernel. http://www.kernel.org/git/ contiene una lista di tutti i ''git trees'' utilizzati dai diversi sviluppatori del kernel.
| |
| | |
| * ''gcc''<br>http://gcc.gnu.org/ sito principale per tutto ci� che concerne il compilatore GNU C.
| |
| | |
| * ''binutils''<br/>http://www.gnu.org/software/binutils/ � il sito principale dove trovare tutte le informazioni su binutils.
| |
| | |
| * ''make''<br/>http://www.gnu.org/software/make/ � il sito principale dove trovare tutte le informazioni su make.
| |
| | |
| *''util-linux''<br/>http://www.kernel.org/pub/linux/utils/util-linux/ � la directory da dove possono essere scaricate tutte le versioni di util-linux.
| |
| | |
| * ''module-init-tools''<br/>http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/ � la directory da dove possono essere scaricate tutte le versioni di module-init-tools.
| |
| | |
| * ''e2fsprogs''<br/>http://e2fsprogs.sourceforge.net/ � la pagina principale del progetto e2fsprogs.
| |
| | |
| * ''jfsutils''<br/>http://jfs.sourceforge.net/ � la pagina principale del progetto jfsutils.
| |
| | |
| * ''reiserfsprogs''<br/>http://www.namesys.com/download.html � la pagina principale del progetto reiserfsprogs.
| |
| | |
| * ''xfsprogs''<br/>http://oss.sgi.com/projects/xfs/ � la pagina principale del progetto xfsprogs.
| |
| | |
| * ''quota-tools''<br/>http://sourceforge.net/projects/linuxquota/ � la pagina principale del progetto quota-tools.
| |
| | |
| * ''nfs-utils''<br/>http://nfs.sf.net/ � la pagina principale del progetto nfs-utils.
| |
| | |
| * ''udev''<br/>http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html � la directory da dove possono essere scaricate tutte le versioni di udev.
| |
| | |
| * ''procfs''<br/>http://procps.sourceforge.net/ � la pagina principale del progetto procfs.
| |
|
| |
|
| * ''patchutils''<br/>http://cyberelk.net/tim/patchutils la directory da dove possono essere scaricate tutte le versioni di patchutils.
| |
|
| |
|
| * ''git''<br/>http://git.or.cz/ � il sito principale del progetto git.
| | == '''Dischi''' == |
|
| |
|
| * ''ketchup''<br/>http://www.selenic.com/ketchup/ � la pagina principale del progetto ketchup.
| | Il kernel Linux supporta una grande varietà di differenti tipi di disco. Questa sezione mostra come configurare il kernel in modo tale che supporti la maggior parte dei modelli più comuni di controller di disco. |
|
| |
|
| * ''quilt''<br/>http://savannah.nongnu.org/projects/quilt � la pagina principale del progetto quilt.
| | '''Periferiche USB''' |
|
| |
|
| * ''distcc''<br/>http://distcc.samba.org/ � la pagina principale del progetto distcc.
| | Per utilizzare una periferica di archiviazione USB (come quelle chiamate comunemente memorie "flash" USB, oppure dischi esterni USB) il supporto USB deve prima funzionare correttamente. Fare riferimento alla ricetta nella sezione chiamata [[USB]] per sapere come fare. |
|
| |
|
| * ''ccache''<br/>http://ccache.samba.org/ � la pagina principale del progetto ccache.
| | Una periferica di archiviazione USB può essere identificata utilizzando il programma ''lsusb''. Se la sequenza di comandi che segue produce i risultati mostrati, nel sistema è presente una periferica di archiviazione USB: |
|
| |
|
| | <pre> |
| | $ /usr/sbin/lsusb -v | grep Storage |
| | bInterfaceClass 8 Mass Storage |
| | <\pre> |
|
| |
|
| | Abilitatelo nel modo seguente. |
| | 1. A USB Storage device is in reality a USB SCSI device that talks over a USB |
| | connection. Because of this, the SCSI subsystem must be enabled: |
|
| |
|
| | <pre> |
| | Device Drivers |
| | SCSI Device Support |
| | [*] SCSI Device Support |
| | <\pre> |
| ---- | | ---- |
| This is an indipendent translation of the book [http://www.kroah.com/lkn/ Linux Kernel in a Nutshell] by [http://www.kroah.com/log/ Greg Kroah-Hartman]. This translation (like the original work) is available under the terms of [http://creativecommons.org/licenses/by-sa/2.5/ Creative Commons Attribution-ShareAlike 2.5]. | | This is an indipendent translation of the book [http://www.kroah.com/lkn/ Linux Kernel in a Nutshell] by [http://www.kroah.com/log/ Greg Kroah-Hartman]. This translation (like the original work) is available under the terms of [http://creativecommons.org/licenses/by-sa/2.5/ Creative Commons Attribution-ShareAlike 2.5]. |
| ---- | | ---- |
|
| |
|
| [[Categoria:Kernel]] | | [[Categoria:Kernel]]</pre> |
Torna all'indice: Linux Kernel in a Nutshell
Il capitolo precedente ci ha insegnato i meccanismi per la riconfigurazione del kernel; in questo capitolo arriva la parte interessante, in cui si possono trovare tutte le modifiche più comuni che gli utenti hanno bisogno di apportare ai loro kernel, con le istruzioni specifiche per effettuarle.
Dischi
Il kernel Linux supporta una grande varietà di differenti tipi di disco. Questa sezione mostra come configurare il kernel in modo tale che supporti la maggior parte dei modelli più comuni di controller di disco.
Periferiche USB
Per utilizzare una periferica di archiviazione USB (come quelle chiamate comunemente memorie "flash" USB, oppure dischi esterni USB) il supporto USB deve prima funzionare correttamente. Fare riferimento alla ricetta nella sezione chiamata USB per sapere come fare.
Una periferica di archiviazione USB può essere identificata utilizzando il programma lsusb. Se la sequenza di comandi che segue produce i risultati mostrati, nel sistema è presente una periferica di archiviazione USB:
$ /usr/sbin/lsusb -v | grep Storage
bInterfaceClass 8 Mass Storage
<\pre>
Abilitatelo nel modo seguente.
1. A USB Storage device is in reality a USB SCSI device that talks over a USB
connection. Because of this, the SCSI subsystem must be enabled:
<pre>
Device Drivers
SCSI Device Support
[*] SCSI Device Support
<\pre>
----
This is an indipendent translation of the book [http://www.kroah.com/lkn/ Linux Kernel in a Nutshell] by [http://www.kroah.com/log/ Greg Kroah-Hartman]. This translation (like the original work) is available under the terms of [http://creativecommons.org/licenses/by-sa/2.5/ Creative Commons Attribution-ShareAlike 2.5].
----
[[Categoria:Kernel]]