Attivare le quote su un filesystem: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
(impostare le quote)
m (Introduzione)
Riga 1: Riga 1:
__TOC__
''Inserire qui la traduzione di [http://www.kernel.org/pub/linux/kernel/people/gregkh/lkn/lkn_pdf/appa.pdf questo] capitolo...''


Molte delle informazioni contenute in questo libro sono state estratte dalla documentazione del kernel e dal codice sorgente. La documentazione infatti 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.


== Libri ==
__TOC__
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. &Egrave; consigliato a chiunque vuole programmare driver per il kernel. &Egrave; 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 consigliato 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.
 
* ''ketchup''<br/>http://www.selenic.com/ketchup/ � la pagina principale del progetto ketchup.
 
* ''quilt''<br/>http://savannah.nongnu.org/projects/quilt � la pagina principale del progetto quilt.


* ''distcc''<br/>http://distcc.samba.org/ � la pagina principale del progetto distcc.
Scaricare [da Internet, NdT], compilare, aggiornare e mantenere i sorgenti del kernel Linux coinvolge diversi passi, come questo libro illustra. Essendo per natura creature pigre, gli sviluppatori hanno creato alcuni programmi a supporto di queste attivit� di routine. Descriviamo alcuni di tali utili strumenti e le nozioni di base sul loro utilizzo.


* ''ccache''<br/>http://ccache.samba.org/ � la pagina principale del progetto ccache.
Lo sviluppo del kernel Linux differisce per molti aspetti dal tradizioale processo di sviluppo software. Ad uno sviluppatore del kernel sono richieste alcune attivit� peculiari:


* Applicare le modifiche ad un "bersaglio mobile" quale il kernel, a causa della pianificazione dei rilasci di sviluppo.
* Risolvere i conflitti nella fase di merge tra ci ha fatto rispetto a quanto fatto dagli altri sviluppatori.
* Esportare i suoi cambiamenti in un formato che permetta agli altri sviluppatori di incorporarli facilmente nel proprio lavoro.