Top Banner

of 92

Manuale Gentoo

Jul 21, 2015

Download

Documents

Fabio Di Sotto
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript

Manuale Gentoo Linux AMD64Sven Vermeulen Autore Grant Goodyear Autore Roy Marples Autore Daniel Robbins Autore Chris Houser Autore Jerry Alexandratos Autore Seemant Kulleen Sviluppo x86 Tavis Ormandy Sviluppo Alpha Jason Huebel Sviluppo AMD64 Guy Martin Sviluppo HPPA Pieter Van den Abeele Sviluppo PPC Joe Kallar Sviluppo SPARC John P. Davis Redazione Pierre-Henri Jondot Redazione Eric Stockbridge Redazione Rajiv Manglani Redazione Jungmin Seo Redazione Stoyan Zhekov Redazione Jared Hudson Redazione Colin Morey Redazione Jorge Paulo Redazione Carl Anderson Redazione Jon Portnoy Redazione Zack Gilburd Redazione Jack Morgan Redazione Benny Chuang Redazione Erwin Redazione Joshua Kinard Redazione Tobias Scherbaum Redazione Xavier Neys Redazione Joshua Saddler Redazione Gerald J. Normandin Jr. Revisione Donnie Berkholz Revisione Ken Nowack Revisione Lars Weiler Contributi Marco Mascherpa Traduzione Stefano Pacella Traduzione Enrico Morelli Traduzione Davide Cendron Traduzione Aggiornato il 14 novembre 2010 La versione originale di questo documento pi recente ed stata aggiornata il 5 novembre 2011 Indice: Installazione di Gentoo In questa parte si tratta dell'installazione di Gentoo Linux su un sistema. 1. A proposito dell'installazione di Gentoo Questo capitolo introduce il metodo di installazione trattato in questo manuale. 2. Scelta della modalit di installazione Gentoo Linux pu essere installato in vari modi: in questo capitolo si illustra come

installare Gentoo con il CD di installazione minimale. 3. Configurazione della rete Per poter scaricare gli ultimi codici sorgenti, necessario configurare la rete. 4. Preparazione dei dischi Per poter installare Gentoo necessario creare delle partizioni. Questo capitolo descrive come partizionare un disco. 5. Copia dei file di installazione di Gentoo L'installazione Gentoo funziona tramite un file chiamato stage3. Il capitolo tratta dell'estrazione dell'archivio stage3 e della configurazione di Portage. 6. Installazione del sistema base Gentoo Dopo la configurazione e l'installazione di uno stage3, il risultato finale un sistema base Gentoo a disposizione dell'utente. Il capitolo descrive come arrivare a questo punto. 7. Configurazione del Kernel Il kernel di Linux il cuore di ogni distribuzione. Il capitolo tratta della configurazione del Kernel. 8. Configurazione del sistema E' necessario modificare alcuni importanti file di configurazione. In questo capitolo si d una panoramica di questi file e dei cambiamenti da eseguire. 9. Installazione degli strumenti di sistema Questo capitolo riguarda la scelta della versione e l'installazione degli strumenti di sistema. 10.Configurazione del Bootloader In questo capitolo sar descritto il Bootloader GRUB, e si vedr la sua configurazione in base alle proprie necessit. 11.Termine dell'installazione Gentoo E' quasi finita. Si creano uno o pi utenti nel nuovo sistema. 12.Cosa fare adesso? Il sistema Gentoo pronto, e adesso? Lavorare con Gentoo Si comincia a lavorare con Gentoo: installare software, impostare parametri, cambiare il comportamento di portage ecc. 1. Una introduzione di Portage Questo capitolo spiega i "semplici" passi che un utente dovrebbe conoscere per mantenere il software del proprio sistema. 2. Flag USE Le flag USE sono un aspetto molto importante di Gentoo. In questo capitolo, si spiega come lavorare con le flag USE e comprendere come queste interagiscono con il sistema. 3. Caratteristiche di Portage Il sistema Portage di Gentoo mette a disposizione diverse caratteristiche di personalizzazione, come il tempo di compilazione. Questo capitolo illustra le attuali possibilit. 4. Initscripts Gentoo usa un formato speciale di initscript che, tra le altre caratteristiche, permette risoluzioni guidate delle dipendenze e initscript virtuali. Questo capitolo spiega tutti questi aspetti e spiega come utilizzare questi script.

5. Variabili di ambiente Con Gentoo si possono controllare facilmente le variabili di ambiente per il sistema. Questo capitolo spiega come farlo e descrive anche le variabili utilizzate con maggior frequenza. Lavorare con Portage "Lavorare con Portage" offre una completa panoramica di Portage, il sistema di gestione dei pacchetti caratteristico di Gentoo. 1. File e directory Una volta che si conosce a fondo Portage, necessario sapere dove memorizza i propri file e dati. 2. Configurazione e variabili Portage completamente configurabile attraverso l'uso di variabili impostate in file di configurazione o in variabili ambiente. 3. Combinare Software affidabile e non Gentoo fornisce software separato in alcune branche a seconda della stabilit e architettura supportata. "Mixare branche software" d informazioni su come possono essere configurate queste branche e come sia possibile separare queste branche individualmente. 4. Ulteriori strumenti di Portage Portage fornisce alcuni strumenti extra che possono migliorare la gestione di Gentoo. La lettura fornisce informazioni sull'utilizzo di dispatch-conf ed altri strumenti. 5. Separarsi dalla collezione di software originale "Deviare dall'albero ufficiale" mostra alcuni trucchi e suggerimenti su come utilizzare il proprio albero del Portage, come sincronizzare solo alcune categorie, fare l'inject dei pacchetti ed altro ancora. Configurazione di rete di Gentoo Una guida esaustiva alla configurazione di rete in Gentoo. 1. Configurazione comune Una guida per far funzionare rapidamente la propria connessione di rete nella maggior parte dei casi. 2. Configurazione Avanzata La guida di riferimento per capire come funziona la configurazione, un prerequisito per capire le impostazioni modulari. 3. Impostazioni modulari Gentoo fornisce delle impostazioni di rete flessibili, dando la possibilit di scegliere diversi client DHCP, impostare bonding, bridging, VLAN ed altro. 4. Reti Wireless La configurazione delle reti Wireless potrebbe essere complessa, comunque questa guida cercher di aiutare il lettore a farle funzionare! 5. Ulteriori funzionalit Per gli esperti ecco le istruzioni per personalizzare l'infrastruttura di rete. 6. Gestione della rete Per i portatili o per chi cambia frequentemente rete.

A. Installazione di Gentoo1. A proposito dell'installazione di Gentoo1.a. Introduzione Benvenuto Innanzitutto un caldo benvenuto a Gentoo. Si sta per entrare nel mondo delle possibilit e delle prestazioni. Tutto Gentoo gira intorno alle possibilit. Durante l'installazione di Gentoo questo concetto viene chiarito pi volte; possibile scegliere quanto si voglia compilare autonomamente, come installare Gentoo, che logger di sistema utilizzare, e molto altro. Gentoo una veloce e moderna metadistribuzione con una architettura semplice e flessibile. Gentoo stata costruita con software libero e non nasconde agli utenti i meccanismi che ne stanno alla base. Portage, il sistema di gestione dei pacchetti utilizzato da Gentoo, scritto in Python: semplice quindi esaminare e modificare il sorgente. Il sistema di pacchetti di Gentoo basato sui sorgenti, sebbene sia anche compreso il supporto per precompilati, e la configurazione di Gentoo avviene tramite semplici file di testo. In altre parole tutto alla luce del sole. E' molto importante comprendere che le scelte sono ci che sta alla base di Gentoo. L'obiettivo di non forzare mai l'utente a qualcosa che non desidera. Nel caso sia abbia un'impressione diversa possibile segnalarlo. Struttura dell'installazione L'installazione di Gentoo pu essere divisa in una procedura di dieci passi elementari, corrispondenti ai capitoli 2-11. Ogni passo ha come risultato uno stato intermedio: Al termine del passo 1, pronto l'ambiente di lavoro per l'installazione di Gentoo Al termine del passo 2, stata configurata la connessione ad internet per l'installazione Al termine del passo 3, gli hard disk sono stati inizializzati ad accogliere l'installazione Gentoo Al termine del passo 4, l'ambiente di installazione pronto e si effettua il chroot all'interno di quest'ultimo Al termine del passo 5, i pacchetti di sistema, identici per ogni genere di installazione, sono stati installati Al termine del passo 6, stato configurato il kernel Al termine del passo 7, sono stati scritti la maggior parte dei file di configurazione Gentoo Al termine del passo 8, sono stati installati una serie di strumenti di sistema, da scegliere da una lista Al termine del passo 9, il proprio bootloader preferito stato installato e configurato e si ha a disposizione il proprio ambiente Gentoo Al termine del passo 10, si pronti ad utilizzare Gentoo Al momento in cui si presenta una scelta viene fatto il possibile per illustrare quali siano i pro e i contro. La guida continua con una scelta predefinita, identificata come "Predefinito:" nel titolo. Le restanti possibilit vengono indicate come "Alternativa: ". La scelta predefinita in generale non quella raccomandata, tuttavia quella che si pensa venga usata dalla maggior parte degli utenti. A volte pu essere intrapreso un passo opzionale. In questo caso il passo viene segnato come "Opzionale:" e non dunque indispensabile per l'installazione di Gentoo. In ogni caso alcuni

passi opzionali dipendono strettamente da decisioni prese in precedenza. Viene quindi messa in luce la questione in tali occasioni, sia prima che venga intrapresa la scelta, sia prima della descrizione del passo opzionale. Quali sono le opzioni? Si pu installare Gentoo in molti modi differenti. Si pu scaricare e installare da uno dei CD di installazione, da una distribuzione gi installata, da un CD avviabile non Gentoo (come Knoppix), da un ambiente avviato via rete, da un floppy, ecc. Questo documento tratta dell'installazione tramite un CD di Installazione di Gentoo e in alcuni casi boot via rete. Nelle istruzioni di installazione si presuppone che si desideri installare l'ultima versione disponibile di ogni pacchetto. Nota: For help on the other installation approaches, including using non-Gentoo CDs, please read our Alternative Installation Guide. Per un aiuto riguardo agli altri metodi d'installazione, incluso l'utilizzo di CD non Gentoo, si prega di leggere la nostra Guida ai metodi di installazione alternativi. Per effettuare una installazione in assenza di un collegamento ad Internet possibile consultare il Manuale Gentoo 2008.0 che contiene le istruzioni per l'installazione in ambiente senza collegamento ad Internet. Notare inoltre che se si pensa di utilizzare la GRP (Gentoo Reference Platform, un insieme di pacchetti precompilati da utilizzare subito dopo l'installazione) indispensabile seguire le informazioni del Manuale Gentoo 2008.0. inoltre disponibile una raccolta di suggerimenti che potrebbero essere una lettura altrettanto utile. Per gli utenti Gentoo esperti che necessitano solamente di una breve lista di controllo per i vari passaggi dell'installazione disponibile una guida pi rapida disponibile nella pagina della documentazione ufficiale. Sono disponibili molte altre opzioni: si pu compilare il sistema da zero o utilizzare un ambiente precompilato per ottenere un ambiente di Gentoo funzionante in poco tempo. E naturalmente esistono soluzioni intermedie in cui non si compila tutto quanto ma si inizia da un sistema semi-pronto. Problemi Se durante l'installazione o nella documentazione si riscontrassero dei problemi possibile consultare il sistema di gestione dei bug e, nel caso non fosse un problema gi noto, segnalarlo per una rapida soluzione. Non c' motivo di temere la reazione degli sviluppatori a cui vengono assegnati i bug: sono innocui. Notare che, nonostante il presente documento sia specifico per ogni architettura, non mancano riferimenti ad altre architetture. Questo avviene a causa del fatto che diverse parti del manuale sono comuni a tutte le architetture per evitare duplicazioni e problemi vari. L'intento comunque quello di limitare i riferimenti alle altre architetture per evitare confusioni. Se, nonostante l'attenta lettura del manuale, non ben chiaro se il problema riguardi un errore dell'utente, o un bug software, cosa effettivamente plausibile nonostante i numerosi test, possibile entrare nel canale #gentoo su irc.freenode.net. Ovviamente si sempre benvenuti! Se ci fossero domande riguardanti Gentoo, possibile consultare l'elenco delle Domande frequenti, disponibili nella Documentazione Gentoo. E' possibile inoltre sfruttare le FAQ disponibili sui forum. Se ancora il dubbio rimanesse irrisolto si pu entrare in #gentoo su irc.freenode.net dove parecchi esperti sono sempre disponibili.

2. Scelta della modalit di installazione2.a. Richieste Hardware Introduzione

Prima ancora di cominciare vengono elencate le richieste hardware necessarie per installare Gentoo sulla propria macchina. Requisiti Hardware CD Minimale LiveCD Tutte le CPU AMD64 o EM64T (i processori Core 2 Duo & Quad sono CPU EM64T) Memoria 64 MB 256 MB Spazio su disco 1.5 GB (escluso lo spazio per swap) Spazio per Almeno 256 MB swap Si dovrebbe controllare la Gentoo AMD64 Project Page prima di continuare. 2.b. I CD di Installazione Gentoo Introduzione I CD di Installazione Gentoo sono CD avviabili che contengono un ambiente Gentoo autonomo. Consentono di avviare Linux da CD. Durante il processo di boot viene rilevato l'hardware e vengono caricati i relativi driver. I CD vengono mantenuti dagli sviluppatori Gentoo. Tutti i CD di Installazione consentono di avviare, configurare la rete, inizializzare le partizioni e iniziare l'installazione di Gentoo da Internet. CD di Installazione Gentoo Minimale L'immagine del CD di Installazione minimale si chiama install-amd64-minimal.iso ed occupa solo 119MB di spazio. possibile utilizzarlo per installare Gentoo ma solo nel caso si disponga di una connessione ad Internet. Lo Stage3 Un archivio stage3 un tar che contiene un ambiente Gentoo minimale, fatto apposta per continuare l'installazione Gentoo, come indicato in questo manuale. In precedenza il Manuale Gentoo descriveva l'installazione mediante l'utilizzo di uno dei tre stage disponibili. Adesso per, pur continuando ad essere disponibili tutti e tre gli stage, il metodo ufficiale di installazione adotta lo stage3. Se si interessati a condurre una installazione Gentoo utilizzando un archivio stage1 o stage2 possibile consultare le Domande frequenti (FAQ) su Gentoo alla voce Come installare Gentoo mediante uno stage1 o stage2. Gli archivi stage3 possono essere scaricati da releases/amd64/autobuilds/currentstage3/ in uno qualsiasi dei Mirror ufficiali Gentoo e non vengono forniti sul LiveCD. 2.c. Scaricare, masterizzare ed avviare un CD di Installazione Gentoo Scaricare e masterizzare i CD di Installazione Questa la sezione che tratta l'utilizzo di un CD di Installazione Gentoo. Si inizia scaricando uno dei differenti set di CD a cui si accennato. possibile scaricare qualsiasi CD di Installazione da uno dei mirror di Gentoo. Il CD di Installazione risiedono nella directory releases/amd64/autobuilds/current-iso/. All'interno della directory segnalata si possono trovare le ISO. Si tratta di immagini complete di CD che si possono masterizzare. Nel caso che si voglia controllare l'integrit del file che si scaricato, possibile controllare il checksum MD5 e confrontarlo con quelli forniti (come install-amd64-minimal.iso.DIGESTS). Si pu controllare il checksum con lo strumento md5sum sotto Linux/Unix o con md5sum per Windows. Un altro modo di controllare la validit del file scaricato di utilizzare GnuPG per verificare la

firma che viene fornita insieme ad esso. (il file con estensione .asc). Scaricare il file con la firma e procurarsi la chiave pubblica: Codice 3.1: Ottenere la chiave pubblica$ gpg --keyserver subkeys.pgp.net --recv-keys 2D182910

Verificare la firma: Codice 3.2: Verificare i file(Verificare la firma crittografata) $ gpg --verify (Verificare il checksum) $ sha1sum -c

Per masterizzare l'immagine ISO scelta necessario scegliere la modalit RAW. Come impostarla dipende dal programma: seguono le istruzioni per cdrecord e K3B; ulteriori informazioni possono essere reperite nelle Domande frequenti su Gentoo. Con cdrecord, scrivere semplicemente cdrecord dev=/dev/hdc (dove /dev/hdc la periferica del masterizzatore) Con K3B, selezionare Tools > Burn CD Image (Strumenti > Scrivi immagine CD se localizzato in italiano, ndt). Si pu individuare il file ISO nell'area 'Image to Burn' ('Immagine da scrivere', ndt). Poi cliccare suStart (Avvia, ndt). Avviare i CD di Installazione Una volta masterizzati i CD di installazione tempo di avviare. Riavviare il sistema ed entrare nel BIOS, di solito premendo i tasti DEL, F1 o ESC a seconda della marca del BIOS. All'interno del BIOS cambiare l'ordine del boot in modo tale che il CD-ROM preceda l'hard disk. Spesso questa opzione si trova sotto "CMOS Setup". Nella maggior parte dei casi saltare questo passo porta a non poter bootare direttamente da CD. Inserire il CD di installazione nel lettore CD-ROM e riavviare il sistema. Dovrebbe comparire una graziosa schermata con il logo di Gentoo Linux. A questo punto, premendo invio possibile far partire il processo di boot con le opzioni predefinite oppure far avviare il CD di Installazione con opzioni personalizzate specificando un kernel seguito dalle opzioni desiderate e premendo invio. Vengono forniti diversi kernel sui CD di Installazione. Quello predefinito gentoo. Esistono altri kernel per esigenze hardware specifiche e la variante -nofb che disabilita il framebuffer. Di seguito possibile consultare una breve descrizione per ognuno dei kernel disponibili: Descrizione Kernel predefinito con supporto per CPU K8 con NUMA ed gentoo EM64T gentoo-nofb Come gentoo ma senza supporto framebuffer memtest86 Avvia un controllo della memoria RAM possibile anche selezionare opzioni per il kernel. Si tratta di direttive particolari che possono essere attivate o meno a piacere. Opzioni hardware: acpi=on Carica il supporto per ACPI e attiva l'avvio del demone insieme al CD. L'opzione necessaria solo se il sistema necessita di ACPI per funzionare correttamente. Non necessario per il supporto Hyperthreading. acpi=off Disabilita completamente ACPI. utile su alcuni sistemi un po' datati ed prerequisito per utilizzare APM. L'opzione disabilita il supporto Hyperthreading del processore. console=X Imposta una console seriale per il CD. La prima opzione la periferica, di solito ttyS0 su Kernel

x86, seguita da ulteriori opzioni di connessione, separate da virgola. Le opzioni predefinite sono 9600,8,n,1. dmraid=X Consente il passaggio di opzioni al sistema device-mapper RAID. Le opzioni devono essere passate tra virgolette. doapm Carica il driver APM. prerequisito che sia impostato acpi=off. dopcmcia Carica il supporto per hardware PCMCIA e Cardbus e imposta l'avvio automatico sul CD del pcmcia cardmgr. richiesto solo quando si sta effettuando il boot da periferiche PCMCIA/Cardbus. doscsi Carica il supporto per la maggior parte di controller SCSI. prerequisito per effettuare il boot da molte periferiche USB, visto che utilizzano il supporto SCSI del kernel. sda=stroke Consente di partizionare l'intero disco fisso anche quando il BIOS non in grado di vedere dischi grandi. Questa opzione viene usata solo su macchine con BIOS vecchio. Sostituire sda con la periferica che richiede l'opzione. ide=nodma Forza a disabilitare il DMA nel kernel ed necessario per alcuni chipset IDE e alcuni lettori CDROM. Se il sistema ha problemi a leggere dal CDROM possibile provare quest'opzione. Disabilita inoltre le impostazioni predefinite di hdparm. noapic Disabilita l'Advanced Programmable Interrupt Controller che presente sulle schede madri pi recenti. Sembra che abbia alcuni problemi con hardware pi vecchio nodetect Disabilita tutta la fase di rilevazione da parte del CD, tra cui la rilevazione delle periferiche e il DHCP. utile per il debugging di un CD o un driver non funzionante nodhcp Disabilita la ricerca DHCP per le interfacce di rete rilevate. Utile per le reti con indirizzi IP statici. nodmraid Disabilita il supporto per il device-mapper RAID, come quello usato per il controller IDE/SATA RAID onboard nofirewire Disabilita il caricamento dei moduli Firewire. Dovrebbe essere necessario solo se l'hardware Firewire causa di problemi in fase di boot nogpm Disabilita il mouse in console via gpm nohotplug Disabilita l'esecuzione degli script hotplug e coldplug al boot. Utile per il debug di un driver o un CD difettoso. nokeymap Disabilita la selezione della keymap per configurazioni non US. nolapic Disabilita l'APIC locale su kernel monoprocessore. nosata Disabilita il caricamento dei moduli Serial ATA. Da usare se il proprio sistema ha problemi con il sottosistema SATA. nosmp Disabilita SMP, il Symmetric Multiprocessing, su kernel che lo supportano. utile per il debug di problemi SMP per specifiche schede madri e driver. nosound Disabilita il supporto per il suono e il volume. Utile nei casi in cui il suono causa problemi.

nousb Disabilita il caricamento automatico dei moduli USB, utile per il debug di problemi con USB slowusb Aggiunge pause extra nel processo di boot per CDROM USB lenti, come quelli contenuti nei BladeCenter di IBM. Gestione dei Volumi e delle periferiche: doevms Abilita il supporto per l'EVMS di IBM, conosciuto anche come Enterprise Volume Management System. Non consigliato per l'utilizzo con lvm. dolvm Abilita il supporto per il Logical Volume Management di Linux. Da non abilitarsi con evms. Altre opzioni: debug Abilita la modalit di debug. L'opzione pu confondere in quanto provoca la visualizzazione di grosse quantit di testo a video. docache Produce l'archiviazione in cache dell'intera parte runtime del CD in RAM, in modo da consentire di smontare /dev/cdrom e montarne un altro. L'opzione richiede di avere almeno il doppio della RAM rispetto alla dimensione del CD. doload=X Consente al ramdisk iniziale di caricare tutti i moduli elencati oltre alle dipendenze. Sostituire X con il nome del modulo. Possono essere specificati diversi moduli separati da virgola. dossh Avvia sshd al boot, utile per installazioni non presidiate. passwd=foo Imposta la password di root al valore specificato dopo il segno di uguale, richiesto da sshd in quanto la password viene offuscata. noload=X Impedisce al ramdisk iniziale il caricamento di un modulo specifico che potrebbe causare problemi. La sintassi la medesima di doload. nonfs Disabilita l'avvio di portmap/nfsmount al boot. nox Impedisce ai LiveCD con X di caricare l'interfaccia grafica e propone direttamente l'interfaccia testuale. scandelay Forza il CD a effettuare pause di 10 secondi durante alcune parti del processo di boot per consentire alle periferiche lente di caricarsi correttamente. scandelay=X Consente di specificare un adeguato ritardo in secondi da aggiungere in alcune parti del processo di boot per consentire alle periferiche lente di caricarsi correttamente. Sostituire X con il numero di secondi di pausa. Nota: Il CD controller le opzioni "no*" prima di quelle "do*", si avr cos il modo di sovrascrivere qualsiasi opzione nell'esatto ordine impartito. Adesso possibile avviare il CD selezionando il kernel (se non si vuole utilizzare quello predefinito) e le opzioni di boot. Ad esempio ecco come avviare il kernel gentoo, con il parametro dopcmcia: Codice 3.3: Avviare un CD di Installazione

boot: gentoo dopcmcia

Si dovrebbe presentare ora un altra schermata con una barra che indica lo svolgersi delle operazioni. Se si sta installando Gentoo su un sistema privo di tastiera statunitense, assicurarsi di premere Alt-F1 per passare alla modalit testuale e seguire le operazioni. Se non viene selezionato nulla, dopo 10 secondi viene automaticamente scelta la tastiera statunitense ed il boot continua. Una volta completato il processo di boot si automaticamente nell'ambiente Live di Gentoo come "root", l'utente amministratore. Ci dovrebbe essere un prompt di root a schermo ("#") e dovrebbe essere possibile passare ad altre console premendo Alt-F2, Alt-F3 e Alt-F4 e tornare alla precedente premendo Alt-F1. Continuare ora con la configurazione dell'hardware aggiuntivo. Configurazione dell'hardware aggiuntivo Al momento del boot il CD prova a rilevare tutte le periferiche hardware e caricare i corrispondenti moduli del kernel di supporto. Nella grande maggior parte dei casi l'operazione va a buon fine. A volte per potrebbero non essere caricati tutti i moduli necessari. Se la rilevazione automatica PCI ha saltato qualche periferica, necessario caricare manualmente il modulo corrispondente. Nel seguente esempio si prova a caricare il modulo 8139too (che supporta un certo tipo di interfacce di rete): Codice 3.4: Caricamento dei moduli del kernel# modprobe 8139too

Opzionale: Account utente Se si pensa di dare accesso ad altri al proprio ambiente di installazione o si desidera chattare usando irssi senza i privilegi di amministrazione per motivi di sicurezza, necessario creare gli opportuni account utente e cambiare la password di root. Per cambiare la password di root utilizzare l'utilit passwd: Codice 3.5: Cambiare la password di root# passwd New password: (Inserire la nuova password) Re-enter password: (Inserire nuovamente la nuova password)

Per creare un account utente necessario inserire i suoi dati seguiti dalla sua password. possibile utilizzare useradd e passwd per farlo, come mostra il prossimo esempio in cui si crea l'utente "john". Codice 3.6: Creare un account utente# useradd -m -G users john # passwd john New password: (Inserire la password di john) Re-enter password: (Inserire nuovamente la password di john)

possibile dunque cambiare utente da root al nuovo utente tramite su: Codice 3.7: Cambiare utente# su - john

Opzionale: Consultare la documentazione durante l'installazione Se si desidera visualizzare il manuale Gentoo durante l'installazione, bisogna assicurarsi di aver creato un account utente (consultare la sezione Opzionale: Account utente), premere poi Alt-F2 per passare ad un nuovo terminale ed inserire le credenziali. possibile leggere il manuale usando links, ma solo dopo aver completato le fasi descritte nel capitolo riguardante la Configurazione di rete (in caso contrario potrebbe non essere disponibile la connessione): Codice 3.8: Visualizzare la documentazione online# links http://www.gentoo.org/doc/it/handbook/handbook-amd64.xml

ora possibile tornare al terminale originale premendo Alt-F1.

Opzionale: Avviare un demone SSH Se si desidera consentire ad altri utenti l'accesso al pc durante l'installazione di Gentoo (magari perch qualcuno di essi potrebbe essere di aiuto o addirittura condurre personalmente l'installazione), necessario creare un account per ciascuno di essi o condividere con loro la password di root (solo se si confida pienamente in tale utente). Per avviare il demone SSH, eseguire il seguente comando: Codice 3.9: Avviare il demone SSH# /etc/init.d/sshd start

Per utilizzare sshd per prima necessario configurare la rete. Passare ora al capitolo riguardante la Configurazione della rete.

3. Configurazione della rete3.a. Rilevamento automatico della rete Potrebbe gi funzionare Se il sistema collegato ad una rete Ethernet attraverso un server DHCP, molto probabile che la configurazione di rete sia gi stata completata automaticamente. In questo caso gi possibile usufruire dei vari comandi di rete inclusi nel CD di Installazione quali ssh, scp, ping, irssi, wget, links e molti altri. Se la rete gi stata configurata il comando /sbin/ifconfig dovrebbe elencare alcune interfacce di rete oltre a lo, come ad esempio eth0: Codice 1.1: Output di /sbin/ifconfig per una configurazione corretta# /sbin/ifconfig (...) eth0 Link encap:Ethernet HWaddr 00:50:BA:8F:61:7A inet addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::50:ba8f:617a/10 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1498792 errors:0 dropped:0 overruns:0 frame:0 TX packets:1284980 errors:0 dropped:0 overruns:0 carrier:0 collisions:1984 txqueuelen:100 RX bytes:485691215 (463.1 Mb) TX bytes:123951388 (118.2 Mb) Interrupt:11 Base address:0xe800

Opzionale: Configurare i Proxy

Se l'accesso a Internet avviene attraverso un proxy, si potrebbe aver bisogno di configurare i parametri del proxy durante l'installazione. E' molto facile definire un proxy: basta definire una variabile che contiene le informazioni del server proxy. Nella maggior parte dei casi, si definisce la variabile usando l'hostname del server. Ad esempio, si assuma che il proxy sia chiamato proxy.gentoo.org e che la porta sia la 8080. Codice 1.2: Definire i server proxy(Se il proxy filtra il traffico HTTP) # export http_proxy="http://proxy.gentoo.org:8080" (Se il proxy filtra il traffico FTP) # export ftp_proxy="ftp://proxy.gentoo.org:8080" (Se il proxy filtra il traffico RSYNC) # export RSYNC_PROXY="rsync://proxy.gentoo.org:8080"

Se il proxy richiede una username e una password, si dovrebbe usare la seguente sintassi per la variabile: Codice 1.3: Aggiungere username/password alla variabile del proxyhttp://username:[email protected]:8080

Testare la Rete

Potrebbe essere utile fare il ping sul server DNS dell'ISP (si pu trovare in /etc/resolv.conf) e su un sito Web a scelta, per assicurarsi che i pacchetti stiano raggiungendo la rete, che la risoluzione dei domi di dominio stia funzionando correttamente,

eccetera. Codice 1.4: Ulteriore test della rete# ping -c 3 www.gentoo.org

La rete funzionante? Se cos, si pu saltare il resto di questa sezione e continuare con la Preparazione dei Dischi. Se non cos, sfortunatamente, si deve proseguire in altro modo. 3.b. Configurazione Automatica della Rete Se la rete non funziona immediatamente, alcune modalit di installazione permettono di usare net-setup (per le reti normali o wireless) o pppoe-setup (per gli utenti ADSL) o pptp (per gli utenti PPTP, disponibile solo per sistemi x86, amd64, alpha, ppc e ppc64). Se la modalit di installazione non prevede nessuno di questi strumenti o la rete non funziona ancora, continuare con la Configurazione Manuale della Rete. I normali utenti Ethernet dovrebbero continuare con Predefinito: Usare net-setup Gli utenti ADSL dovrebbero continuare con Alternativa: Usare PPP Gli utenti PPTP dovrebbero continuare con Alternativa: Usare PPTP Predefinito: Usare net-setup Il modo pi semplice di installare la rete se non configurata automaticamente eseguire lo script net-setup: Codice 2.1: Eseguire lo script net-setup# net-setup eth0

net-setup pone alcune domande sull'ambiente di rete. Al termine si dovrebbe avere una connessione di rete attiva: verificare il collegamento. Se i test sono positivi, congratulazioni! Si pronti per installare Gentoo. Saltare il resto di questa sezione e continuare con la Preparazione dei Dischi. Se la rete ancora non funziona, continuare con la Configurazione Manuale della Rete. Alternativa: Usare PPP Se c' bisogno di PPPoE per connettersi a internet, il CD di Installazione (qualsiasi versione) rende le cose facili perch include ppp. Usare lo script fornito pppoe-setup per configurare la connessione. Viene richiesto di inserire il dispositivo Ethernet che collegato al modem adsl, lo username e la password, gli IP dei server DNS e se si ha bisogno un firewall di base o meno. Codice 2.2: Usare ppp# pppoe-setup # pppoe-start

Se qualcosa andasse storto, ricontrollare di avere digitato correttamente lo username e la password controllando /etc/ppp/pap-secrets o /etc/ppp/chap-secrets e assicurarsi che il dispositivo ethernet che si sta utilizzando sia quello giusto. Se il dispositivo ethernet non esiste, si deve caricare il modulo appropriato di rete. In questo caso si dovrebbe continuare con la Configurazione Manuale della Rete dove si spiega come caricare l'appropriato modulo di rete. Se funziona tutto, continuare con la Preparazione dei Dischi. Alternativa: Usare PPTP Se si ha bisogno del supporto PPTP, si pu usare pptpclient, il quale viene fornito dal CD di Installazione. Prima per bisogna assicurarsi che la configurazione sia corretta. Modificare /etc/ppp/pap-secrets o/etc/ppp/chap-secrets in modo che contenga la corretta combinazione username/password: Codice 2.3: Modificare /etc/ppp/chap-secrets# nano -w /etc/ppp/chap-secrets

Modificare se necessario /etc/ppp/options.pptp: Codice 2.4: Modificare /etc/ppp/options.pptp# nano -w /etc/ppp/options.pptp

Quando si finito, eseguire pptp (con le opzioni che non si possono impostare in options.pptp) per connettere il server: Codice 2.5: Connessione a un server dial-in# pptp

Ora continuare con la Preparazione dei Dischi. 3.c. Configurazione Manuale della Rete Caricare gli Appropriati Moduli di Rete Quando si effettua il boot con il CD di Installazione, quest'ultimo prova a rilevare tutti i dispositivi hardware e carica i moduli (driver) appropriati del kernel per supportare l'hardware. Nella grande maggioranza dei casi, l'operazione ha successo. Tuttavia, in alcuni casi, potrebbe non caricare automaticamente i moduli del kernel di cui si ha bisogno. Se net-setup o pppoe-setup non dessero buoni risultati, si pu di sicuro supporre che la scheda di rete non sia stata trovata immediatamente. Ci significa che necessario caricare gli appropriati moduli del kernel manualmente. Per scoprire quali moduli del kernel sono disponibili per la rete, usare ls: Codice 3.1: Cercare i moduli disponibili# ls /lib/modules/`uname -r`/kernel/drivers/net

Se si trova un driver per la scheda di rete, utilizzare modprobe per caricare il modulo del kernel: Codice 3.2: Utilizzare modprobe per caricare un modulo del kernel(Come esempio, si carica il modulo pcnet32) # modprobe pcnet32

Per controllare se la scheda di rete stata rilevata, eseguire ifconfig. Una scheda di rete rilevata dovrebbe produrre un risultato simile a questo: Codice 3.3: Test della disponibilit della scheda di rete andato a buon fine# ifconfig eth0 eth0 Link encap:Ethernet HWaddr FE:FD:00:00:00:00 BROADCAST NOARP MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

Se invece si riceve il seguente errore, la sheda di rete non rilevata: Codice 3.4: Test della disponibilit della scheda di rete non andato a buon fine# ifconfig eth0 eth0: error fetching interface information: Device not found

Se si possiedono pi schede di rete nel sistema, esse vengono etichettate rispettivamente eth0, eth1, ecc. Assicurarsi che la scheda che si desidera utilizzare sia funzionante e ricordarsi di utilizzare il nome corretto nelle operazioni successive. Nel resto del documento si fa riferimento alla scheda eth0. Una volta rilevata una scheda di rete, si pu eseguire di nuovo net-setup o pppoesetup (che adesso dovrebbero funzionare), ma per i puristi ecco come configurare la rete a mano. Scegliere una delle seguenti sezioni a seconda della propria configurazione: Usare un DHCP per ottenere un IP automaticamente Configurare un accesso Wireless se si dispone di scheda wireless Terminologia di rete illustra ci che necessario conoscere a proposito delle tecnologie

di rete Usare ifconfig e route spiega come impostare la rete manualmente Usare un DHCP Il DHCP (Dynamic Host Configuration Protocol) rende possibile ricevere automaticamente le informazioni sulla rete (indirizzo IP, netmask, indirizzo broadcast, gateway, nameserver ecc.). Funziona soltanto se si ha un server DHCP nella rete (o se il provider fornisce un servizio DHCP). Per avere una interfaccia di rete che riceva queste informazioni automaticamente, utilizzare dhcpcd: Codice 3.5: Utilizzo di dhcpcd# dhcpcd eth0 Alcuni amministratori di rete richiedono di utilizzare gli hostname e nomi di dominio forniti dal server DHCP. Nel caso utilizzare # dhcpcd -HD eth0

Se funziona (provare a pingare alcuni server internet, come Google), allora stato tutto configurato e si pronti per continuare. Saltare il resto di questa sezione e continuare con la Preparazione dei Dischi. Configurare un accesso Wireless Nota: Il comando iwconfig disponbile solo sui CD di Installazione per x86, amd64 e ppc. Se il CD non lo contenesse possibile comunque mettere in funzione la periferica seguendo le istruzioni del linux-wlan-ng project. Se si sta utilizzando una scheda wireless (802.11), potrebbe essere necessario configurare i parametri wireless prima di continuare. Per visualizzare gli attuali parametri wireless della propria scheda possibile utilizzareiwconfig. una esecuzione di iwconfig dovrebbe produrre un risultato simile al seguente: Codice 3.6: Visualizzazione dei parametri wireless# iwconfig eth0 eth0 IEEE 802.11-DS ESSID:"GentooNode" Mode:Managed Frequency:2.442GHz Access Point: 00:09:5B:11:CC:F2 Bit Rate:11Mb/s Tx-Power=20 dBm Sensitivity=0/65535 Retry limit:16 RTS thr:off Fragment thr:off Power Management:off Link Quality:25/10 Signal level:-51 dBm Noise level:-102 dBm Rx invalid nwid:5901 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:237 Invalid misc:350282 Missed beacon:84

Nota: Alcune schede possono avere un nome come wlan0 o ra0 invece che eth0. E' possibile eseguire iwconfig senza parametri per visualizzare il nome esatto della periferica. Per la maggior parte degli utenti sono solo due i parametri importanti da impostare, l'ESSID (il nome della rete wireless) e la chiave WEP. Se l'ESSID e l'indirizzo dell'access point visualizzati sono corretti e non si utilizza WEP, la configurazione completa e funzionante. Se invece necessario cambiare ESSID o aggiungere una chiave WEP necessario eseguire i seguenti comandi: Nota: Se la propria rete wireless configurata con WPA o WPA2, bisogner usare wpa_supplicant. Per maggiori informazioni su come configurare le funzionalit di rete wireless in Gentoo Linux, leggere il capitolo Reti Wireless nel Manuale Gentoo. Codice 3.7: Cambiare ESSID o aggiungere una chiave WEP(Il comando imposta l'ESSID a "GentooNode") # iwconfig eth0 essid GentooNode (Imposta una chiave WEP esadecimale) # iwconfig eth0 key 1234123412341234abcd (Imposta una chiave ASCII preceduta da "s:") # iwconfig eth0 key s:some-password

Ora possibile confermare le proprie impostazioni utilizzando iwconfig. Una volta che la rete wireless funzionante possibile continuare a configurare le impostazioni del livello IP descritte nella sezione successiva (Terminologia di rete) o utilizzare net-setup come descritto

in precedenza. Terminologia di Rete Nota: Se si conosce l'indirizzo IP, l'indirizzo broadcast, netmask e nameserver, allora si pu saltare questa sottosezione e continuare con la sezione su come Usare ifconfig e route. Se i tentativi precedenti falliscono, necessario configurare la rete manualmente. Non si deve aver paura, non difficile. Ma necessario spiegare un po' di concetti riguardanti la rete per potere essere capaci di configurarla correttamente. Questo paragrafo illustra brevemente cosa sia un gateway, a cosa serva la netmask, come sia formato un indirizzo broadcast e perch ci sia bisogno dei nameserver. In una rete, gli host sono identificati dai loro indirizzi IP (indirizzi Internet Protocol). Un indirizzo una combinazione di 4 numeri tra 0 e 255. Almeno cos lo percepiamo. In realt, un indirizzo IP consiste di 32 bit (1 e 0). Ecco un esempio: Codice 3.8: Esempio di un indirizzo IPIP Address (numbers): IP Address (bit): 192.168.0.2 11000000 10101000 00000000 00000010 -------- -------- -------- -------192 168 0 2

Un indirizzo IP deve essere unico per ogni host perch le reti siano accessibili (in pratica tutti gli host che si possono raggiungere devono avere un indirizzo IP unico). Per potere fare una distinzione tra host dentro una rete, e host fuori una rete, l'indirizzo IP diviso in due parti: la parte di network e la parte di host. La separazione demarcata tramite la netmask, un insieme di 1 seguito da un insieme di 0. La parte di IP corrispondente agli 1 la parte di network, l'altra la parte di host. Di solito, la netmask pu essere scritta come un indirizzo IP. Codice 3.9: Esempio della separazione network/hostIP-address: Netmask: 192 168 0 2 11000000 10101000 00000000 00000010 11111111 11111111 11111111 00000000 255 255 255 0 +--------------------------+--------+ Network Host

In altre parole, 192.168.0.14 fa ancora parte della rete dell'esempio, ma 192.168.1.2 no. L'indirizzo broadcast un indirizzo IP con la stessa parte di network, ma con solo una parte di host. Ogni host sulla rete ascolta questo indirizzo IP. Serve per i pacchetti di broadcast. Codice 3.10: Indirizzo broadcastIP-address: 192 168 0 2 11000000 10101000 00000000 00000010 Broadcast: 11000000 10101000 00000000 11111111 192 168 0 255 +--------------------------+--------+ Network Host

Per potere navigare su internet, necessario sapere quale host condivida la connessione a Internet. Questo host chiamato gateway. E' un normale host ed ha un normale indirizzo IP (per esempio 192.168.0.1). In precedenza si detto che ogni host ha il suo indirizzo IP. Per potere raggiungere questo host tramite un nome (anzich un indirizzo IP) necessario un servizio che traduce un nome (come dev.gentoo.org) in un indirizzo IP (come 64.5.62.82). Questo servizio chiamato name service. Per utilizzarlo si deve definire il nameserver in /etc/resolv.conf. In alcuni casi, il gateway serve come nameserver. Altrimenti si dovr inserire il nameserver fornito dall'ISP. Per riassumere, si ha bisogno delle seguenti informazioni prima di continuare: Elemento di rete Esempio Indirizzo IP 192.168.0.2

Netmask Broadcast Gateway Nameserver(s) Usare ifconfig e

255.255.255.0 192.168.0.255 192.168.0.1 195.130.130.5, 195.130.130.133 route

Installare la rete consiste di tre passi. Nel primo si assegna l'indirizzo IP con ifconfig. Nel secondo si configura il routing verso gateway con route. Nel terzo infine si inserisce l'IP dei nameserver in /etc/resolv.conf. Per assegnare un indirizzo IP, si avr bisogno dell'indirizzo IP da assegnare, dell'indirizzo broadcast e della netmask. Eseguire il seguente comando, sostituendo ${IP_ADDR} con l'indirizzo IP, ${BROADCAST} con l'indirizzo broadcast e ${NETMASK} con la netmask: Codice 3.11: Usare ifconfig# ifconfig eth0 ${IP_ADDR} broadcast ${BROADCAST} netmask ${NETMASK} up

Ora installare il routing con route. Sostituire ${GATEWAY} con l'indirizzo IP del gateway: Codice 3.12: Usare route# route add default gw ${GATEWAY}

Aprire /etc/resolv.conf con un editor qualsiasi (per esempio nano): Codice 3.13: Creare /etc/resolv.conf# nano -w /etc/resolv.conf

Inserire i nameserver secondo il seguente esempio. Assicurarsi di sostituire $ {NAMESERVER1} e ${NAMESERVER2} con gli appropriati indirizzi dei nameserver: Codice 3.14: Esempio di /etc/resolv.confnameserver ${NAMESERVER1} nameserver ${NAMESERVER2}

Testare la rete con il ping di alcuni server Internet (come Google). Se funziona, congratulazioni, si pronti per installare Gentoo. Continuare con la Preparazione dei Dischi.

4. Preparazione dei dischi4.a. Introduzione ai dispositivi a blocchi Dispositivi a blocchi Si d ora un'occhiata approfondita agli aspetti relativi ai dischi in Gentoo Linux e in Linux in generale, tra cui i filesystem Linux, le partizioni e i dispositivi a blocchi. Quindi, una volta acquisita familiarit con i dischi e i filesystem, si viene guidati attraverso il processo di configurazione delle partizioni e dei filesystem per l'installazione di Gentoo Linux. Per cominciare, si introducono i dispositivi a blocchi. Il dispositivo a blocchi pi famoso probabilmente quello che rappresenta la prima unit IDE in un sistema Linux, /dev/sda. I dischi SCSI e Serial ATA vengono entrambi etichettati come /dev/sd*; anche i dischi IDE sono etichettati come /dev/sd* con il nuovo framework libata nel kernel. Se si sta usando un vecchio framework per le periferiche, allora il primo disco IDE sar /dev/hda. I dispositivi a blocchi rappresentano un'interfaccia astratta ai dischi. I programmi utente possono usare questi dispositivi a blocchi per interagire con i dischi, senza doversi chiedere se si tratta di unit IDE, SCSI o di qualsiasi altro tipo. Il programma pu semplicemente indirizzare la memorizzazione su disco attraverso dei blocchi contigui, accessibili in modalit casuale, e di dimensione pari a 512 byte ciascuno. Partizioni Nonostante sia possibile usare un intero disco per il sistema Linux, ci non quasi mai messo in pratica. Invece, i dispositivi a blocchi del disco sono divisi in parti pi piccole e pi maneggevoli. Sui sistemi AMD64 queste parti sono chiamate partizioni.

Le partizioni sono divise in tre tipi: primarie, estese e logiche. Una partizione primaria una partizione che ha le sue informazioni memorizzate nel MBR (master boot record). Poich MBR molto piccolo (512 byte), possono essere definite solo quattro partizioni primarie (per esempio, da/dev/sda1 a /dev/sda4). Una partizione estesa una speciale partizione primaria (cio deve essere una delle quattro), che contiene altre partizioni. In origine non esisteva una tale partizione, ma poich quattro partizioni erano troppo poche, stata data la possibilit di estendere lo schema di formattazione senza perdere la compatibilit. Una partizione (volume) logica una partizione compresa dentro la partizione estesa. Le informazioni di una partizione logica non sono posizionate nel MBR, ma sono dichiarate nella partizione estesa. Memorizzazione avanzata dei dati I CD di Installazione AMD64 forniscono anche il supporto per EVMS e LVM2. EVMS e LVM2 aumentano la flessibilit della propria configurazione di partizioni. Durante le istruzioni di installazione ci si concentra sulle partizioni tradizionali ma opportuno sapere che anche EVMS e LVM2 sono supportati. 4.b. Impostare uno schema di partizionamento Schema di partizionamento predefinito Se non si interessati a elaborare uno schema di partizionamento per il sistema, si pu usare quello di questo Manuale: Partizione Filesystem Grandezza Descrizione /dev/sda1 ext2 32M Partizione di boot /dev/sda2 (swap) 512M Partizione swap Resto dello spazio su /dev/sda3 ext3 Partizione root disco Se si interessati ad avere informazioni su quanto dovrebbe essere grande una partizione primaria (o volume logico), o anche su quante partizioni si ha bisogno, seguono alcuni suggerimenti. Altrimenti continuare con ilpartizionamento del disco. Numero e dimensione delle partizioni Il numero delle partizioni dipende fortemente dal proprio ambiente. Per esempio, se si hanno molti utenti su una stessa macchina, molto probabilmente si desidera tenere separate le directory /home, aumentando cos la sicurezza e rendendo pi facile il backup. Se si sta installando Gentoo per utilizzarlo come mailserver, /var dovrebbe essere separata poich tutta la posta viene memorizzata in essa. Una buona scelta del filesystem quella che massimizza le prestazioni. I gameserver bene che abbiano una partizione separata per /opt, visto che la maggior parte dei server di gioco sono installati l. La stessa cosa vale per /home: sicurezza e backup. E' importante che/usr sia grande a sufficienza, perch contiene oltre a tutte le applicazione anche l'archivio di Portage che occupa da solo 500MB, esclusi i sorgenti. Come si visto, molto dipende da cosa si desidera realizzare. Partizioni o volumi separati hanno i seguenti vantaggi: Si pu scegliere il filesystem con maggiori prestazioni per ogni partizione o volume L'intero sistema non pu esaurire lo spazio libero se uno strumento malfunzionante scrive all'infinito su una partizione od un volume Nel caso si rendano necessari, i controlli sul filesystem sono ridotti, poich possono essere condotti in parallelo diverse analisi (questo vantaggio pi per i dischi multipli che per le partizioni multiple)

La sicurezza pu essere aumentata montando alcune partizioni o volumi in sola lettura, nosuid (i bit setuid vengono ignorati), noexec (i bit executable sono ignorati) etc. Le partizioni multiple hanno per un grosso svantaggio: se non sono configurate correttamente, si potrebbe avere un sistema con molto spazio libero su una partizione e poco su un'altra. Inoltre per i dispositivi SCSI e SATA c' il limite di 15 partizioni. Come esempio di partizionamento, ecco quello di un disco da 20Gb, usato come un laptop di dimostrazione (contenente webserver, mailserver, gnome, ...): Codice 2.1: Esempio di uso del filesystem$ df -h Filesystem Type Size Used Avail Use% Mounted on /dev/sda5 ext3 509M 132M 351M 28% / /dev/sda2 ext3 5.0G 3.0G 1.8G 63% /home /dev/sda7 ext3 7.9G 6.2G 1.3G 83% /usr /dev/sda8 ext3 1011M 483M 477M 51% /opt /dev/sda9 ext3 2.0G 607M 1.3G 32% /var /dev/sda1 ext2 51M 17M 31M 36% /boot /dev/sda6 swap 516M 12M 504M 2% (Spazio non partizionato per uso futuro: 2 Gb)

/usr quasi pieno (83% dello spazio gi in uso), ma una volta installato tutto il software, non cresce molto. Sebbene allocare diversi GigaByte per /var possa sembrare eccessivo opportuno ricordare che Portage utilizza questa locazione per compilare i pacchetti. Se si desidera mantenere /var su una dimensione ragionevole di 1GB necessario modificare la variabile PORTAGE_TMPDIR in /etc/make.conf in modo da farla puntare ad una partizione grande a sufficienza per compilare grossi software, quali OpenOffice. 4.c. Usare fdisk per partizionare il disco La parte seguente spiega come creare lo schema di partizione di esempio descritto precedentemente: Partizione Descrizione /dev/sda1 Partizione di boot /dev/sda2 Partizione swap /dev/sda3 Partizione root Cambiare le partizioni in base alle proprie impostazioni. Vedere la disposizione delle partizioni fdisk uno strumento popolare e potente per dividere il disco in partizioni. Eseguire fdisk per il disco (nell'esempio si usa /dev/sda): Codice 3.1: Eseguire fdisk# fdisk /dev/sda

Si visualizzer un prompt come questo: Codice 3.2: Prompt di fdiskCommand (m for help):

Digitare p per visualizzare le attuali partizioni presenti sul disco: Codice 3.3: Un esempio di partizionamentoCommand (m for help): p Disk /dev/sda: 240 heads, 63 sectors, 2184 cylinders Units = cylinders of 15120 * 512 bytes Device Boot /dev/sda1 * /dev/sda2 /dev/sda3 /dev/sda4 /dev/sda5 /dev/sda6 Start 1 15 50 71 71 210 End 14 49 70 2184 209 348 Blocks Id 105808+ 264600 158760 15981840 1050808+ 1050808+ System 83 Linux 82 Linux swap 83 Linux 5 Extended 83 Linux 83 Linux

/dev/sda7 /dev/sda8 /dev/sda9

349 627 905

626 904 2184

2101648+ 2101648+ 9676768+

83 83 83

Linux Linux Linux

Command (m for help):

Questo disco configurato per avere sette filesystem Linux (chiamati "Linux" nelle corrispondenti partizioni) e una partizione swap (chiamata "Linux swap"). Rimuovere tutte le partizioni Si procede ora alla rimozione dal disco di tutte le partizioni esistenti. Digitare d per eliminare una partizione. Per esempio, per eliminare /dev/sda1: Codice 3.4: Eliminare una partizioneCommand (m for help): d Partition number (1-4): 1

E' stata memorizzata l'eliminazione della partizione. Non verr pi visualizzata se si digiter p, ma non sar eliminata fino a quando non si salveranno i cambiamenti. Se si commesso un errore e si vuole uscire senza salvare, digitare q e invio e la partizione non verr rimossa. Ora, se si desidera effettivamente eliminare tutte le partizioni sul sistema, digitare p per visualizzare l'elenco delle partizioni, e poi digitare d seguito dal numero della partizione, per eliminarle. Il risultato una tabella con nessuna partizione: Codice 3.5: Tabella con nessuna partizioneDisk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot Start End Blocks Id System

Command (m for help):

Ora che la tabella vuota, si pronti a creare le partizioni. Come esempio, si fa riferimento allo schema di partizionamento visto precedentemente: non si deve seguire queste istruzioni alla lettera se non si desidera implementare lo stesso schema. Creare la partizione di boot Per prima cosa, creare una piccola partizione di boot. Digitare n per creare una nuova partizione, poi p per selezionare una partizione primaria, seguito da 1 per selezionare la prima partizione primaria. Quando si visualizza il prompt per il primo cilindro, premere enter. Quando si visualizza il prompt per l'ultimo cilindro, digitare +32M per creare una partizione di 32 Mbyte ed impostarla come avviabile. Codice 3.6: Creare la partizione di bootCommand (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-3876, default 1): (Premere Enter) Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-3876, default 3876): +32M

Quando si digita p, si dovrebbe vedere la seguente partizione: Codice 3.7: Partizione di boot creataCommand (m for help): p Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot /dev/sda1 Start 1 End 14 Blocks 105808+ Id 83 System Linux

E' necessario rendere questa partizione avviabile. Digitare a e selezionare 1 per rendere avviabile questa partizione. Se si preme di nuovo p, si noter che un * stato posto nella colonna "Boot". Creare la partizione swap Si procede ora alla creazione della partizione swap. Per farlo, digitare n per creare una nuova partizione, poi p per dire a fdisk che si desidera creare una partizione primaria. Digitare 2 per creare la seconda partizione primaria,/dev/sda2. Quando si visualizza il prompt per il primo cilindro, premere invio. Quando si visualizza il prompt per l'ultimo cilindro, digitare +512M per creare una partizione di 512MB. Dopo aver fatto questo, digitare t per impostare il tipo di partizione, 2 per selezionare la partizione che si creata e infine 82 per impostare il tipo di partizione a "Linux Swap". Finiti questi passaggi, digitando p si dovrebbe avere una tabella partizionata simile a questa: Codice 3.8: Elenco delle partizioni dopo aver creato la partizione swapCommand (m for help): p Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot /dev/sda1 * /dev/sda2 Start 1 15 End 14 81 Blocks 105808+ 506520 Id 83 82 System Linux Linux swap

Creare la partizione root Si procede ora alla creazione della partizione root. Digitare n per creare una nuova partizione, poi p per dire a fdisk che si vuole una partizione primaria. Digitare 3 per creare la terza partizione primaria, /dev/sda3. Quando si visualizza il prompt per il primo cilindro, premere invio. Quando si visualizza il prompt per l'ultimo cilindro, premere enter per creare una partizione che occupi il resto dello spazio su disco. Infine, digitando p si dovrebbe avere una tabella partizionata simile a questa: Codice 3.9: Elenco delle partizioni dopo aver creato la partizione rootCommand (m for help): p Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot /dev/sda1 * /dev/sda2 /dev/sda3 Start 1 15 82 End 14 81 3876 Blocks 105808+ 506520 28690200 Id 83 82 83 System Linux Linux swap Linux

Salvare lo schema delle partizioni

Per salvare lo schema delle partizioni e uscire da fdisk, digitare w. Codice 3.10: Salvare e uscire da fdiskCommand (m for help): w

Ora che le partizioni sono create, si pu continuare con la sezione riguardante come Creare i filesystem. 4.d. Creare i filesystem Introduzione Ora che le partizioni sono state create, il momento di inserire il filesystem. Se non si interessati alla scelta del filesystem e vanno bene quelli che si usano in modo predefinito in questo Manuale, continuare con la sezione su come Applicare un filesystem ad una partizione. Altrimenti ecco una descrizione dei filesystem disponibili. Filesystem

Sono disponibili diversi filesystem. Alcuni di essi sono giudicati stabili sull'architettura amd64, altri no. I seguenti filesystem sono giudicati stabili: ext2, ext3 e XFS. JFS e ReiserFS potrebbero funzionare ma necessitano di ulteriori test. Se si ritiene di essere veramente audaci possibile provare gli altri filesystem. ext2 il vero e proprio filesystem di Linux ma non possiede il supporto per il metadata journaling, il che significa che le routine che effettuano all'avvio i controlli sul filesystem ext2 possono impiegare diverso tempo. Al momento esiste una scelta abbastanza ampia di filesystem journaled di nuova generazione che sono in grado di effettuare controlli sulla consistenza molto velocemente e sono generalmente preferiti alle controparti non-journaled. I filesystem journaled prevengono i lunghi tempi di attesa che solitamente si riscontrano quando viene riavviato il sistema e il filesystem si trova in uno stato inconsistente. Se si ha intenzione di installare Gentoo su un disco molto piccolo (meno di 4GB), in tal caso si dovr indicare ad ext2 di riservare un numero sufficiente di inode tramite l'esecuzione del comando mke2fs -T small /dev/. ext3 la versione journaled del filesystem ext2, fornisce il metadata journaling per un veloce recupero dei dati in aggiunta ad altre caratteristiche di journaling avanzate come full data e ordered data journaling. Utilizza un indice Htree che abilita alte prestazioni in quasi tutte le situazioni. In breve, ext3 un filesystem davvero molto valido e affidabile, ed raccomandato per qualsiasi sistema e scopo. Se si ha intenzione di installare Gentoo su un disco molto piccolo (meno di 4GB), in tal caso si dovr indicare ad ext3 di riservare un numero sufficiente di inode tramite l'esecuzione del comando mke2fs -j -T small /dev/. JFS il filesystem con journaling ad alte prestazioni di IBM. JFS un filesystem leggero, veloce ed affidabile basato su B+Tree con buone prestazioni in varie condizioni. ReiserFS un filesystem basato su B+tree che offre ottime prestazioni generali, specialmente nella gestione di una grande quantit di piccoli file, al costo di pi cicli di CPU. ReiserFS sembra avere una manutenzione pi ridotta degli altri filesystem. XFS un filesystem con metadata journaling ricco di caratteristiche interessanti e ottimizzato per una forte scalabilit. XFS sembra essere poco tollerante a vari problemi hardware. Applicare un filesystem a una partizione Per creare un filesystem su una partizione o volume, sono disponibili gli strumenti per ogni filesystem possibile: Filesystem Comando per la creazione mke2fs ext2 mke2fs -j ext3 mkreiserfs reiserfs mkfs.xfs xfs mkfs.jfs jfs Per esempio, per avere la partizione di boot (/dev/sda1) ext2 e la partizione root (/dev/sda3) ext3, si usa: Codice 4.1: Applicare un filesystem su una partizione# mke2fs /dev/sda1 # mke2fs -j /dev/sda3

Ora si procede alla creazione dei filesystem sulle partizioni (o volumi logici) create precedentemente. Attivare la partizione swap mkswap il comando usato per inizializzare le partizioni swap: Codice 4.2: Inizializzare la partizione swap# mkswap /dev/sda2

Per attivare la partizione swap, usare swapon: Codice 4.3: Attivare la partizione di swap# swapon /dev/sda2

Creare e attivare lo swap con i comandi illustrati. 4.e. Montare Ora che le partizioni sono inizializzate e hanno un filesystem, il momento di montarle. Usare il comando mount. Non dimenticarsi di creare le necessarie directory di mount. Nell'esempio ecco come montare le partizioni root e boot: Codice 5.1: Montare le partizioni# mount /dev/sda3 /mnt/gentoo # mkdir /mnt/gentoo/boot # mount /dev/sda1 /mnt/gentoo/boot

Nota: Se si vuole che /tmp risieda in una partizione separata, assicurarsi di cambiare i permessi dopo il mount: chmod 1777 /mnt/gentoo/tmp. Questo vale anche per /var/tmp. E' necessario inoltre montare il filesystem proc (una intefaccia virtuale con il kernel) su /proc. Ma prima si devono mettere i file sulle partizioni. Ora continuare con la Copia dei file di installazione di Gentoo.

5. Copia dei file di installazione di Gentoo5.a. Installazione di uno stage Impostare la data e l'ora Prima di continuare necessario controllare la data e l'ora ed aggiornarle. Un orologio impostato male pu portare problemi in futuro. Per visualizzare l'ora e la data attuali eseguire date: Codice 1.1: Verificare la data e l'ora# date Fri Mar 29 16:21:18 UTC 2005

Se la data o l'ora fossero errate, possibile aggiornarle utilizzando il comando date MMDDhhmmCCYY ( dove M il mese, D il giorno, h l'ora, m il minuto, C il secolo e Y l'anno). A questo punto consigliabile impostare l'ora UTC, possibile poi regolare il fuso orario (timezone) in seguito. Ad esempio per impostare la data al 29 marzo 2005 e l'ora alle 16:21: Codice 1.2: Impostare data e ora in UTC# date 032916212005

La scelta Il passo successivo consiste nell'installazione dello stage3 sul sistema. possibile sia scaricare l'archivio tar da internet, sia, se il sistema stato avviato da un CD di Installazione Universale, copiarlo dal disco stesso. Nella maggior parte dei casi lanciare il comando uname -m pu essere utile per capire che tipo di stage necessario utilizzare. I CD minimali ed i LiveDVD di installazione non contengono alcun archivio stage3. 5.b. Predefinito: Scaricare lo stage da Internet Scaricare lo stage Andare al punto sul quale si montato il filesystem (molto probabilmente /mnt/gentoo): Codice 2.1: Andare al punto di mount di Gentoo# cd /mnt/gentoo

Secondo la modalit di installazione, sono disponibili un paio di strumenti per scaricare lo stage. Se si ha links, allora si pu visitare immediatamente la lista dei mirror di Gentoo e scegliere un mirror vicino.

Se non si dispone di links, si dovrebbe poter almeno contare su lynx. Se necessario un proxy, espostare le variabili http_proxy e ftp_proxy: Codice 2.2: Impostare i proxy per lynx# export http_proxy="http://proxy.server.com:port" # export ftp_proxy="http://proxy.server.com:port"

D'ora in poi si suppone che l'utente utilizzi links. Spostarsi nella directory releases/amd64/autobuilds/. Si dovrebbero vedere tutti gli stage disponibili per l'architettura, eventualmente suddivisi in sottodirectory a seconda della sottoarchitettura. Selezionarne uno e premere Dper scaricarlo. Quando si finito, premere Q per chiudere il browser. Codice 2.3: Cercare i mirror con links# links http://www.gentoo.org/main/en/mirrors.xml (Se si necessita di proxy in links:) # links -http-proxy proxy.server.com:8080 http://www.gentoo.org/main/en/mirrors.xml

Assicurarsi di scaricare un archivio stage3, le installazioni con stage1 o stage2 non sono pi supportate. Se si desidera controllare l'integrit dello stage scaricato, usare md5sum e confrontare l'output con il checksum MD5 fornito sul mirror. Ad esempio per controllare la validit di un pacchetto x86: Codice 2.4: Controllare l'integrit di un tarball dello stage# md5sum -c stage3-amd64-.tar.bz2.DIGESTS stage3-amd64-.tar.bz2: OK

Estrazione dello stage

Decomprimere ora lo stage nel sistema. Utilizzare l'utility tar per procedere poich risulta essere il metodo pi facile: Codice 2.5: Estrazione dello stage# tar xvjpf stage3-*.tar.bz2

Assicurarsi di usare le stesse opzioni (xvjpf). La x sta per Estrarre, la v per Verbose e mostra ci che accade nel processo di estrazione (opzionale), la j per Decomprimere con bzip2, la p per Conservare i permessi e la f per denotare che si vuole estrarre un file, non un input standard. Ora si pronti per procedere con la prossima sezione riguardante come Installare Portage. 5.c. Installazione di Portage Estrarre lo snapshot di Portage Ora necessario procedere all'installazione dello snapshot di Portage: si tratta di un archivio che contiene tutto il software che possibile installare con le relative informazioni. Scaricare ed installare uno snapshot di Portage Posizionarsi nella directory in cui si montato il filesystem (di solito /mnt/gentoo): Codice 3.1: Posizionarsi sul punto di mount# cd /mnt/gentoo

Avviare links (o lynx) e recarsi alla lista dei mirror Gentoo. Scegliere poi un mirror vicino ed entrare nella directory snapshots/. Scaricare l'ultimo snapshot di Portage (portagelatest.tar.bz2) selezionando il file e premendo D. Codice 3.2: Visitare la lista dei mirror# links http://www.gentoo.org/main/en/mirrors.xml

Uscire dal browser premendo Q. Al momento si in possesso di uno snapshot di Portage in /mnt/gentoo. Se si desidera verificare l'integrit dello snapshot scaricato, possibile utilizzare il

comando md5sum e confrontarne l'output con il checksum MD5 fornito sul mirror. Codice 3.3: Controllo di integrit su uno snapshot di Portage# md5sum -c portage-latest.tar.bz2.md5sum portage-latest.tar.bz2: OK

Il passo successivo consiste nell'estrarre l'archivio sul filesystem. Digitare il comando esattamente come indicato, l'ultima una C maiuscola, non una c. Codice 3.4: Estrazione dello snapshot di Portage# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr

5.d. Configurare le opzioni di compilazione Introduzione Per ottimizzare Gentoo, si possono impostare alcune variabili che hanno effetto sul comportamento di Portage. Tutte queste variabili possono essere impostate come variabili di ambiente (usando export), ma non in modo permanente. Per mantenere le impostazioni, Portage fornisce il file di configurazione /etc/make.conf. il file da modificare adesso. Nota: Un elenco commentato di tutte le variabili possibili si trova in /mnt/gentoo/usr/share/portage/config/make.conf.example. Ma per una installazione di Gentoo soltanto necessario impostare le variabili che sono menzionate sotto. Utilizzare il proprio editor preferito (in questa guida si usa nano) per poter cambiare le variabili di ottimizzazione che di cui si sta trattando. Codice 4.1: Aprire /etc/make.conf# nano -w /mnt/gentoo/etc/make.conf

Come evidente, il file make.conf.example strutturato in modo molto semplice: le righe commentate iniziano con "#", le altre righe definiscono le variabili, usando la sintassi VARIABILE="valore". Molte di queste variabili vengono trattate in seguito. CFLAGS e CXXFLAGS Le variabili CFLAGS e CXXFLAGS definiscono le opzioni di ottimizzazione per i compilatori C e C++ rispettivamente di gcc. Anche se qui vengono definite in generale, le massime prestazioni si ottengono quando si impostano le variabili separatamente per ogni programma perch ogni programma differente. In make.conf si dovrebbero definire le impostazioni di ottimizzazione che si ritiene possano rendere il sistema pi reattivo in generale. Non mettere impostazioni sperimentali in questa variabile; troppa ottimizzazione pu far funzionare male i programmi (crash, o peggio ancora, malfunzionamento). Non vengono spiegate tutte le possibili opzioni di ottimizzazione. Chi volesse conoscerle, legga il Manuale Online GNU o la pagina di informazioni gcc (info gcc funziona solo su un sistema Linux). Lo stesso filemake.conf.example contiene molti esempi e informazioni da consultare. Una prima impostazione la flag -march= o -mtune= , che specifica il nome dell'architettura. Le possibili opzioni sono descritte nel file make.conf.example (come commenti). Una seconda impostazione la flag -O (o maiuscola, non zero), che specifica la classe di ottimizzazione di gcc. Possibili classi sono s (per ottimizzazioni sulla dimensione), O (per nessuna ottimizzazione), 1, 2 o perfino 3 per ulteriori ottimizzazioni sulla velocit (ogni classe ha le stesse flag di quella precedente, pi alcune aggiuntive). -O2 quanto viene raccomandato come impostazione predefinita. risaputo che l'ottimizzazione -O3 causa gravi problemi se usata a livello globale nel sistema, pertanto si consiglia vivamente di rimanere fermi all'ottimizzazione -O2. Un'altra flag di ottimizzazione molto usata -pipe (vengono usate le 'pipe' piuttosto che i file temporanei, per la comunicazione tra le varie fasi di compilazione). Non ha impatto sul codice generato, ma usa della memoria aggiuntiva. In alcuni sistemi con poca memoria, gcc

potrebbe venire interrotto generando degli errori; in tal caso, non usare questa flag. L'utilizzo di -fomit-frame-pointer (che non tiene il puntatore al frame per funzioni che non ne hanno bisogno) potrebbe avere serie ripercussioni nel caso sia necessario effettuare il debug dell'applicazione. Quando si definiscono CFLAGS e CXXFLAGS, si dovrebbero mettere insieme molte flag di ottimizzazione. I valori predefiniti contenuti nello stage3 che si decompresso dovrebbero essere gi sufficienti. Il seguente solo un esempio: Codice 4.2: Definizione delle variabili CFLAGS e CXXFLAGSCFLAGS="-march=k8 -O2 -pipe" # Gli utenti Intel EM64T usino -march=core2 # Usare le stesse impostazioni per entrambe le variabili CXXFLAGS="${CFLAGS}"

Nota: Si consiglia inoltre di leggere la Guida all'Ottimizzazione della Compilazione per ulteriori informazioni su come le varie opzioni di compilazione possono influenzare il proprio sistema. MAKEOPTS Con MAKEOPTS si definisce quante compilazioni parallele possono essere eseguite durante l'installazione di un pacchetto. Una buona scelta il numero di CPU (o i core della/e CPU) nel sistema pi uno, ma non detto che sia sempre l'impostazione migliore. Codice 4.3: MAKEOPTS per un normale sistema con 1 CPUMAKEOPTS="-j2"

Pronti Aggiornare /mnt/gentoo/etc/make.conf in base alle proprie preferenze, e salvarlo. Si ora pronti per continuare con l'Installazione del sistema base Gentoo.

6. Installazione del sistema base Gentoo6.a. Effettuare il chroot Opzionale: Selezionare i mirror Per scaricare rapidamente i codici sorgenti si raccomanda di selezionare un mirror rapido. Portage cerca in make.conf la variabile GENTOO_MIRRORS ed utilizza i mirror in essa elencati. E' possibile visitare la lista dei mirror e cercare uno o pi mirror vicini, visto che spesso sono i pi rapidi. E' anche possibile utilizzare uno strumento chiamato mirrorselect che fornisce una comoda interfaccia per la seleziona dei mirror preferiti. Codice 1.1: Utilizzo di mirrorselect per la variabile GENTOO_MIRRORS# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf

Una seconda impostazione importante la variabile SYNC di make.conf. La variabile contiene il server rsync che si desidera utilizzare al momento di aggiornare l'albero di Portage, ovverosia la collezione di ebuild e script che contengono tutte le informazioni necessarie a scaricare ed installare il software. Sebbene sia possibile impostare manualmente un server SYNC, mirrorselect pu farlo automaticamente: Codice 1.2: Selezionare un mirror rsync tramite mirrorselect# mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf

Dopo l'esecuzione di mirrorselect consigliabile controllare la correttezza delle impostazioni in /mnt/gentoo/etc/make.conf ! Nota: Se si vuole impostare manualmente un server SYNC in make.conf, consigliabile controllare l'elenco dei server mirror della comunit per individuare quelli geograficamente pi vicini a s. Si raccomanda di sceglierne uno a rotazione, per esempio rsync.us.gentoo.org, piuttosto che sceglierne uno singolo. Questo aiuta a suddividere il carico e fornisce un meccanismo di sicurezza nel caso uno specifico mirror sia offline. Copiare le informazioni del DNS C' ancora una cosa da fare prima di poter entrare nel nuovo ambiente, si devono copiare le

informazioni del DNS in /etc/resolv.conf. Questo passo necessario per fare in modo che la rete funzioni ancora, anche dopo esser entrati nel nuovo ambiente. /etc/resolv.conf contiene i nameserver per la rete. Codice 1.3: Copiare le informazioni del DNS(L'opzione "-L" serve per assicurarsi di non copiare un link simbolico) # cp -L /etc/resolv.conf /mnt/gentoo/etc/

Montare i filesystem /proc e /dev Montare il filesystem /proc su /mnt/gentoo/proc per permettere all'installazione di usare informazioni fornite dal kernel anche dentro l'ambiente in cui si effettuato il chroot; montare poi tramite bind il filesystem /dev. Codice 1.4: Montare /proc e /dev# mount -t proc none /mnt/gentoo/proc # mount -o bind /dev /mnt/gentoo/dev

Entrare nel nuovo ambiente

Adesso che tutte le partizioni sono pronte e che l'ambiente di base installato, arrivato il momento di entrare nel nuovo ambiente di installazione effettuando il chroot. Significa che ci si sposta dall'attuale ambiente di installazione (CD di Installazione o altre modalit di installazione) al sistema di installazione nel proprio sistema (nelle partizioni create). Il chroot costituito di tre parti. Nella prima si cambia root, da / (sul supporto di installazione) a /mnt/gentoo (nelle partizioni create), usando chroot. Nella seconda si crea un nuovo ambiente usando env-update, il quale inizializza le variabili di ambiente. Nella terza si caricano queste variabili in memoria, con source. Codice 1.5: Chroot nel nuovo ambiente# chroot /mnt/gentoo /bin/bash # env-update >> Regenerating /etc/ld.so.cache... # source /etc/profile # export PS1="(chroot) $PS1"

Congratulazioni! Da adesso si dentro Gentoo Linux. Naturalmente la fine dell'installazione lontana, poich mancano ancora alcune sezioni. 6.b. Configurazione di Portage Aggiornare Portage Si procede ora all'aggiornamento di Portage tramite il comando emerge --sync. Codice 2.1: Aggiornare Portage

# emerge --sync (Se si sta usando un terminale lento come alcuni framebuffer o una console seriale si pu utilizza # emerge --sync --quiet

Se si dietro ad un firewall che blocca il traffico rsync possibile usare emerge-webrsync che scarica ed installa una immagine completa di Portage. Se si riceve l'avviso che disponibile una nuova versione di Portage e che si dovrebbe aggiornarlo, necessario eseguire quest'operazione immediatamente tramite il comando emerge --oneshot portage. Scelta del profilo adatto Innanzitutto qualche definizione. Il profilo una parte integrante di ciascun sistema Gentoo. Non solo specifica i valori predefiniti per USE, CFLAGS ed altre impostanti variabili, ma posiziona il sistema all'interno di un certo intervallo di versioni di pacchetti. Il profilo viene mantenuto dagli sviluppatori Gentoo. In precedenza il profilo non doveva essere modificato dall'utente. Tuttavia esistono situazioni in cui pu essere necessario optare per un cambio di profilo.

E' possibile visualizzare l'attuale profilo in uso con il seguente comando: Codice 2.2: Visualizzare il profilo del sistema# eselect profile list Available profile symlink targets: [1] default/linux/amd64/10.0 * [2] default/linux/amd64/10.0/desktop [3] default/linux/amd64/10.0/server

Il profilo predefinito implementa un sistema basato su kernel 2.6. Questa l'impostazione raccomandata, ma anche possibile scegliere un altro profilo. Per alcune architetture sono inoltre disponibili i sottoprofili desktop e server. L'esecuzione di eselect profile list visualizzer tutti i profili disponibili. Dopo aver consultato i vari profili disponibili per la propria architettura, possibile sceglierne uno differente, se lo si desidera. Codice 2.3: Cambiare profilo# eselect profile set 2

Se si desidera avere un ambiente a 64 bit puro, senza applicazioni o librerie a 32 bit, necessario usare un profilo non-multilib. Codice 2.4: Passare ad un profilo non-multilib# eselect profile list Available profile symlink targets: [1] default/linux/amd64/10.0 * [2] default/linux/amd64/10.0/desktop [3] default/linux/amd64/10.0/no-multilib [4] default/linux/amd64/10.0/server (Scegliere il profilo no-multilib) # eselect profile set 3 (Verificare la modifica) # eselect profile list Available profile symlink targets: [1] default/linux/amd64/10.0 [2] default/linux/amd64/10.0/desktop [3] default/linux/amd64/10.0/no-multilib * [4] default/linux/amd64/10.0/server

Nota: Il sottoprofilo developer specifico per operazioni riguardanti lo sviluppo di Gentoo Linux. Non pensato per aiutare a preparare degli ambienti generali di sviluppo. Configurare la variabile USE USE una delle variabili pi potenti che Gentoo fornisce agli utenti. Molti programmi possono essere compilati con o senza il supporto opzionale per certi elementi. Per esempio, alcuni programmi possono essere compilati con il supporto per gtk, o con il supporto per qt. Altri con o senza il supporto per SSL. Alcuni programmi possono essere compilati con il supporto per il framebuffer (svgalib), anzich con quello per X11 (server X). La maggior parte delle distribuzioni compila i propri pacchetti con il maggior numero possibile di supporti, aumentando le dimensioni dei programmi e il tempo di avvio, per non parlare dell'enorme quantit di dipendenze. Con Gentoo si pu definire con quali opzioni un pacchetto deve essere compilato. Questa la funzione di USE. Nella variabile USE si definiscono delle parole chiave (keyword) che vengono poi tradotte in opzioni di compilazione. Per esempio, ssl abilita il supporto ssl nei programmi che lo supportano. -X (notare il trattino davanti) rimuove il supporto per il server X. gnome gtk -kde -qt4 abilita i programmi al supporto gnome (e gtk), ma non a quello kde (e qt), rendendo il sistema ottimizzato per GNOME. Le impostazioni predefinite di USE sono conservate nel file make.defaults del proprio profilo. I file make.defaults si trovano nella directory a cui punta il collegamento /etc/make.profile e in tutte le directory a pari livello. L'impostazione USE che viene utilizzata in modo predefinito la somma di tutte le USE in tutti i file make.defaults. Ci che viene specificato in /etc/make.conf considerato rispetto alle impostazioni

predefinite. Se si aggiunge qualcosa alle impostazioni di USE, lo si aggiunge anche all'elenco predefinito. Se si rimuove qualcosa dalle impostazioni di USE (mettendo un trattino davanti), lo si rimuove anche dall'elenco predefinito (se era nell'elenco). Non si deve cambiare mai nessuna opzione nella directory /etc/make.profile; in quanto essa viene sovrascritta quando si aggiorna Portage. Una descrizione completa di USE si trova nella seconda parte del Manuale Gentoo, Capitolo 1: flag USE. Una descrizione completa sulle flag USE disponibili si trova in /usr/portage/profiles/use.desc. Codice 2.5: Vedere le flag USE disponibili# less /usr/portage/profiles/use.desc (E' possibile muoversi con le frecce ed uscire con 'q')

Come esempio ecco le impostazioni di USE per un sistema basato su KDE, e con il supporto per DVD, ALSA e masterizzazione CD: Codice 2.6: Si apre /etc/make.conf# nano -w /etc/make.conf

Codice 2.7: Impostazioni USEUSE="-gtk -gnome qt4 kde dvd alsa cdr"

Opzionale: Localizzazioni di glibc Di solito su un sistema vengono utilizzate le impostazioni per una o due lingue. E' possibile specificare le lingue di cui si ha bisogno nel file /etc/locale.gen. Codice 2.8: Modificare /etc/locale.gen# nano -w /etc/locale.gen

L'esempio che segue imposta l'utilizzo dell'inglese (Stati Uniti) e tedesco (Germania) con i relativi formati di carattere (come UTF-8): Codice 2.9: Specificare le lingueen_US ISO-8859-1 en_US.UTF-8 UTF-8 de_DE ISO-8859-1 de_DE@euro ISO-8859-15

Il passo successivo consiste nell'esecuzione di locale-gen. Il comando genera il supporto per tutte le lingue specificate nel file /etc/locale.gen. Continuare ora con la Configurazione del Kernel.

7. Configurazione del Kernel7.a. Fuso Orario (Timezone) Innanzitutto necessario selezionare il proprio fuso orario (timezone), in modo che il sistema riconosca in che parte del globo collocato. Individuare il proprio fuso orario in /usr/share/zoneinfo, dopodich copiarlo in/etc/localtime. Si sconsiglia di utilizzare i fusi orari del tipo /usr/share/zoneinfo/Etc/GMT* poich i loro nomi non indicano le zone che ci si aspetterebbe. Per esempio GMT-8 indica GMT+8. Codice 1.1: Abilitare le informazioni sul fuso orario (timezone)# ls /usr/share/zoneinfo (Per esempio GMT:) # cp /usr/share/zoneinfo/GMT /etc/localtime

7.b. Installare i sorgenti Scegliere un Kernel

Il cuore, intorno al quale sono sviluppate tutte le distribuzioni, il Kernel di Linux. E' la parte di software compresa tra i programmi e l'hardware. Gentoo d la possibilit ai suoi utenti di scegliere tra diversi sorgenti del kernel. Una lista completa delle descrizioni dei kernel disponibili, consultabile nella Guida ai Kernel Gentoo.

Per i sistemi basati sull'architettura AMD64 sono disponibili, tra gli altri, i gentoosources (sorgenti del kernel modificati con patch per caratteristiche aggiuntive). Ora possibile dunque scegliere ed installare i sorgenti del kernel tramite emerge. Codice 2.1: Installare un sorgente del kernel# emerge gentoo-sources

Se si d un'occhiata a /usr/src, si dovrebbe vedere un link simbolico chiamato linux, che punta al sorgente del kernel. In questo caso si tratta di gentoo-sources-2.6.34-r1, ma ricordarsi che la versione potrebbe essere diversa: Codice 2.2: Il link simbolico al codice sorgente del kernel# ls -l /usr/src/linux lrwxrwxrwx 1 root

Ora si procede a configurare e compilare il sorgente del kernel. Allo scopo possibile utilizzare genkernel, che compila un kernel generico come quello usato dal CD di Installazione. Si tratta per prima la configurazione "manuale", poich il miglior modo di ottimizzare l'ambiente. Se si desidera configurare il kernel manualmente, continuare con Predefinito: Configurazione manuale. Per chi preferisce usare genkernel, leggere Alternativa: Usare genkernel. 7.c. Predefinito: Configurazione manuale Introduzione La configurazione manuale del kernel spesso considerata la parte pi difficile che ogni utente Linux incontra. Non assolutamente vero: dopo aver configurato un po' di kernel, l'operazione risulta semplice. Una cosa per vera: si deve conoscere il proprio sistema quando si comincia una configurazione manuale del kernel. La maggior parte delle informazioni pu essere raccolta installando pciutils (emerge pciutils) che contienelspci. E' possibile tranquillamente ignorare gli errori di pcilib (ad esempio pcilib: cannot open /sys/bus/pci/devices) che a volte lspci stampa a video. In alternativa anche possibile eseguire lspci dal di fuori dell'ambiente chrootato, in quanto i risultati sono i medesimi. Si pu anche eseguire lsmod per vedere che moduli del kernel usa il CD di Installazione (potrebbe fornire un buon suggerimento su cosa abilitare). Andare nella directory del sorgente del kernel, e digitare make menuconfig per visualizzare un menu di configurazione basato su ncurses. Codice 3.1: Aprire menuconfig# cd /usr/src/linux # make menuconfig

root

12 Oct 13 11:04 /usr/src/linux -> linux-2.6.34-r1

Vengono visualizzate molte sezioni di configurazione. Ecco ora alcune opzioni che devono essere attivate (altrimenti Gentoo non pu funzionare, o non funziona correttamente senza modifiche aggiuntive). Attivare le opzioni indispensabili E' importante verificare che ogni driver necessario al boot della propria macchina (ad esempio il controller SCSI, ..) sia compilato nel kernel e non come modulo. In caso contrario il sistema potrebbe non funzionare correttamente. Selezionare il tipo esatto di processore. Il mantenitore del kernel x86_64 raccomanda gli utenti di abilitare MCE features, in modo da poter essere avvisati se ci dovessero essere problemi hardware. Su x86_64, questi errori non sono visualizzati su dmesg come per le altre architetture, ma su /dev/mcelog, che richiede il pacchetto app-admin/mcelog. Assicurarsi di selezionare IA32 Emulation se si desidera poter eseguire programmi a 32-bit. Gentoo installer un sistema multilib (calcolo misto a 32/64-bit) in modo predefinito, per cui tale opzione necessaria.

Nota: Se si pensa di usare un profilo non-multilib (per un sistema a 64-bit puro), allora non si dovr selezionare il supporto all'Emulazione IA32. Tuttavia, bisogner anche seguire le instruzioni per passare ad un profilo non-multilib, e scegliere il bootloader corretto. Codice 3.2: Selezionare il tipo di processore e caratteristicheProcessor type and features ---> [ ] Machine Check / overheating reporting [ ] Intel MCE Features [ ] AMD MCE Features Processor family (AMD-Opteron/Athlon64) ---> ( ) Opteron/Athlon64/Hammer/K8 ( ) Intel P4 / older Netburst based Xeon ( ) Core 2/newer Xeon ( ) Intel Atom ( ) Generic-x86-64 Executable file formats / Emulations ---> [*] IA32 Emulation

Andare su File Systems e selezionare il supporto per i filesystem utilizzati. Non compilare tali supporti come moduli, altrimenti Gentoo non pu montare le partizioni. Selezionare anche Virtual memory, /proc file system. Codice 3.3: Selezionare il filesystemFile systems ---> Pseudo Filesystems ---> [*] /proc file system support [ ] /dev file system support (OBSOLETE) [*] Virtual memory file system support (former shm fs) (Selezionare una o pi delle seguenti, secondo necessit) Reiserfs support Ext3 journalling file system support JFS filesystem support Second extended fs support XFS filesystem support

Se si sta usando PPPoE per connettersi a Internet, si ha bisogno delle seguenti opzioni nel kernel: Codice 3.4: Selezionare i driver necessari per PPPoEDevice Drivers ---> Networking Support ---> PPP (point-to-point protocol) support PPP support for async serial ports PPP support for sync tty ports

Le due opzioni di compressione non sono dannose, ma neppure necessarie; lo stesso vale per PPP over Ethernet, che potrebbe essere usata soltanto da ppp se configurato in modalit kernel. Chi ne ha bisogno non deve dimenticare di includere nel kernel il supporto per la propria scheda di rete ethernet. Se si in possesso di pi CPU Opteron o un multi-core (es AMD64 X2), possibile attivare il supporto multiprocessore: Codice 3.5: Attivare il supporto multiprocessoreProcessor type and features ---> [*] Symmetric multi-processing support

Nota: Nei sistemi multicore, ciascun core vale come un processore. Se si utilizzano periferiche USB (come mouse o tastiere) necessario abilitarle: Codice 3.6: Attivare il supporto USB per dispositivi di inputDevice Drivers ---> [*] HID Devices ---> USB Human Interface Device (full HID) support

Compilazione e Installazione

Ora che il kernel configurato, il prossimo passo la compilazione e l'installazione. Uscire dal menu di configurazione ed avviare la compilazione:

Codice 3.7: Compilare il kernel# make && make modules_install

Quando la compilazione finita, necessario copiare l'immagine del kernel in /boot. E' possibile utilizzare qualsiasi nome per indicare il proprio kernel, sufficiente tenerlo a mente perch necessario nella configurazione del bootloader. Ricordare di sostituire kernel2.6.34-gentoo-r1 con il nome e la versione del proprio kernel. Codice 3.8: Installare il kernel# cp arch/x86_64/boot/bzImage /boot/kernel-2.6.34-gentoo-r1

Ora proseguire con i Moduli del Kernel. 7.d. Alternativa: Usare genkernel Se si sta leggendo questa sezione, vuol dire che si scelto di usare lo script genkernel, che configura il kernel. Adesso che sono stati installati i sorgenti del kernel si pu utilizzare lo script genkernel per configurarlo e compilarlo automaticamente. genkernel configura il kernel in modo quasi identico a come configurato quello del CD di Installazione. Infatti quando si usa genkernel per compilare il kernel, il sistema rileva tutto l'hardware al boot, proprio come il CD di Installazione. Poich genkernel non richiede nessuna configurazione manuale del kernel, questa una soluzione ideale per quegli utenti che hanno qualche difficolt nel compilarsi il kernel da soli. Ecco come usare genkernel. Per prima cosa si deve emergere l'ebuild di genkernel: Codice 4.1: Emergere genkernel# emerge genkernel

Ora copiare la configurazione del kernel del CD di Installazione nella directory dove genkernel si aspetta la configurazione predefinita per il kernel: Codice 4.2: Copia della configurazione del kernel del CD di Installazione# zcat /proc/config.gz > /usr/share/genkernel/arch/x86_64/kernel-config

Compilare poi il kernel eseguendo genkernel all. Visto che genkernel compila un kernel che supporta quasi tutto l'hardware disponibile questa compilazione pu essere un processo piuttosto lungo. E' importante sapere anche che se non si usano ext2 o ext3 come filesystem potrebbe essere necessario configurare manualmente il kernel usando genkernel --menuconfig all e aggiungere il supporto per il filesystem scelto nel kernel (cio non come modulo). Gli utenti di EVMS2 o LVM2 devono anche aggiungere i parametri --evms2 or --lvm2. Codice 4.3: Esecuzione di genkernel# genkernel all

Una volta completato genkernel, viene creato un kernel completo di moduli e root disk iniziale (initrd). Il kernel e initrd intervengono quando si configura un boot loader. E' consigliabile dunque annotare il nome del kernel e del initrd, poich servono quando si scrive il file di configurazione del bootloader. Initrd si avvia subito dopo il boot per effettuare un rilevamento automatico dell'hardware (come nel CD di Installazione), prima che si avvii il sistema "reale". Codice 4.4: Controllo dell'immagine del kernel e dell'initrd# ls /boot/kernel* /boot/initramfs*

7.e. Moduli del Kernel Configurare i moduli Si dovrebbero inserire i moduli che si vogliono caricare in /etc/modules.autoload.d/kernel-2.6. Se si vuole, si possono anche aggiungere altre opzioni ai moduli. Per vedere tutti i moduli disponibili, eseguire il comando find. Non dimenticarsi di sostituire

"" con la versione del kernel appena compilato: Codice 5.1: Vedere tutti i moduli disponibili# find /lib/modu