Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "GiacomoForresu/Prove0"
Differenze tra le versioni 2 e 3
Versione 2 del 13/03/2007 12.53.48
Dimensione: 10987
Commento:
Versione 3 del 11/06/2007 12.26.23
Dimensione: 4098
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
prove creazione wiki

'''QUESTA È UNA PAGINA IN FASE DI REALIZZAZIONE'''

||<tablebgcolor="#f1f1ed" tablewidth="40%" tablestyle="margin: 0pt 0pt 1em 1em; float: right; font-size: 0.9em;"style="padding: 0.5em;">[[TableOfContents(2)]]||
#LANGUAGE it
[[BR]]
||<tablestyle="float:right; font-size: 0.9em; width:35%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Indice'''[[BR]] [[TableOfContents]]||
Linea 8: Linea 6:
In informatica, il '''kernel''' costituisce il '''nucleo''' di un sistema operativo. Si tratta di un software avente il compito di fornire ai processi in esecuzione sull'elaboratore un accesso sicuro e controllato all'hardware. Dato che possono esserne eseguiti simultaneamente più di uno, il kernel ha anche la responsabilità di assegnare una porzione di tempo-macchina e di accesso all'hardware a ciascun programma ([http://it.wikipedia.org/wiki/Multitasking multitasking]).
Linea 10: Linea 7:
Compilare il codice sorgente del '''kernel''', anziché installare uno dei pacchetti pre-compilati, assicura certamente alcuni vantaggi, tra cui: La sigla RAID significa '''Redundant array of independent disks''' ovvero ''Insieme ridondante di dischi indipendenti''. Il Raid è un [[BR]]
Linea 12: Linea 9:
 * Un avvio più veloce perché i moduli da caricare sono solo quelli della vostra macchina e non ce ne sono di inutili.
 * Un sistema operativo più veloce perché potete ottimizzare il codice sul vostro processore.
 * La possibilità di attivare opzioni che non sono presenti nei kernel pre-compilati.

Compilare un kernel, però , non è necessario nei casi in cui
*il nostro hardware funzioni alla perfezione
*le periferiche vengono completamente riconosciute.
Inoltre l'aumento di prestazioni avviene in gran parte solo al boot senza che vi sia un reale aumento di prestazioni generali nella sessione di root vera e propria.
Si tenga ben presente che compilare un nuovo kernel significa nella sostanza cambiare gran parte del sistema operativo, in quanto il kernel ne costituisce il "motore"; inoltre è richiesta un buona conoscenza del proprio hardware.
= Preparativi =

== Installare le varie dipendenze ==

Il processo di compilazione richiede l'installazione di alcuni pacchetti specifici, da synaptic installare: ''build-essential bin86 kernel-package libqt3-headers libqt3-mt-dev gcc libncurses5 wget libncurses5-dev '', o più semplicemente digitare da terminale: {{{
sudo apt-get install build-essential bin86 kernel-package gcc libncurses5 libncurses5-dev
}}}
scaricate le libqt3-headers libqt3-mt-dev solo se volete effettuare un configurazione grafica con le librerie Qt

== Scaricare i sorgenti del kernel ==

Sarà necessario scaricare i sorgenti del kernel. Ci sono due possibili strade:
 * scaricare il pacchetto da questo indirizzo: [http://www.kernel.org].[[BR]]
 In questo modo si avrà la possibilità di installare l'ultima versione stabile del kernel, la cosiddetta versione '''Vanilla'''. Una volta scaricato il pacchetto, sarà necessario decomprimerlo e copiarlo nella cartella `/usr/src/`.
È consigliato scompattare e compilare il kernel da utente normale. Il proprietario , per policy debian, della cartella /usr/src è il gruppo src. Per assegnare al vostro utente i diritti di scrittura e lettura è quindi necessario e sufficiente inserire il proprio utente in questo gruppo con il comando
{{{sudo adduser utente src}}} **al posto di utente mettete , ovviamente il vostro utente.
Qualora il gruppo src non avesse più i diritti di scrittura (perché di default li ha) sulla carttella '''src''' questi dovranno essere ripristinati con
{{{sudo chmod -R g+wr /usr/src/*
}}}
particolare sistema di configurazione degli hard disk, che consente , a seconda dell'implementazione, di ottenere :
Linea 42: Linea 12:
{{{
tar -xvjf linux-[VERSIONE_CHE_AVETE_SCARICATO].tar.bz2 && sudo cp -r linux-[VERSIONE_CHE_AVETE_SCARICATO] /usr/src/
}}}
 
 * scaricare il pacchetto dai repository di Ubuntu (kernel ufficiale di Ubuntu), da terminale dare il seguente comando: {{{
sudo apt-get install linux-source
}}}
 Ubuntu, purtroppo, non fornisce tutte le versioni dei kernel più aggiornate, scegliendo infatti questa opzione si correrà il rischio di non avere l'ultimo kernel stabile.
* maggiori '''prestazioni''' con il Raid0 ( modalità ''striping'' ). Richiede almeno 2 HD.

* '''sicurezza''' con il Raid1 (modalità ''mirroring''). Richiede almeno 2 HD.

* '''prestazioni e sicurezza''' con il Raid5. Richiede un minimo di 3 HD a un massimo di 32.
Linea 52: Linea 19:
= Compilazione e installazione =

Entrare nella directory dei sorgenti del kernel appena scaricati: {{{
cd /usr/src/linux-[VERSIONE_CHE_AVETE_SCARICATO]
}}}

== Eventuali patch ==

A questo punto, se necessario, sarà possibile applicare una o più '''patch''' al kernel.

Tra le più diffuse si possono trovare quelle di:

 * [http://www.kernel.org/pub/linux/kernel/people/ck/patches/2.6/ Con Kolivas]
 * [ftp://ftp.kernel.org/pub/linux/kernel/people/alan/ Alan Cox]
 * [ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/ Andrew Morton]

Di solito le patch vengono applicate utilizzando l'insieme di due comandi: '''patch''' e '''cat''' (o anche '''bzcat''' se il file ha estensione ''.bz2'').

Copiare la patch nella directory dei sorgenti del kernel e digitare: {{{
bzcat [NOME_DELLA_PATCH].bz2 < patch -p1
}}}

Se il procedimento non andrà a buon fine, sarà necessario cancellare tutto quanto e ricominciare dall'inizio.

== Configurazione ==

È possibile importare una vecchia configurazione di un altro kernel. Se si dispone del file `.config` è sufficiente copiarlo all'interno della directory dei sorgenti.

Se si vuole utilizzare la configurazione del kernel attualmente in uso, è sufficiente digitare, all'interno della directory dei sorgenti: {{{
make oldconfig ( utile per esempio se si passa ad un kernel con un versione poco superiore per non dover rifare la configurazione)
}}}

Per personalizzare la configurazione eliminando eventuali moduli, o per crearne una nuova, ci sono diversi modalità:
 
* Grafica: {{{
make xconfig }}} **nota: se non si vuole usare questa configurazione non scaricare i pacchetti libqt3-headers libqt3-mt-dev.

{{{ make gconfig}}} **nota: usa le librerie gtk. Sono necessari i pacchetti libgtk2.0-0 libgtk2.0-0-dev libglade2-0 libglade2-0-dev

* Pseudo-grafica: {{{
make menuconfig }}} **nota: se se non si vuole usare questa configurazione non scaricare i pacchetti '''libncurses5''' '''libncurses5-dev'''
Linea 95: Linea 21:
Per l'utente più inesperto è consigliabile effettuare la configurazione con il metodo grafico. ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Grandi/info.png,,center)]] ||<style="padding:0.5em; border:none;"> Esistono molte altre implementazioni per il Raid (più o meno complesse). Per farvi un'idea di quelle che potete ||
                                      utilizzare e capire vantaggi e vantaggi delle singole configurazioni, vi consiglio alcune letture [[BR]]
        (oltre a quella del manuale della vostra scheda raid):[:it.wikipedia.org/wiki/RAID: Wikipedia] e [:openskills.info/infobox.php?IDbox=825:alcune informazioni generali].
Linea 97: Linea 25:
Potrete cercare le varie opzioni di configurazione di ogni versione del kernel in questo utilissimo sito: [http://kernel.xc.net/ Linux Kernel Configuration Archive] = Configurazione =
Linea 99: Linea 27:
'''Attenzione a come vi muovete: la cancellazione di un semplice modulo può compromettere l'intero sistema! Per cercare di ridurre al minimo gli errori digitate da terminale {{{sudo lshw}}}, per visualizzare il vostro hardware. Se non siete sicuri lasciate i modulo attivi.''' Prenderò in considerazione una configurazione Raid0 (striping) con due dischi sata ma ciò che verrà detto varrà anche per [[BR]]
Linea 101: Linea 29:
Alla fine la configurazione sarà all'interno del file `.config` presente nella cartella del kernel. È consigliato farne una copia, se si è soddisfatti del lavoro svolto.

=== Configurazione standard ===

Seguire quanto descritto per evitare spiacevoli inconvenienti in fase di compilazione:
 
 1. In «'''General Setup'''» attivare:
  * -Support for paging of anonymous memory (swap)
   * --Support for prefetching swapped memory

 1. In «'''Processor type and features'''»:
  * In «'''Processor family'''» scegliere il modello del processore.
  * Attivare '''Preemption Model-> Voluntary Kernel Preemption''' (Desktop)
  * In «'''High Memory Support'''» scegliere:
   * '''off''' se si possiede meno di 1 GB di RAM
   * '''1GB Low Memory Support''' se si possiede 1GB di RAM
   * '''4GB''' se si possiede più di 1GB di RAM
  * In «'''Timer frequency'''» abilitare: '''1000 Hz'''

 1. In «'''Graphics Support'''»
  * Disabilitare '''NVIDIA RIVA''' se si usano driver Nvidia proprietari.

 1. In «'''Device drivers -> Block devices -> IO Schedulers lasciare'''» scegliere solo «'''CFQ I/O scheduler'''», otterrete una migliore performance.

 1. In «'''Kernel hacking'''» deselezionare «'''Kernel debugging'''».

== Compilare ==
Finita la fase di personalizzazione, per compilare, digitare: {{{
make-kpkg clean
}}}
se è la prima volta che compilare non eseguite questo comando; serve per pulire le tracce delle compilazioni precedenti per non creare conflitti.
E successivamente: {{{
make-kpkg --append-to-version=-CUSTOM --initrd kernel_image kernel_headers modules_image
}}}

Il flag di revisione è opzionale ed è solamente utile per visualizzare il nome del kernel attraverso il comando: {{{
uname -r
}}}

C'è la possibilità di scrivere tutto ciò che si vuole al posto di «'''-CUSTOM'''» (esempio: dopo il trattino "-10.k7" in base al tipo di processore disponibile sulla propria macchina). L'importante è non lasciare CUSTOM in quanto i caratteri maiuscoli non sono supportati.

Generalmente i kernel Ubuntu usano un '''initrd''', per crearlo è sufficiente aggiungere l'opzione «'''--initrd'''» al comando precedente.

 *L'opzione --initrd viene usata per il così detto '''ramdisk''': una porzione di ram che viene usata per caricare i moduli necessari al sistema per avviare la sessione.
Non è un'opzione essenziale in quanto se si compilano i moduli relativi al filesistem sulla quale fa il boot e i moduli del chipset , non c'è bisogno dell'immagine initrd.Inoltre il boot risulta un pò più veloce. Serve invece nei kernel ufficiali che devono supportare un gran numero di chipset, filesistem, hd ecc. e per ciò si caricano tutti questi moduli. Serve anche nel caso si debba usare un bootsplash.
Si possono usare tool come '''mkinitrd.yaird''' per creare ramdisk esclusivamente con i moduli necessari all'avvio. Purtroppo mkinitrd.yaird non supporta ancora partizioni ext3 e xfs.
Poichè vi sia initrd è necessario che l' opzione '''RAM disk support''' nella sezione Block Device del kernel, sia abilitata.

* L'opzione kernel_image compila tutti i moduli del kernel che abbiamo scelto nella configurazione e ne crea un pacchetto .deb

*L'opzione kernel_headers crea un pacchetto , ovviamente in .deb , con l'immagine degli headers , ovvero tutte quelle librerie esterne che vengono dichiarate all'inizio del sorgente del file (per questo chiamate headers) come per esempio gtk.h.

* L'opzione modules_image crea sempre un pacchetto .deb compilando quei moduli '''esterni''' presenti nella cartella /usr/src. Questo comando è utile , per esempio, se abbiamo installato i driver proprietari della nostra scheda video Ati, i cui sorgenti fglrx risiedono in /usr/src e con l'opzione in esame saranno pacchettizzati. Così basterà un doppio click per avere di nuovo l'acc3d nel nuovo kernel. Questo è solo un esempio, ma si può anche parlare di altri sorgenti esterni come quelli della webcam.

== Installare ==

Entrare nella cartella superiore: {{{
cd ..
}}}

E installare i pacchetti appena creati (dovrebbero essere due). Da terminale digitare: {{{
sudo dpkg -i kernel-image-[VERSIONE_DEL_KERNEL].deb
sudo dpkg -i linux-headers-[VERSIONE_DEL_KERNEL].deb
}}}

'''Grub verrà aggiornato automaticamente.'''

Riavviare e all'avvio scegliere il nuovo kernel installato.

Se ci sono problemi, riavviare la macchina e utilizzare il vecchio kernel.
le altre configurazioni, nel limite del possibile.
Linea 173: Linea 32:
||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Grandi/info.png,,center)]] ||<style="padding:0.5em; border:none;">Fate un back-up dei dati più importanti prima di procedere. '''Si consiglia inoltre di usare''' [[BR]] ||
              '''dischi identici in modello, marca dimensione, per evitare possibili problemi'''.


------------------------------
[[BR]]

Inserire, a pc spento, i connettori serial-ata o ATA negli alloggiamenti del controller raid. Configurazioni Serial-ata e ata miste, sono

possibili solo in alcune schede madri. Avviare il pc e aprire il menù di configurazione della scheda raid, con la combinazione di tasti

opportuna (controllate bene il manuale della scheda).

I menù cambiano da scheda a scheda ma quello che dovete fare è :

* '''definire gli array, selezionando i due o più dischi , mettendoli nella modalità che preferite (stripe , mirroring ecc.);'''

* '''definire gli stripe'''. Questi possono essere di diverse dimensioni. L'autore consiglia stripe di dimensioni 16k , qualora fosse possibile,

 per ottenere maggiori prestazioni.

||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%>[[Immagine(Icone/Piccole/warning.png,,center)]] ||<style="padding:0.5em; border:none;">'''Attenzione. Facendo tali operazioni perderete tutti i dati. Verrà infatti cancellata la tabella delle partizioni.''' ||
 


== Avvio del sistema operativo ==

Procuriamoci un '''Alternate cd Install'''(questo è fondamentale) ,della distribuzione che preferiamo, da [:www.ubuntu-it.org/index.php?page=ottenere-kubuntu:qui] (per Kubuntu), da [:www.ubuntu-it.org/index.php?page=download:qui] (per ubuntu), [[BR]]
da [:www.ubuntu-it.org/index.php?page=ottieni-xubuntu:qui] (per xubuntu) e infine da [:www.ubuntu-it.org/index.php?page=ottenere-edubuntu:qui] (per Edubuntu).
 
Avviamo il cd e seguiamo [:wiki.ubuntu-it.org/Installazione/Generale#head-c8504ea15981c130476abc0c338178e8c11e1a12:questa guida] fino al punto del partizionamento manuale , se non sappiamo come procedere.

= Partizionamento dischi =

Arrivati al partizionamento manuale, sarà necessario creare nei due dischi '''le stesse identiche partizioni'''; cioè un disco deve [[BR]]

essere la copia speculare dell'altro.

Selezionare uno dei due dischi (''sda'' ed ''sdb'' nell'esempio)
== Titolo 2 ==

testo
Linea 174: Linea 76:
 * [http://massimo.solira.org/pcikl/index.html Progetto Configurazione Italiana del Kernel Linux]
* risorsa 1
* risorsa 2

## da questo punto in poi non modificare!
Linea 176: Linea 82:
CategoryHomepage CategoryNuoviDocumenti

BR

Introduzione

La sigla RAID significa Redundant array of independent disks ovvero Insieme ridondante di dischi indipendenti. Il Raid è un BR

particolare sistema di configurazione degli hard disk, che consente , a seconda dell'implementazione, di ottenere :

* maggiori prestazioni con il Raid0 ( modalità striping ). Richiede almeno 2 HD.

* sicurezza con il Raid1 (modalità mirroring). Richiede almeno 2 HD.

* prestazioni e sicurezza con il Raid5. Richiede un minimo di 3 HD a un massimo di 32.

Immagine(Icone/Grandi/info.png,,center)

Esistono molte altre implementazioni per il Raid (più o meno complesse). Per farvi un'idea di quelle che potete

  • utilizzare e capire vantaggi e vantaggi delle singole configurazioni, vi consiglio alcune letture BR

  • (oltre a quella del manuale della vostra scheda raid):[:it.wikipedia.org/wiki/RAID: Wikipedia] e [:openskills.info/infobox.php?IDbox=825:alcune informazioni generali].

Configurazione

Prenderò in considerazione una configurazione Raid0 (striping) con due dischi sata ma ciò che verrà detto varrà anche per BR

le altre configurazioni, nel limite del possibile.

Immagine(Icone/Grandi/info.png,,center)

Fate un back-up dei dati più importanti prima di procedere. Si consiglia inoltre di usare BR

  • dischi identici in modello, marca dimensione, per evitare possibili problemi.


BR

Inserire, a pc spento, i connettori serial-ata o ATA negli alloggiamenti del controller raid. Configurazioni Serial-ata e ata miste, sono

possibili solo in alcune schede madri. Avviare il pc e aprire il menù di configurazione della scheda raid, con la combinazione di tasti

opportuna (controllate bene il manuale della scheda).

I menù cambiano da scheda a scheda ma quello che dovete fare è :

* definire gli array, selezionando i due o più dischi , mettendoli nella modalità che preferite (stripe , mirroring ecc.);

* definire gli stripe. Questi possono essere di diverse dimensioni. L'autore consiglia stripe di dimensioni 16k , qualora fosse possibile,

  • per ottenere maggiori prestazioni.

Immagine(Icone/Piccole/warning.png,,center)

Attenzione. Facendo tali operazioni perderete tutti i dati. Verrà infatti cancellata la tabella delle partizioni.

Avvio del sistema operativo

Procuriamoci un Alternate cd Install(questo è fondamentale) ,della distribuzione che preferiamo, da [:www.ubuntu-it.org/index.php?page=ottenere-kubuntu:qui] (per Kubuntu), da [:www.ubuntu-it.org/index.php?page=download:qui] (per ubuntu), BR da [:www.ubuntu-it.org/index.php?page=ottieni-xubuntu:qui] (per xubuntu) e infine da [:www.ubuntu-it.org/index.php?page=ottenere-edubuntu:qui] (per Edubuntu).

Avviamo il cd e seguiamo [:wiki.ubuntu-it.org/Installazione/Generale#head-c8504ea15981c130476abc0c338178e8c11e1a12:questa guida] fino al punto del partizionamento manuale , se non sappiamo come procedere.

Partizionamento dischi

Arrivati al partizionamento manuale, sarà necessario creare nei due dischi le stesse identiche partizioni; cioè un disco deve BR

essere la copia speculare dell'altro.

Selezionare uno dei due dischi (sda ed sdb nell'esempio)

Titolo 2

testo

Ulteriori risorse

* risorsa 1 * risorsa 2


CategoryNuoviDocumenti