Guida all'installazione di Gentoo Linux 1.4_rc4
1. Introduzione
Questo nuovo CD di boot dovrebbe essere avviabile da tutti i moderni lettori
CD-ROM IDE e SCSI, sempre che il vostro lettore CD e il BIOS del vostro
computer lo supportino. Il Linux incluso nel CD-ROM riconosce periferiche IDE
(incluse nel kernel) e SCSI (disponibili come modulo). Inoltre, sono provveduti
i moduli per tutti i tipi di schede di rete supportate da Linux, così come
tutti gli strumenti per la configurazione e l'accesso via ssh alla rete e il
download dei file.
I requisiti minimi di sistema sono: processore 486+ con idealmente almeno 64MB
di RAM (Gentoo Linux è stato installato con successo anche con 64MB di RAM e
64MB di swap, ma in queste condizioni il processo di installazione risulta essere molto lento).
Gentoo Linux può essere installato usando uno dei tre file .tar denominati "stage"
La scelta dipende da quanta parte del sistema volete compilare. Lo stage1
serve per compilare l'intero sistema da zero. Lo stage2 per compilare, da zero, solo
alcune parti del sistema, mentre lo stage3 vi permetterà di risparmiare
molto tempo dato che è già stato ottimizzato per il vostro specifico sistema e
contiene un sistema Gentoo Linux di base.
Dovreste scegliere di partire dallo stage1, stage2 o stage3?
Se scegliete di partire dallo stage1 avrete il controllo totale delle
ottimizzazioni e delle funzionalità opzionale usata durante la fase di
compilazione che è inizialmente abilitata sul vostro sistema. Questo rende lo
stage1 ideale per gli utenti smaliziati che sanno quello che stanno facendo.
Con lo stage2 saltate il processo di bootstrap, e dovrete accontentarvi
delle opzioni di ottimizzazione che abbiamo scelto per il vostro particolare
file .tar dello stage2. Con lo stage3 avrete una installazione di Gentoo Linux
molto veloce, ma anche in questo caso dovrete accontentarvi delle
ottimizzazioni che abbiamo scelto per voi. Questo potrebbe essere sufficiente,
dato che le versioni rilasciate di Gentoo Linux hanno lo stage3 specificamente
ottimizzato per i più popolari tipi di processori.
Se state installando Gentoo Linux per la prima volta, il consiglio è di usare il file
.tar dello stage3.
Bene, come facciamo a iniziare il processo di installazione? Prima dovrete
decidere quale immagine ISO del LiveCD scaricare da
http://www.ibiblio.org/gentoo/releases/1.4_rc4/x86/. Il consiglio
è di considerare l'uso di uno dei nostri mirror in modo da alleviare il carico
di lavoro dal server principale. Una lista di server può essere trovata su
http://www.gentoo.org/main/en/mirrors.xml.
I LiveCD sono immagini complete per CD che dovrebbero essere masterizzate su un CDR o CD-RW
usando un software per la masterizzazione. Al momento abbiamo due tipi di LiveCD. Il primo
con la dicitura "gentoo-basic" è di approssimativamente 40MB e lo trovate nella directory
x86/livecd/. Questo CD di piccole dimensioni permette un download iniziale e contiene un
file .tar dello stage1 in /mnt/cdrom/gentoo dopo l'avvio dal CD.
Il secondo LiveCD che offriamo è etichettato "gentoo-3stages".
Anche questo CD lo trovate nella directory x86/livecd e contiene i
file .tar dello stage 1, 2 e 3. Usando questo CD, sarà possibile installare velocemente
un sistema Gentoo Linux completamente funzionante. Che fine hanno fatto i LiveCD
per i686, pentium3, athlon, athlon-mp e i pacchetti GRP (Gentoo Reference Platform)?
Gentoo 1.4_rc4 è soltanto una "release candidate" minima. La 1.4_final tornerà
ad essere suddivisa in architetture x86 e conterrà i pacchetti GRP. Se volete installare gli
stage ottimizzati per queste architetture o i pacchetti GRP, usate la documentazione per
la 1.4_rc2 che potete trovare su http://www.gentoo.org/doc/it/gentoo-x86-1.4_rc2-install.xml.
Importante:
Se incontrate qualche problema in qualsiasi parte dell'installazione,
potete riportarlo su http://bugs.gentoo.org. Se il bug coinvolge
gli sviluppatori del software originale (come ad esempio il team KDE),
sarà cura degli sviluppatori di Gentoo Linux occuparsi
di farlo avere a chi di dovere.
|
Ora diamo una rapida occhiata al processo di installazione. Prima dovremo scaricare e masterizzare
l'immagine e, quindi riavviare il nostro PC facendogli fare il boot dal LiveCD appena creato.
Non appena raggiunto il prompt di root, creeremo le partizioni, i nostri filesystem ed estrarremo
uno dei file .tar stageNN. Se stiamo usando i .tar dello stage1 o dello stage2, vedremo quali passi compiere
per portare il nostro sistema allo stage3. Una volta che il sistema sarà arrivato allo stage3, potremo configurarlo
(ottimizzando i file di configurazione, installando il bootloader, ecc.), e farlo ripartire avendo un sistema Gentoo
Linux completamente funzionale. A seconda dello stage dal quale stiamo partendo, i requisiti per l'installazione sono i
seguenti (N.d.T. emerge è il comando per la gestione del software in Gentoo Linux, per cui alcuni dei seguenti termini non sono traducibili):
| file .tar (stage) |
requisiti per l'installazione |
| 1 |
setup di partizioni e filesystem, emerge sync, bootstrap, emerge system, emerge kernel,
configurazione finale |
| 2 |
setup di partizioni e filesystem, emerge sync, emerge system, emerge kernel, configurazione
finale |
| 3 |
setup di partizioni e filesystem, emerge sync, configurazione finale |
2. L'avvio
Fate il boot dal LiveCD.
Dovreste vedere un testo di benvenuto con il logo di Gentoo Linux.
In questa schermata potete semplicemente premere Enter per iniziare il processo di boot, o avviare il LiveCD
con opzioni che usate abitualmente specificando un kernel seguito dalle opzione e quindi dalla pressione del
tasto Enter. Per esempio gentoo nousb nohotplug. Consultate la seguente tabella per una lista di
kernel e opzioni disponibili o premete F2 per avere una schermata di aiuto.
| Kernel disponibili. |
descrizione |
| gentoo |
Il kernel base di gentoo (predefinito) |
| 800 |
modalità framebuffer a 800x600 |
| 1024 |
modalità framebuffer a 1024x768 (predefinita) |
| 1280 |
modalità framebuffer a 1280x1024 |
| nofb |
modalità framebuffer disabilitata |
| smp |
avvia un kernel smp in modalità noframebuffer |
| acpi |
abilita "acpi=on" e carica i moduli acpi durante l'init |
| memtest |
avvia il programma di controllo della memoria |
| Opzioni di avvio disponibili. |
descrizione |
| doataraid |
carica i moduli ide raid da initrd |
| dofirewire |
fa il "modprobe" dei moduli firewire nel initrd (per i cdrom
firewire, ecc) |
| dokeymap |
abilita la selezione della keymap per tastiere non americane |
| dopcmcia |
esegue il servizio "pcmcia" |
| doscsi |
ricerca le periferiche scsi (si blocca con alcune schede ethernet) |
| noapm |
disabilita il caricamento del modulo "apm" |
| nodetect |
non caricherà "hotplug" e
"hwsetup/kudzu" |
| nodhcp |
non sarà fatto partire automaticamente il
dhcp una volta rilevata la scheda di rete |
| nohotplug |
disabilita il caricamento del servizio di "hotplug" |
| noraid |
disabilita il caricamento dei moduli "evms" |
| nousb |
disabilita il caricamento da initrd dei moduli usb, disabilita
l'"hotplug" |
| ide=nodma |
disabilita il dma delle periferiche ide malfunzionanti |
| cdcache |
Memorizza l'intera porzione "runtime" del cd nella ram. Per questo
saranno utilizzati 40MB di RAM, ma avrete la possibilità di fare l'"unmount" di
/mnt/cdrom e montare un altro cdrom.
|
Una volta premuto ENTER, Linux comincerà a essere caricato da CD e vedrete il classico output
del caricamento del kernel e i messaggi di initrd.
Al termine del boot sarete automaticamente loggati come "root"
e per motivi di sicurezza la password di root sarà impostata ad un valore random. Dovreste ora
avere il prompt di root ("#") nella console corrente e poter aprire nuove
console premendo Alt-F2, Alt-F3 e Alt-F4. Torniamo alla finestra di partenza premendo Alt-F1.
Dovreste a questo punto scegliere una password per root e digitarla dopo il comando passwd.
Avrete probabilmente notato che sopra il prompt # c'è un testo di aiuto che spiega alcune cose
su come configurare la scheda di rete e dove poter trovare i file .tar degli stage e i pacchetti nel CD.
3. Caricare i moduli del kernel
Se la rilevazione automatica del bus PCI, non funzionasse per qualche periferica, potrete comunque caricare
i moduli appropriati manualmente. Per vedere la lista di tutte le schede di rete supportate, digitate ls
/lib/modules/*/kernel/drivers/net/*.
Per caricare un particolare modulo, digitate:
Esempio 1: Configurazione dei moduli PCI |
# modprobe pcnet32
|
Se vogliamo riuscire ad accedere a ogni periferica SCSI che non è stata individuta durante il
processo di auto-identificazione, dovremmo caricare i moduli appropriati da
/lib/modules, usando ancora modprobe:
Esempio 2: Caricamento dei moduli SCSI |
# modprobe aic7xxx
# modprobe sd_mod
|
Nota:
Il supporto per CD-ROM e dischi SCSI è incluso nel kernel. |
Se state usando dell'hardware RAID, dovreste caricare i moduli per l'ATA-RAID
e per il controller RAID
Esempio 3: Caricamento dei moduli RAID |
# insmod ataraid
# insmod pdcraid
# insmod hptraid
|
Il LiveCD di Gentoo dovrebbe aver abilitato il DMA per i vostri dischi.
Se così non fosse, potete usare hdparm per impostare il DMA sui vostri dischi.
Esempio 4: Impostare il DMA |
# hdparm -d 1 /dev/hdX
# hdparm -d1 -A1 -m16 -u1 -a64 /dev/hdX
# hdparm -X66 /dev/hdX
|
4. Configurare la rete
E' già tutto a posto?
Se state usando un liveCD 1.4_rc3 o successivo, è possibile che la rete sia già stata configurata
automaticamente. Se è così potreste essere in grado di usare molti dei comandi orientati alla rete inclusi
nel LiveCD come, tra gli altri, ssh, scp, ping, irssi, wget
e lynx.
Se la configurazione della rete è andata a buon fine, il comando /sbin/ifconfig dovrebbe mostrarvi
le interfacce di rete come lo e eth0:
Esempio 5: /sbin/ifconfig per schede di rete configurate |
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
|
Potete anche provare a eseguire un ping verso il server DNS del vostro
provider (che trovate in /etc/resolv.conf) e verso un sito
web di vostra scelta, giusto per vedere che tutti i pacchetti raggiungano
la rete e la risoluzione dei nomi DNS funzioni correttamente.
Esempio 6: Test della rete |
# ping -c 3 www.gentoo.it
|
Riuscite ad usare la rete? Allora potete saltare il resto di questa sezione.
Configurazione del PPPoE
Assumendo che abbiate bisogno di PPPoE per connettervi a internet,
su qualsiasi versione del livecd abbiamo cercato di rendervi le cose
più facili includendo rp-pppoe. Usate lo script adsl-setup
per configurare la vostra connessione. Vi verrà richiesto il device a cui
è connesso il vostro modem adsl, il vostro username e la password,
l'indirizzo del DNS, e se avete bisogno di un firewall minimo oppure no.
Esempio 7: Configurazione di PPPoE |
# adsl-setup
# adsl-start
|
Se qualcosa andasse storto, assicuratevi che lo username e la password immessi
siano esatti, dando un'occhiata al file /etc/ppp/pap-secrets o
/etc/ppp/chap-secrets, e che stiate usando il corretto device ethernet.
Configurazione automatica della rete
Se la configurazione automatica non è andata a buon fine, la via più semplice per configurare
la rete è eseguire lo script net-setup:
Esempio 8: Net-Setup Script |
# net-setup eth0
|
Naturalmente se preferite, potete ancora configurare il network manualmente, come vedremo in seguito.
Configurazione manuale del DHCP
Configurare una rete DHCP è semplice; se il vostro provider non usa DHCP, passate al paragrafo
"Configurazione statica".
Esempio 9: Configurazione di una rete DHCP |
# dhcpcd eth0
|
Nota:
Alcuni provider richiedono un hostname. Per fare questo aggiungete un flag -h nomehost
nella riga di comando del dhcpcd.
|
Non vi spaventate se ricevete messaggi di avviso dadhcpConfig; niente panico;
gli errori non sono quasi mai degni di nota.
Potete continuare col paragrafo "Test della rete".
Configurazione manuale della rete
E' necessario configurare la rete per scaricare i sorgenti e compialre
la vostra [distribuzione] Gentoo Linux.
Digitate i seguenti comandi sostituendo a $IFACE la vostra interfaccia di rete
(di solito eth0), a $IPNUM il vostro indirizzo IP,
a $BCAST il vostro indirizzo di broadcast, e a $NMASK la vostra network mask.
Per il comando route, invece, sostituite a $GTWAY l'indirizzo
IP del vostro gateway.
Esempio 10: Configurazione della rete con IP statico |
# /sbin/ifconfig $IFACE $IPNUM broadcast $BCAST netmask $NMASK
# /sbin/route add -net default gw $GTWAY netmask 0.0.0.0 metric 1
|
E' il momento di creare il file /etc/resolv.conf in modo
tale che sia possibile la risoluzione dei nomi.
(In questo modo possiamo raggiungere siti Web/FTP direttamente
col nome piuttosto che attraverso l'indirizzo IP).
Segue un esempio da seguire per la creazione del vostro /etc/resolv.conf:
Esempio 11: esempio di /etc/resolv.conf |
domain miodominio.it
nameserver 10.0.0.1
nameserver 10.0.0.2
|
Sostituite a 10.0.0.1 e a 10.0.0.2
l'indirizzo IP del vostro server DNS primario e secondario rispettivamente.
Configurazione della rete con un Proxy
Se siete all'interno di un proxy, è necessario configurare
il vostro proxy prima di continuare. Per questo dovremo esportare
alcune variabili.
Esempio 12: Configurazione di un proxy |
# export http_proxy="machine.company.com:1234"
# export ftp_proxy="$http_proxy"
# export RSYNC_PROXY="$http_proxy"
|
La rete funziona!
La rete dovrebbe essere ora configurata e funzionante.
Dovreste essere in grado di usare i comandi
ssh, scp, lynx, irssi e wget per connettervi
ad altre macchine nella vostra LAN o ad Internet.
La rete non funziona! Se la vostra rete non funziona, potrete trovare aiuto sui
Forum di Gentoo.
Alcuni link utili possono essere trovati su
http://forums.gentoo.org/viewtopic.php?t=43025.
5. Aggiorniamo la data e l'ora del nostro sistema
E' necessario aggiornare la data e l'ora del nostro sistema.
Possiamo farlo usando il comando date
Esempio 13: Aggiornamento della data del sistema |
# date
Thu Feb 27 09:04:42 CST 2003
# date 022709042003
|
6. Filesystem, partizioni e device a blocchi (block devices)
Introduzione ai device a blocchi
In questa sezione, prenderemo in esame gli aspetti concernenti i dischi su
Gentoo Linux e Linux in generale, includendo Linux filesystem, partizioni e
device a blocchi. Quindi, una volta che avrete preso familarità con tutto
ciò che riguarda dischi e filesystem, sarete guidati attraverso il processo di
configurazione delle partizioni e filesystem per la vostra installazione di Gentoo Linux.
Iniziamo con l'introdurre i "device a blocchi". La periferica a
blocchi più famosa è probabilmente quella che rappresenta il primo drive
IDE in un sistema Linux:
Esempio 14: /dev/hda, il device a blocchi che rappresenta il disco master sull'IDE primario nelvostro sistema |
/dev/hda
|
Se il vostro sistema usa periferiche SCSI, il vostro primo disco sarà :
Esempio 15: /dev/sda, il device a blocchi che rappresenta il primo drive logico SCSInel vostro sistema |
/dev/sda
|
Il device a blocchi rappresenta una interfaccia astratta del disco.
Programmi utente possono usare questi device a blocchi per interagire
col vostro disco senza preoccuparsi se il vostro disco è IDE, SCSI o qualcos'altro.
I programmi possono semplicemente indirizzare la scrittura su disco come un insieme
di blocchi da 512 bytes, contigui e accessibili in modo casuale.
Partizioni e fdisk
Sotto Linux, creiamo i filesystem usando uno speciale comando
chiamato mkfs (o mke2fs, mkreiserfs, ecc.)
specificando un device a blocchi come argomento sulla linea di comando.
Comunque, anche se è teoricamente possibile usare un intero disco
come /dev/hda o /dev/sda per allocare un singolo
filesystem, non è mai fatto in pratica. Al contrario, interi dischi sono
suddivisi in piccoli e più maneggevoli device a blocchi chiamati
"partizioni". Queste partizioni sono create usando uno strumento
chiamato fdisk, che è usato per creare e modificare le tabelle delle
partizioni (partition table) memorizzate in ogni disco. La tabella della partizione
definisce esattamente come suddividere l'intero disco.
Possiamo dare un'occhiata a una partition table eseguendo fdisk,
specificando il device a blocchi che rappresenta l'intero disco come
argomento:
Nota: Interfacce alternative per la partition table includono cfdisk,
parted e partimage. |
Esempio 16: Eseguiamo fdisk |
# fdisk /dev/hda
|
o
Esempio 17: Eseguiamo fdisk per vedere una partition table su /dev/sda |
# fdisk /dev/sda
|
Nota:
Nota che non dovreste né salvare,
né fare dei cambiamenti alla partition table del
disco se le sue partizioni contengono filesystem che sono in uso o contengono
dati importanti. Altrimenti potreste causare la perdita dei dati del disco.
|
Una volta all'interno di fdisk, dovreste ricevere un benvenuto attraverso un
promptche dovrebbe assomigliare a questo:
Esempio 18: Il prompt di fdisk |
Command (m for help):
|
Digitate p per visualizzare la configurazione corrente delle
partizioni del disco:
Esempio 19: Un esempio di configurazione delle partizioni |
Command (m for help): p
Disk /dev/hda: 240 heads, 63 sectors, 2184 cylinders
Units = cylinders of 15120 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hda1 1 14 105808+ 83 Linux
/dev/hda2 15 49 264600 82 Linux swap
/dev/hda3 50 70 158760 83 Linux
/dev/hda4 71 2184 15981840 5 Extended
/dev/hda5 71 209 1050808+ 83 Linux
/dev/hda6 210 348 1050808+ 83 Linux
/dev/hda7 349 626 2101648+ 83 Linux
/dev/hda8 627 904 2101648+ 83 Linux
/dev/hda9 905 2184 9676768+ 83 Linux
Command (m for help):
|
Questo disco in particolare, è configurato per
contenere sette filesystem Linux (ognuna con una partizione corrispondente
elencata come "Linux") così come una
partizione di swap (elencata come "Linux swap").
Notate il nome del device a blocchi corrispondente alla partizione, sulla
prima colonna di sinistra, partendo da /dev/hda1, per arrivare a
/dev/hda9. Ai primordi dell'era dei computer, i programmi per il
partizionamento permettevano al massimo quattro partizioni (chiamate
partizioni "primarie"). Questo era troppo limitativo,
così fu creato un compromesso chiamato
partizione estesa. Una partizione estesa è molto simile ad una primaria
e viene contata all'interno delle quattro. Comunque, una partizione estesa può
contenere un numero illimitato di partizioni chiamate logiche, provvedendo
in modo significativo ad aggirare il limite delle quattro partizioni.
Tutte le partizioni a partire dalla hda5 sono partizioni logiche.
I numeri da 1 a 4 sono riservati per partizioni primarie o estese.
Così nel nostro esempio, hda1 fino a hda3 sono partizioni
primarie. hda4 è una partizione estesa che contiene le partizioni
logiche da hda5 a hda9. Non dovreste mai usare
/dev/hda4 per crearvi filesystem direttamente, è solo un contenitore
per le partizioni da hda5 a hda9.
Nota inoltre che ogni partizione ha un "Id" chiamato anche
"partition type" ("tipo di partizione").
Ogni volta che create una partizione, dovreste assicurarvi che il
tipo di partizione sia configurato correttamente. '83' è il
tipo di partizione corretto per partizioni che conterranno un filesystem
Linux, mentre '82' è il corretto tipo per partizioni per lo swap di Linux.
Potete impostare il tipo di partizione usando l'opzione t in
fdisk. Il kernel di Linux usa l'impostazione del tipo di partizione per
determinare automaticamente all'avvio i filesytem e i device di swap del disco.
Usiamo fdisk per partizionare il disco
Ora che le partizioni sono state create, è il momento di creare i filesystem
sulle partizioni boot e root in modo tale che possano essere montate e
usate per la memorizzazione dei dati. Configurerete anche la partizione di swap.
Gentoo Linux supporta una grande varietà di tipi differenti di filesystem ognuno
dei quali ha i propri punti di forza e debolezze e un proprio set di caratteristiche
che riguardano le performance. Attualmente è supportata la creazione di filesystem
ext2, ext3, XFS, JFS e ReiserFS.
ext2 è il vero e proprio filesystem di Linux ma non ha il supporto per il "metadata
journaling", il che significa che routine che effettuano il controllo sui filesystem
ext2 all'avvio possono sprecare diverso tempo. C'è adesso una scelta abbastanza
varia di filesystem journaled di nuova generazione che possono essere scelti
per la loro consistenza e sono generalmente preferiti alle controparti non-journaled.
I filesystem di tipo "journaled" prevengono i lunghi tempi di attesa quando
riavviate il vostro sistema e i vostri filesystem appaiono in uno stato inconsistente.
ext3 è la versione "journaled" del filesystem ext2 e provvede il "metadata
journaling" per un veloce recupero (recovery) dei dati in aggiunta ad altre caratteristiche
di journaling avanzate come il "full data" e l'"ordered data journaling".
ext3 è veramente un buon filesystem oltre che affidabile. Offre generalmente performance decenti
in molte condizioni. Dato che non impiega estensivamente l'uso di "trees" nel suo
design interno, non scala molto bene, il che significa che non è una scelta ideale per filesystem
molto grandi o situazioni dove deve manipolare grandi quantità di dati in una singola directory
o file molto grandi. Ma se usato in un ambiente a lui congeniale per il design con cui è stato
pensato, ext3 è un eccellente filesystem.
ReiserFS è un filesystem basato su B*-tree che ha ottime performance su file di piccole dimensioni
e velocità superiori a ext2 e ext3 con file di dimensioni minori di 4k, spesso di un fattore 10x-15x.
ReiserFS scala inoltre molto bene e supporta il metadata journaling. Dal kernel 2.4.18+, ReiserFS
ha raggiunto la solidità che lo porta a essere raccomandato caldamente sia per un uso generico
che per casi estremi come la creazione di grandi filesystem, l'uso su molti file piccoli, file molto grandi
e directory contenenti decine di migliaia di file. ReiserFS è il filesystem che raccomandiamo di default per
tutte le partizioni non boot.
XFS è un filesystem con tecnologia meta-data journaling che è completamente supportato in Gentoo
Linux dal kernel xfs-sources, arriva con un robusto set di caratteristiche ed è
ottimizzato per la scalabilità . Ne raccomandiamo l'uso su sistemi Linux con high-end SCSI e/o unità
di memorizzazione su canali in fibra e connessi a UPS. Data l'aggressività con la quale XFS fa il cache in
RAM dei dati in transito, programmi progettati in modo non appropriato (quelli che non prendono
precauzioni quando scrivono file su disco, e ce ne sono abbastanza) possono perdere una discreta
quantità di dati se il sistema si arresta in modo inaspettato.
JFS è il filesystem journaling ad alte prestazioni di IBM. E' recentemente diventato pronto per il mercato,
ma a oggi non è stato sufficientemente provato per fare commenti positivi o negativi sulla sua generale
stabilità .
Se siete interessati al filesystem più robusto, usate ext3. Se siete invece interessati a un filesystem ad alte
prestazioni con il supporto journaling, usate ReiserFS; sia ext3 che ReiserFS sono maturi e perfezionati.
In base agli esempi e a quanto detto in precedenza, useremo i seguenti comandi
per inizializzare tutte le nostre partizioni:
Esempio 27: Inizializzazione delle partizione (esempio) |
# mke2fs -j /dev/hda1
# mkswap /dev/hda2
# mkreiserfs /dev/hda3
|
Abbiamo scelto ext3 per la partizione di avvio /dev/hda1 perché è un
robusto filesystem con il journaling supportato dalla maggioranza dei boot loaders.
Abbiamo usato mkswap per la partizione di swap /dev/hda2 (e qui la
scelta è ovvia). E per il nostro filesystem principale su /dev/hda3 abbiamo scelto
ReiserFS, dato che è un solido filesystem con il journaling il quale offre eccellenti performance.
Ora andate avanti e inizializzate le vostre partizioni.
Come vostro riferimento, ecco i vari comandi mkfs tipo disponibili
durante il processo di installazione:
mkswap è il comando usato per creare partizioni di swap:
Esempio 28: Inizializzare lo Swap |
# mkswap /dev/hda2
|
Potete usare ilcomando mke2fs per creare filesystem ext2:
Esempio 29: Creazione di un Filesystem ext2 |
# mke2fs /dev/hda1
|
Se vi piacesse usare ext3, potrete creare filesystem ext3 usando mke2fs -j:
Esempio 30: Creazione di un Filesystem ext3 |
# mke2fs -j /dev/hda3
|
Nota: Potete trovare maggiori informazioni sull'uso di ext3 sotto Linux 2.4 all'indirizzo
http://www.zip.com.au/~akpm/linux/ext3/ext3-usage.html.
|
Per creare filesystem ReiserFS, usate il comando mkreiserfs:
Esempio 31: Creazione di un Filesystem ReiserFS |
# mkreiserfs /dev/hda3
|
Per creare filesystem XFS usiamo il comando mkfs.xfs:
Esempio 32: Creazione di un Filesystem xfs |
# mkfs.xfs /dev/hda3
|
Nota:
Potete voler aggiungere un paio di flag in più al comando mkfs.xfs:
-d agcount=3 -l size=32m. Il flag -d agcount=3 abbassa
il numero dei gruppi di allocazione. XFS insiste usando almeno 1 gruppo di
allocazione per ogni 4 GB di partizione, così, per esempio, se avete una
partizione di 20GB avreste bisogno di 5 gruppi (agcount) come minimo.
Il flag -l size=32m porta a 32 MB la grandezza del journal,
incrementando le performance.
|
Per creare un filesystem JFS, usate il comando mkfs.jfs.
Esempio 33: Creazione di un Filesystem JFS |
# mkfs.jfs /dev/hda3
|
7.Fare il "mount" delle partizioni
E' il momento di attivare la vostra partizione
di swap, che vi servirà
in seguito come memoria virtuale aggiuntiva:
Esempio 34: Attiviamo lo SWAP |
# swapon /dev/hda2
|
Poi, creerete i mountpoint (letteralmente: punti di montaggio)
/mnt/gentoo e /mnt/gentoo/boot, e quindi
vi monterete i vostri filesystem. Se avete deciso di creare /usr
o /var come partizioni separate, dovrebbero essere
rispettivamente montate in /mnt/gentoo/usr e
/mnt/gentoo/var. (N.d.T. la partizione /var dovrà essere molto
campiente in quanto conterrà la directory temporanea del sistema Portage
per la compilazione dei pacchetti.)
Importante:
Se la partizione di boot (dove risiede il
kernel) è ReiserFS,
dovrete essere sicuri di montarla con
l'opzione -o notail in modo tale che GRUB possa essere installato
correttamente. Dovrete anche assicurarvi che notail termini la riga che
si riferisce alla partizione di avvio in /etc/fstab.
Ritorneremo brevemente su questo punto.
|
Esempio 35: Creazione dei mount points |
# mkdir /mnt/gentoo
# mount /dev/hda3 /mnt/gentoo
# mkdir /mnt/gentoo/boot
# mount /dev/hda1 /mnt/gentoo/boot
|
Importante:
Se state avendo problemi a montare la vostra partizione di boot con ext2,
riprovate usando mount /dev/hXX /mnt/gentoo/boot -t ext2
|
8. I file .tar dello stage, e chroot
Ottenere il file .tar dello stage desiderato
Se non lo aveste ancora fatto, è il momento di decidere quale stage usare
come base per l'installazione.
Alternativamente, se avete il LiveCD denominato "basic", il file
.tar dello stage1 è ancora disponibile sul CD in /mnt/cdrom/gentoo.
Dovrete in seguito fare comunque un download degli altri stage e metterli
in /mnt/gentoo.
Se state usando il metodo di installazione "from scratch, build
everything" ("costruisci tutto da zero"), dovrete usare
l'immagine stage1-ix86-1.4_rc4.tbz2. Se invece state
usando uno dei CD di grosse dimensioni come la ISO "3stages",
avrete anche la possibilità di scegliere tra le immagini stage2 e stage3.
Queste immagini vi permettono di risparmiare tempo a spesa della
configurabilità dato che abbiamo scelto noi le ottimizzazione per il
compilatore e le variabili USE di default. Sul CD gli stage sono accessibili
in /mnt/cdrom/gentoo e puoi digitare ls /mnt/cdrom/gentoo
per vedere cos'è disponibile sul vostro CD.
Se avete scelto di eseguire l'installazione usando un file .tar di stage che
non è sul nostro CD, è possibile ma avrete bisogno si scaricare lo
stage che volete usando le seguenti istruzioni. Se, invece, avete già lo
stage tarball che volete usare, procedete con la sezione "Scomprimere
l'immagine che desiderate usare"
Esempio 36: Download degli stages richiesti |
# cd /mnt/gentoo
# lynx http://www.ibiblio.org/pub/Linux/distributions/gentoo/releases/1.4_rc4/x86/
# wget
|
E' ora il momento di estrarre il file .tar dello stage che avete scelto
in /mnt/gentoo. Dovrete estrarre solo lo stage da
cui volete partire, se avete scelto di partire dallo stage3 dovrete
estrarre solo il file .tar dello stage3.
Estraete l'immagine come segue:
Importante:
Ricordatevi di usare l'opzione p col comando tar.
Altrimenti alcuni file potrebbero
ricevere permessi errati
|
Esempio 37: Scomprimere lo stage |
# cd /mnt/gentoo
#tar -xvjpf /mnt/cdrom/gentoo/stage3-*.tar.bz2
|
Se avete scaricato il il file .tar del vostro stage in /mnt/gentoo,
potrete rimuoverlo digitando rm /mnt/gentoo/stage*.tar.bz2.
Digitiamo il "chroot"
Il prossimo passo sarà di "entrare" nel nuovo sistema Gentoo Linux tramite
chroot dall'ambiente di installazione.
Nota:
Potreste ricevere notifica durante env-update dicendo che
/etc/make.profile/make.defaults non è disponibile (isn't available): ignoratelo.
Andrete a eseguire emerge sync in seguito che risolverà questo problema.
|
Esempio 38: Preparazione ed ingresso nell'ambiente chroot |
# mount -t proc proc /mnt/gentoo/proc
# cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
# chroot /mnt/gentoo /bin/bash
# env-update
Regenerating /etc/ld.so.cache...
# source /etc/profile
|
Dopo aver eseguito questi comandi, sarete "dentro" il nuovo ambiente
Gentoo Linux in /mnt/gentoo.
Eseguiremo il resto dell'installazione all'interno di questo ambiente.
9. Scarichiamo il Portage Tree corrente usando sync
Dovrete ora eseguire emerge sync. Questo vi assicura di avere la copia più recente
del Portage tree. Il Portage tree contiene tutti gli script (chiamati ebuild) usati per la compilazione
di ogni pacchetto sotto Gentoo Linux. Attualmente abbiamo script di ebuild per 4000 pacchetti.
Una volta che emerge sync sia stato completato, avrete un completo Portage tree in
/usr/portage.
Esempio 39: Aggiornamento usando sync |
# emerge sync
|
10. Impostare le ottimizzazioni di Gentoo (make.conf)
Ora che stiamo lavorando su una copia del Portage tree, coloro che usano
lo stage1 devono effettuare il bootstrap di Gentoo Linux procedendo
secondo le istruzioni che seguono. Primo: editare il file
/etc/make.conf. In questo file dovremo impostare ad hoc
i vari flag USE che servono a specificare quali funzionalità
supplementari si vogliano includere per la compilazione dei pacchetti.
In genere le impostazioni di default sono accettabili (ovvero un USE vuoto
o non configurato).
Maggiori informazioni sui flag di USE possono essere trovate
qui.
Una lista completa dei flag USE la potete trovare
qui.
Si dovrebbero definire in modo appropriato anche i flag CHOST, CFLAGS
e CXXFLAGS a seconda del tipo di sistema che si vuol creare (potete trovare
esempi documentati direttamente in questo file). Queste impostazioni saranno
usate per dire ai compilatori C e C++ come ottimizzare il codice che deve essere
generato per il vostro sistema. E' comune, per esempio, per utenti con processori
Athlon XP specificare un flag "-marc=athlon-xp" sia in CFLAGS che in CXXFLAGS
in tal modo tutti i pacchetti saranno compilati e ottimizzati con un set di istruzioni e performance
caratteristiche del processore in uso. Il file /etc/make.conf contiene una guida
generale riguardo le impostazioni proprie di CFLAGS e CXXFLAGS.
Se necessario, potremmo anche impostare le informazioni sul proxy nel caso vi trovaste dietro
un firewall. Usate il seguente comando per editare /etc/make.conf usando
nano un semplice editor visuale.
Esempio 40: Editiamo il make.conf |
# nano -w /etc/make.conf
|
Nota:
Coloro che hanno bisogno di personalizzare in modo sostanziale il processo di
compilazione potrebbero dare uno sguardo al file /etc/make.globals.
Questo file comprende i parametri predefiniti (default) di Gentoo e non
dovrebbe mai essere modificato. Se i parametri di default non
sono sufficienti, i nuovi valori dovrebbero
essere messi in /etc/make.conf, i valori dei parametri
di /etc/make.conf gli stessi
in /etc/make.globals. Se siete interessati a personalizzare le
impostazioni di USE, guardate in /etc/make.profile/make.defaults.
Se volete disabilitare alcune impostazioni di USE, aggiungete in /etc/make.conf
USE="-flag" per disabilitare i flag. (N.d.T.: p.e. USE="gnome" includerà
gnome nella compilazione di programmi che potrebbero avere qualche feature in più includendo
gnome, ma che sostanzialmente non ne hanno bisogno per il corretto funzionamento, mentre
USE="-gnome" non includerà gnome.)
|
11. Partendo dallo Stage1
Nota: Se non state usando lo stage1, saltate questa sezione. |
Il file .tar dello stage1 serve per compilare un sistema completamente
personalizzato e ottimizzato. Se avete scelto questo file state probabilmente
cercando di avere un sistema ultra ottimizzato. Buon divertimento, perché
l'ottimizzazione è la cosa più importante di Gentoo Linux. L'installazione partendo
dallo stage1 prende diverso tempo, ma il risultato è che il sistema verrà ottimizzato
dalle fondamenta, a seconda della macchina e delle vostre necessità.
Adesso è il momento di incominciare il processo di "bootstrap". Tale processo
dura circa due ore sul mio AMD 1200MHz. Durante questo tempo, la "GNU C library",
la "suite" del compilatore e altri programmi chiave del sistema. verranno compilati.
Iniziate il bootstrap come segue:
Esempio 41: Bootstrapping |
# cd /usr/portage
# scripts/bootstrap.sh
|
Il processo di "bootstrap" avrà inizio adesso.
Nota:
Portage usa per default /var/tmp durante la
fase di complilazione dei pacchetti, usando spesso
centinaia di megabyte come area di memorizzazione
temporanea. Se preferite cambiare dove Portage memorizza i propri
file temporanei, impostate una nuova variabile PORTAGE_TMPDIR
prima di far partire il processo di bootstrap
come segue:
|
Esempio 42: Cambiare la directory temporanea del PORTAGE |
# export PORTAGE_TMPDIR="/altradir/tmp"
|
Il comando bootstrap.sh compilerà i
pacchetti binutils, gcc,
gettext e glibc, ricompilando
binutils, gcc e gettext dopo la
compilazione delle glibc. Inutile dirlo,
questo processo durerà un po' di tempo. Una volta che il processo
sarà completato, il vostro sistema è in "stage2" il che
significa che potete andare alle istruzione relative allo stage2.
12. Partendo dallo Stage2 e continuando dallo Stage1
Nota:
Questa sezione è per coloro che stanno continuando l'installazione dello stage1 o che
stanno partendo da uno stage2. Se state usando lo stage3, saltate questa sezione.
|
Il file .tar dello stage2 ha già il "bootstrapping" fatto per voi. Tutto quello che
dovete fare è installare il resto del sistema.
Nota:
Se state partendo da uno stage2 pre-costruito e volete essere sicuri
che il vostro ambiente di sviluppo (compilatori, librerie, ecc.) siano
aggiornati, aggiungete una opzione -u al comado che segue. Se
non sapete cosa significa questo, non tenete in considerazione questo
suggerimento.
|
Esempio 43: Installazione del resto del sistema |
# emerge -p system
# emerge system
|
Questo passaggio richiederù un po' di tempo per compilare l'intero sistema di base.
Il lato positivo è che avrete un sistema veramente ottimizzato. D'altra parte dovrete
trovare qualcosa da fare. L'autore suggerisce "Star Wars - Super Bombard Racing"
per la PS2.
La compilazione è ora completa. Andate avanti e saltate alla sezione "Configurazione della time
zone".
13. Partendo dallo Stage3
Nota:
Questa sezione è per coloro che partono dallo stage3, e non per coloro che sono partiti
dallo stage 1 o 2 i quali dovrebbero saltare questa sezione.
|
Il file .tar dello stage3 provvede un sistema Gentoo di base completamente funzionale,
in questo caso non è necessario nessun processo di compilazione. Comunque, dato che lo
stage3 è pre-compilato, potrebbe essere un po' datato, e se questo vi preoccupa, potrete
automaticamente aggiornare il vostro stage3 esistente con le versioni più aggiornate di
tutti i pacchetti eseguendo i passi che seguono. Nota che questo potrebbe richiedere
parecchio tempo se lo stage3 è molto vecchio; altrimenti questo processo generalmente
è veloce e vi permetterà di beneficiare degli ultimi aggiornamenti e correzioni di bug.
In ogni caso, sentitevi liberi di saltare questi passi e di procedere con la prossima sezione.
Esempio 44: Otteniamo l'aggiornamento |
# export CONFIG_PROTECT="-*"
# emerge -up system
# emerge -u system
# unset CONFIG_PROTECT
|
14. Impostare la "time zone"
E' ora necessario impostare la vostra time zone.
Cercate la vostra Timezone ( o GMT se state usando
il Greenwich Mean Time) in /usr/share/zoneinfo.
Poi, create un link simbolico come segue:
Esempio 45: Creazione di un link simbolico per la time zone |
# ln -sf /usr/share/zoneinfo/path/to/timezonefile /etc/localtime
|
15. Installare il kernel e il System Logger
Nota: Se non l'avete ancora fatto, editate /etc/make.conf a vostro piacimento. |
Avete ora bisogno di scaricare i sorgenti del kernel di Linux. Gentoo provvede sbariate ebuild di kernel,
un elenco può essere trovato qui. Se siete indecisi circa
quali sorgenti del kernel scegliere, vi consigliamo il gentoo-sources o il vanilla-sources. Se volete il supporto XFS,
dovreste scegliere l'xfs-sources.
Attenzione:
Se state configurando il vostro proprio kernel, siate prudenti con l'opzione grsecurity. Essendo troppo
aggressivi con le impostazioni di sicurezza si potrebbe causare a certi programmi (tipo X) di non funzionare propriamente.
Se in dubbio, lasciate stare.
|
Sceglietene uno e unitelo (emerge) al sistema:
Esempio 46: Installare i sorgenti del kernel |
# emerge sys-kernel/gentoo-sources
|
una volta che il kernel è disponibile, è il momento di personalizzarlo e compilarlo:
Notate che /usr/src/linux è un link simbolico ai sorgenti del kernel attualmente
installato e che è impostato automaticamente dal Portage al momento dell'emerge. Se avete più
di un kernel, è necessario impostare il link /usr/src/linux affinché punti ai sorgenti
corretti, prima di procedere.
Esempio 47: Compilazione del kernel |
# cd /usr/src/linux
# make menuconfig
# make dep && make clean bzImage modules modules_install
# cp /usr/src/linux/arch/i386/boot/bzImage /boot
|
Attenzione:
Affinché il vostro kernel funzioni a dovere, ci
sono alcune opzioni che dovrete essere sicuri siano
incluse nel kernel e non compilate come modulo.
Assicuratevi di abilitare "ReiserFS" se avete partizioni
di questo tipo; la stessa cosa vale per "Ext3".
Se state usando partizioni XFS, abilitate l'opzione "SGI XFS
filesystem support". E' sempre una buona idea
lasciare il supporto per ext2 abilitato sia che lo
usiate o no.
Seguono alcune opzioni comuni di cui avrete bisogno:
|
Esempio 48: opzioni make menuconfig |
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers"
...
File systems --->
<*> Reiserfs support
...
<*> Ext3 journalling file system support
...
[*] Virtual memory file system support (former shm fs)
...
<*> JFS filesystem support
...
[*] /proc file system support
[*] /dev file system support (EXPERIMENTAL)
[*] Automatically mount at boot
[ ] /dev/pts file system for Unix98 PTYs
...
<*> Second extended fs support
...
<*> XFS filesystem support
|
Se state usando hardware di tipo RAID avrete bisogno di abilitare un paio
di opzioni in più nel kernel: Per i controller Highpoint RAID, abilitate il supporto
per il chipset hpt366, per i controller IDE RAID e Highpoint 370 software RAID.
Per i controller Promise abilitate il supporto PROMISE PDC202{46|62|65|67|68|69|70},
per i controller IDE RAID e Support Promise software RAID (Fasttrak(tm))
Se usate PPPoE per connettervi a internet, avrete bisogno delle seguenti
opzioni nel kernel (preferibilmente come moduli): "PPP (point-to-point protocol) support",
"PPP support for async serial ports", "PPP support for sync tty ports".
Le due opzioni relative alla compressione non sono strettamente necessarie così come "PPP over Ethernet"
che potrebbe essere usata solo da rp-ppoe quando il kernel è in modalità PPPoE.
Se avete un masterizzatore IDE, avrete bisogno di abilitare
l'emulazione SCSI nel kernel. Abilitate "ATA/IDE/MFM/RLL support"
---> "IDE, ATA and ATAPI Block devices" ---> "SCSI emulation
support" (abilitato di solito come modulo), qundi sotto "SCSI support",
abilitate "SCSI support", "SCSI CD-ROM support" e
"SCSI generic support" (abilitati come moduli anche questi).
Se avete scelto di usarli come moduli, allora digitate echo -e
"ide-scsi/nsg/nsr_mod" >> /etc/modules.autoload per averli
automaticamente al boot.
Nota:
Per coloro che lo preferiscono, è possibile installare una [distribuzione] Gentoo Linux con
kernel 2.2. Per questo c'è da pagare un prezzo: perdere le ottime caratteristiche che sono
prerogativa della serie 2.4 del kernel (come il supporto per i filesystem di tipo XFS e tmpfs,
iptables, e altro), anche se Gentoo Linux con kernel 2.2 può essere aggiornato per il supporto
a ReiserFS e a devfs. Gli script di boot di Gentoo Linux richiedono che tmpfs o ramdisk siano
supportati dal kernel, così coloro che vogliono usare il kernel 2.2 devono essere sicuri di avere
il support per ramdisk incluso nel kernel e non compilato come modulo.
E' che un flag gentoo=notmpfs sia aggiunto in
/boot/grub/menu.lst nella linea del kernel per la serie 2.2 in modo tale che gli
script di boot montino ramdisk invece di tmpfs. Se scegliete di non usare devfs, devrete
aggiungere una riga del tipo gentoo=notmpfs,nodevfs.
|
Il nuovo kernel e i suoi moduli sono ora
installati. C'è ora bisogno di scegliere il
sistema di logging che dovrà essere installato.
E' disponibile il tradizionale sistema di
logging sysklogd. Ma ci sono anche syslog-ng e
metalog. Utenti che preferivano
sysklogd (il quale non brilla per prestazioni) si
stanno rivolgendo verso syslog-ng e metalog. Se siete
in dubbio, potete provare metalog che sembra essere
abbastanza popolare. Per installare il logger
scelto, digitate uno dei seguenti quattro comandi:
Esempio 49: Installazione di un sistema di log a scelta |
# emerge sys-apps/sysklogd
# rc-update add sysklogd default
# emerge app-admin/syslog-ng
# rc-update add syslog-ng default
# emerge app-admin/metalog
# rc-update add metalog default
# emerge app-admin/msyslog
# rc-update add msyslog default
|
Importante:
Metalog scrive il suo output su disco a blocchi,
così i messaggi non sono immediatamente
registrati nei log di sistema. Se state tentando di
provare un daemon, questa caratteristica (che ne
migliora le prestazioni) potrebbe non essere la
soluzione migliore. Una volta che il sistema è a
regime potrete provare a mandare al daemon di metalog
un segnale di tipo USR1 che temporaneamente dovrebbe
disabilitare il suddetto comportamento (il buffering
dei messaggi prima di scriverli in blocco). Questo
significa che tail -f /var/log/logfile
dovrebbe funzionare come ci aspettiamo. Per tornare alla
situazione standard invieremo un nuovo segnale,
questa volta di tipo USR2. Se voleste disabilitare permanentemente
il buffering, potete cambiare l'opzione METALOG_OPTS da "-B" a
"-B -s" in /etc/conf.d/metalog.
|
Se volete, potete ora scegliere il pacchetto cron che
preferite. Per ora offriamo, dcron, fcron e vcron.
Se non sapete quale scegliere tra questi, potete usare
vcron. I pacchetti possono essere
installati come segue:
Esempio 50: Installazione di un pacchetto cron |
# emerge sys-apps/dcron
# crontab /etc/crontab
# emerge sys-apps/fcron
# crontab /etc/crontab
# emerge sys-apps/vcron
# crontab /etc/crontab
# rc-update add *cron default
|
Per maggiori informazioni sui programmi e daemon che partono al boot,
date un'occhiata alla guida rc-scripts.
16. Installazione di altri pacchetti necessari
Se avete bisogno di rp-pppoe per connettervi alla rete, siate consci che a
questo punto non è stato ancora installato. Potrebbe essere una buona cosa farlo ora.
Esempio 51: Installazione di rp-pppoe |
# USE="-X" emerge rp-pppoe
|
Nota:
Con l'impostazione USE="-X" impediamo che pppoe installi
l'interfaccia grafica opzionale, il che è una buona cosa in quanto verrebbe installato
anche l'ambiente grafico X con tutte le sue dipendenze. Potrete sempre ricompilare
rp-pppoe con il supporto X in seguito.
|
Nota:
Notate che adesso rp-pppoe è installato ma non configurato. Dovrete
configurarlo usando adsl-setup dopo aver riavviatoGentoo per la prima
volta.
|
Potreste aver bisogno di installare pacchetti
addizionali nel Portage tree, se state usando ad
esempio XFS, ReiserFS o LVM. Per XFS, dovreste installare
il pacchetto xfsprogs:
Esempio 52: Installazione dei tools per i filesystem |
# emerge sys-apps/xfsprogs
# emerge sys-apps/reiserfsprogs
# emerge jfsutils
# emerge sys-apps/lvm-user
|
Se state usando un laptop e volete usare gli slot PCMCIA al vostro primo
reboot, dovrete installare il pacchetto pcmcia-cs.
Esempio 53: Emerge pcmcia-cs |
# emerge sys-apps/pcmcia-cs
|
Attenzione:
Dovrete reinstallare pcmcia-cs dopo l'installazione per far si che PCMCIA lavori correttamente.
|
17. Modifica di /etc/fstab per la vostra macchina
Il vostro sistema Gentoo Linux è ormai pronto
all'uso. Tutto ciò di cui abbiamo bisogno
è di configurare alcuni importanti file di
sistema e installare il GRUB boot loader.
Il primo file che abbiamo bisogno di configurare
è /etc/fstab. Ricordate che se
avete scelto una partizione di avvio di tipo ReiserFS dovrete
aggiungere una opzione notail.
Ricordatevi inoltre di specificare il tipo di
filesystem appropriato per ogni partizione
(ext2, ext3 o reiserfs).
Usate qualcosa tipo l' /etc/fstab
mostrato sotto, ma naturalmente sostituite "BOOT",
"ROOT" e "SWAP" con i block device che avete scelto
di usare (hda1, hda2, ecc.).
Esempio 54: Configurazione dell'fstab |
/dev/BOOT /boot ext2 noauto,noatime 1 2
/dev/ROOT / ext3 noatime 0 1
/dev/SWAP none swap sw 0 0
/dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0
proc /proc proc defaults 0 0
|
Attenzione:
Notate che /boot NON è montato al boottime. Questo per proteggere i
dati in /boot dal pericolo di corruzione. Se avete bisogno di accedere
a /boot ricordatevi di montarlo!
|
Diamo una password a root
Prima di dimenticarcene, diamo una password a root digitando:
Esempio 55: Cambiamo la password di root |
# passwd
|
Vorrete anche aggiungere un altro utente, oltre a root, per un uso quotidiano.
Per questo consultate le FAQ di Gentoo.
Impostiamo il nome della macchina
Create questo file in modo da contenere il
nome di dominio "fully-qualified" della vostra macchina, su una singola riga, p.e.
nomemacchina.nomedominio.it.
Esempio 56: Impostare l'hostname |
# echo nomemacchina.nomedominio.it > /etc/hostname
|
Modifichiamo /etc/hosts
Questo file contiene una lista di indirizzi IP
associati al relativo hostname. E' usato dal
sistema per risolvere indirizzi IP di macchine che
possono non essere sul vostro DNS server.
Segue un esempio di questo file:
Esempio 57: Editare il file /etc/hosts |
127.0.0.1 localhost
192.168.1.1 nomemacchina.nomedomimio nomemacchina
|
Nota:
Se siete in una rete DHCP, potrebbe essere utile impostare localhost
col nome attuale della macchina. Questo aiuterà GNOME e altri programmi nella
risoluzione dei nomi.
|
Configurazione finale della rete
Aggiungete il nome di ogni modulo necessario per il
corretto funzionamento del vostro sistema in
/etc/modules.autoload (potete anche
aggiungere le opzioni necessarie sulla stessa riga).
Alla partenza di Gentoo Linux, questi moduli
verranno automaticamente caricati. Particolarmente
importanti sono i moduli relativi alla scheda di
rete (naturalmente se li avete compilati come moduli
;-)):
Esempio 58: /etc/modules.autoload |
3c59x
|
Editate lo script /etc/conf.d/net affinché
la rete sia configurata per il primo avvio:
Esempio 59: Configurare la rete in modo permanente |
# nano -w /etc/conf.d/net
# rc-update add net.eth0 default
|
Se aveste più schede di rete necessiterete di
aggiungere altri script
net.ethx
per ognuna ( = 1, 2, ...):
Esempio 60: Interfacce di rete multiple |
# cd /etc/init.d
# cp net.eth0 net.eth
# rc-update add net.eth default
|
Se avete una scheda PCMCIA installata, date una rapida
occhiata a /etc/init.d/pcmcia per verificare se
è conforme alle vostre esigenze e aggiungete le righe seguenti
in testa al file /etc/init.d/net.ethx:
Esempio 61: Aggiungiamo dipendenze PCMCIA in /etc/init.d/net.ethx |
depend() {
need pcmcia
}
|
In questo modo i driver pcmcia verranno caricati automaticamente
ogni volta che verrà avviata la rete.
18. Ultimi passi: configurazioni di base (includendo l'impostazione per la mappatura internazionale della tastiera)
Esempio 62: Configurazione di base |
# nano -w /etc/rc.conf
|
Dando una scorsa al file troverete diverse variabili
che inizializzano alcune configurazioni di base.
Vorrete essere sicuri che CLOCK sia quello
voluto. Per usare tastiere con layout diverso da
quello americano potrete impostare la variabile
KEYMAP (cercate in /usr/share/keymaps le possibilità).
19. Configurazione di un bootloader
Note
Nello spirito di Gentoo, gli utenti possono ora scegliere tra più di un bootloader.
Usando il nostro "virtual package system", gli utenti possono scegliere sia GRUB
che LILO come loro bootloader.
E' chiaro che non è necessario avere entrambi i bootloader installati.
Infatti potrebbe essere un ostacolo, vi consigliamo di sceglierne uno solo.
Importante:
Se state installando Gentoo Linux su un sistema con una scheda video
GeForce integrata con chipset NVIDIA nForce o nForce2, dovreste usare
LILO ed evitare GRUB. Con l'abilitazione del video on-board, l'area di
memoria (low memory) della vostra RAM può essere usata come RAM
video. Dato che anche GRUB usa la stessa area di memoria al momento
del boot, si può verificare una condizione di "out of memory".
Così se avete una nForce o potenzialmente altre schede on-board video,
usate LILO. Oltretutto se state usando schede video off-board, potrebbe
essere simpatico avere la possibilità di rimuovere la scheda video e usare
quella on-board in caso di bisogno, non è vero? :)
|
Configurazione di GRUB
La parte più critica per capire la
configurazione di GRUB è familiarizzare con la
notazione che GRUB usa per definire i dischi e le
partizioni. La partizione Linux
/dev/hda1 è chiamata
(hd0,0) sotto GRUB.
Nota che le parentesi che racchiudono hd0,0 sono
richieste. I dischi vengono contati a partire da
zero invece che da "a" e le partizioni partono da
zero invece che da uno.
Dovrete essere consapevoli che con periferiche hd sono contati solo i dischi
rigidi e non periferiche atapi-ide come cdrom e masterizzatori e che lo
stesso costrutto vale anche per periferiche SCSI. (Di solito queste prendono
numeri alti rispetto a periferiche ide a eccezione di quando il bios è configurato
per fare il boot da device SCSI).
Così facendo finta che abbiate un disco su /dev/hda, un lettore cdrom su /dev/hdb,
un masterizzatore su /dev/hdac e un secondo disco su /dev/hdd e nessun disco
SCSI, la partizione /dev/hdd7 diventa (hd1,6).
Tutto questo potrebbe suonare complicato, ed è effettivamente così, ma come
vedrete, grub offre un meccanismo di completamento col tasto TAB, che diviene
funzionale per coloro che hanno un notevole numero di dischi e partizioni e sono
un po' smarriti con lo schema numerico del grub. Avendo preso coscienza di questo,
è il momento di installare GRUB. Appena avrete preso confidenza con questa notazione,
potrete convertire le partizioni di boot e root in un formato comprensibile a GRUB e scriverle
nel suo file di configurazione. Proviamo quindi a installare GRUB.
La via più breve per installare GRUB è semplicemente digitare grub al prompt:
Esempio 63: Installare GRUB |
# emerge grub
# grub
|
Importante:
Questa parte non funzionerà se state usando hardware RAID. Saltate alla sezione sulla creazione
del file grub.conf. Dopodiché completerete il setup di grub per i controller RAID.
|
Vi verrà presentato il "grub command-line
prompt: grub>. Ora dovrete digitare i
giusti comandi per installare il record di boot del GRUB
nel vostro disco. Nel mio esempio, io voglio installare
il record di boot nell'MBR (master boot record)
del mio disco rigido, in modo tale da vedere il GRUB
prompt a ogni riavvio del mio computer. Nel mio
caso i comandi che devo digitare sono:
Esempio 64: Installazione di GRUB nell'MBR |
grub> root (hd0,0)
grub> setup (hd0)
|
Esempio 65: Installazione di GRUB non nell'MBR |
grub> root (hd0,0)
gurb> setup (hd0,4)
grub> quit
|
Come funzionano i comandi. Il primo comando root (
) dice a GRUB la locazione della partizione di
boot (nel nostro esempio /dev/hda1 o
(hd0,0) nella terminologia GRUB. Il
secondo comando setup ( ) dice a GRUB dove
installare il record di boot e sarà configurato
per cercare i suoi file di configurazione nella
locazione root ( ) che avete specificato.
Nel mio caso, voglio che il record di boot sia
installato nell'MBR del disco rigido, così
specificherò semplicemente /dev/hda (anche
conosciuto come (hd0)). Se sto usando
un altro boot loader e voglio installare GRUB come
boot loader secondario, avrei dovuto installare il
GRUB nel record di boot di una particolare partizione.
In questo caso avrei dovuto specificare una
particolare partizione invece dell'intero disco. Una
volta che il GRUB è stato installato con
successo, potete uscire dal GRUB digitando
quit.
Nota:
Il meccanismo completamento (TAB) del grub può essere usato all'interno
del grub. Supponiamo che abbiate scritto root ( se ora premete
il tasto TAB, vi dovrebbe essere mostrata una lista di periferiche disponibili
(non solo dischi), ripremendo il tasto TAB dopo aver scritto root (hd,
grub vi dovrebbe mostrare solo i dischi e ripremendo il TAB dopo aver scritto
root (hd0, dovreste avere la lista delle partizioni del primo disco.
Il controllo della sintassi con cui il grub definisce le partizioni unito al completamento
dovrebbe aiutarvi a fare le giuste scelte.
|
L'installazione di Gentoo è ora completa, dobbiamo solo creare il file /boot/grub/grub.conf
che dovrebbe mostrare un menu quando il sistema viene riavviato.
Importante:
Per assicurare un compatibilità con le versioni precedenti, vi consigliamo di creare un link tra grub.conf
e menu.lst. Potete farlo digitando ln -s /boot/grub/grub.conf /boot/grub/menu.lst.
|
Creiamo il file grub.conf (nano -w /boot/grub/grub.conf),
e aggiungiamo le seguenti righe:
Esempio 66: Esempio di grub.conf |
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
title=Gentoo Linux
root (hd0,0)
kernel (hd0,0)/boot/bzImage root=/dev/hda3
title=Gentoo Linux su RAID
root (hd0,0)
kernel (hd0,0)/boot/bzImage root=/dev/ataraid/dXpY
title=Windows XP
root (hd0,5)
cavetenloader (hd0,5)+1
|
Nota:
(hd0,0) deve essere scritto senza spazi tra
le parentesi.
|
Importante:
Se avete configurato l'emulazione SCSI per un masterizzatore
IDE, per renderlo attivo avrete bisogno di aggiungere un "hdx=ide-scsi"
alla linea del kernel nel menu.lst (dove "hdx" dovrebbe essere il device
del vostro masterizzatore).
|
Dopo aver salvato il file, l'installazione di Gentoo
Linux è completa. Selezionando la prima opzione
diciamo al GRUB di fare il boot con Gentoo Linux. La
seconda parte del file grub.conf è opzionale,
mostra solo come usare GRUB per fare il boot anche
con partizioni Windows.
Nota:
(hd0,0) dovrebbe puntare alla vostra
partizione "boot" (/dev/hda1 nel nostro
esempio) e /dev/hda3 dovrebbe puntare
al filesystem root. La partizione (hda0,5) contiene il boot loader di NT.
|
Nota:
Il percorso dell'immagine del kernel è relativa alla partizione /boot.
Se per esempio avete la partizione /boot (hd0,0)
separata dalla root (/) (hd0,1), tutti i percorsi del
grub.conf diverrebbero /bzImage.
|
Ancora, se avete bisogno di passare delle opzioni al
kernel, aggiungetele semplicemente alla fine del
comando kernel. Stiamo già passandogli
un'opzione (root=/dev/hda3), ma possiamo
passargliene delle altre. In particolare potreste
disabilitare il supporto per il devfs (non è
raccomandato a meno che non sappiate cosa state
facendo) aggiungendo l'opzione gentoo=nodevfs
al comando kernel.
Nota:
A differenza delle prime versioni di Gentoo
Linux, non è più necessario aggiungere devfs=mount alla fine
della riga kernel per abilitare il
devfs. Nelle nuove versioni è abilitato
per default.
|
Configurare il LILO
Mentre GRUB può essere una nuova alternativa per molte persone, non è
sempre la scelta migliore. LILO, il LInuxLOader, è il più provato e un vero cavallo da soma
dei bootloader di Linux. Ecco come installare LILO se lo volete usare al posto di GRUB:
Il primo passo è installarlo:
Esempio 67: Emerge LILO |
# emerge lilo
|
Ora è il momento di configurare LILO. Ecco qui un esempio del file di configurazione lilo.conf.
Esempio 68: Esempio di lilo.conf |
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
message=/boot/message
lba32
default=linux
image=/boot/vmlinuz-2.4.20
label=linux
read-only
root=/dev/hda5
#For dual booting windows/other OS
other=/dev/hda1
label=dos
|
boot=/dev/hda dice a LILO di installarsi nel primo disco del primo controller IDE.
map=/boot/map specifica il file di map. In un normale uso, questo non dovrebbe essere modificato.
install=/boot/boot.b dice a LILO di installare il file specificato come nuovo settore di boot.
Per un uso normale, questo non dovrebbe essere alterato. Se questa linea è omessa, LILO assumerà
un /boot/boot.b di default come file da utilizzare.
L'esistenza di prompt dice a LILO di mostrare qualsiasi cosa sia fornito nella linea message.
Mentre non è raccomandato che rimuoviate la linea prompt, se lo doveste fare, potreste ancora
avere un prompt premendo il tasto [Shift] mentre la vostra macchina fa il boot.
timeout=50 imposta il tempo durante il quale LILO aspetterà qualche input prima di procedere
con il boot di default. Questo è misurato in decine di secondi, con 50 come default.
message=/boot/message si riferisce alla shermata che LILO mostra per permetterti di selezionare
il sistema operativo o il kernel da avviare.
lba32 descrive la geometria del disco. Un altro parametro comune è linear. Non dovreste cambiare
questa linea a meno che non siate veramente sicuri di quello che state facendo. Altrimenti potreste avere
un sistema non avviabile.
default=linux si riferisce al systema operativo che il LILO avvierà di default con le opzioni che
seguono dopo questa linea
image=/boot/vmlinuz-2.4.20 specifica il kernel da avviare.
label=linux è il nome del sistema operativo visualizzato nella schermata di LILO.
In questo caso è anche il nome a cui si riferisce la linea di default.
read-only specifica che la partizione di root (vedi la riga seguente) è di sola lettura e non
può essere alterata durante il processo di boot.
root=/dev/hda5 dice al LILO quale partizione del disco deve essere usata come partizione di root.
Nota: Un ringraziamento a RedHat.com per queste informazioni. |
Dopo avere editato il nostro lilo.conf, è il momento di eseguire LILO per caricare queste informazioni nell'MBR:
Esempio 69: Eseguire LILO |
# /sbin/lilo
|
LILO è configurato e ora la tua macchina è pronta per l'avvio di Gentoo Linux!
20.Creazione dei dischi di avvio
I dischi di avvio di GRUB
E' sempre una buona idea creare un dischetto di avvio la prima volta che
installiamo una qualsiasi distribuzione Linux. Questa è una sicurezza e
generalmente non è una cattiva idea. Se state usando qualche tipo
di hardware RAID, potreste avere necessità di creare un disco di avvio
di GRUB. Con questi tipi di hardware RAID non è possibile installare grub dalla shell dalla quale si è fatto "chroot".
Se questo è il vostro caso, create un disco di avvio di GRUB e quando riavviate la prima volta
potrete installare GRUB nell'MBR.
Create il vostro disco di avvio in questo modo:
Esempio 70: Creare un disco di avvio di GRUB |
# mke2fs /dev/fd0# mount /dev/fd0 /mnt/floppy
# mkdir -p /mnt/floppy/boot/grub
# cp /usr/share/grub/i386-pc/stage1 /mnt/floppy/boot/grub/
# cp /usr/share/grub/i386-pc/stage2 /mnt/floppy/boot/grub/
# umount /mnt/floppy
# grub
grub> root (fd0)
grub> setup (fd0)
grub> quit
|
Ora riavviate e al prompt del grub (da floppy), potrete eseguire i necessari comandi root e setup.
I dischi di avvio di LILO
Anche se state usando LILO è una buona idea creare un disco di avvio:
Esempio 71: Creare un disco di avvio di LILO |
# dd if=/boot/your_kernel of=/dev/fd0
|
21. L'installazione è completa!
Gentoo Linux è installato. Rimane solo da
uscire dalla shell, fare l'umount delle partizioni e
riavviare il sistema:
Esempio 72: Riavviare il sistema |
# etc-update
# exit
# cd /
# umount /mnt/gentoo/boot
# umount /mnt/gentoo/proc
# umount /mnt/gentoo
# reboot
|
Nota:
Dopo il riavvio, è una buona idea eseguire il
comando update-modules per creare il file
/etc/modules.conf. Invece di modificare
questo file direttamente, dovreste generalmente
applicare le modifiche al file
/etc/modules.d.
|
Importante:
Ricordate che se state usando hardware RAID, dovreste usare il disco di avvio
per il primo reboot e fare i passaggi per installare il grub
nell'MBR. Se l'avete già fatto, congratulazioni.
|
Se avete qualche domanda o vi piacerebbe essere
coinvolti con gli sviluppatori di Gentoo Linux,
considerate di unirvi alle nostre mailing lists
gentoo-user e gentoo-dev (c'è un link "click to subscribe"
nel sito ufficiale). Abbiamo anche una
comoda guida Desktop configuration
guide che vi aiuterà a continuare nel configurare il vostro nuovo sistema Gentoo Linux per la
parte grafica e un' utile guida Portage user guide
che vi aiuterà a familiarizzare con il sistema Portage. Potrete trovare il resto della documentazione Gentoo
qui. Se avete altre domande che riguardano
l'installazione o qualsiasi altra cosa in merito, leggete le FAQ di Gentoo Linux. Benvenuti in Gentoo Linux!
22. Gentoo-Stats
Il programma per le statistiche di utilizzo di Gentoo Linux è partito come tentativo di dare agli
sviluppatori un modo per capire chi sono gli utilizzatori di base. Il programma raccoglie informazioni
circa l'uso di Gentoo Linux e ci aiuta a dare una priorità alle fasi di sviluppo. L'installazione è completamente
opzionale ma vi saremmo grati se decideste di farla. Le statistiche possono essere viste su
http://stats.gentoo.org/
Il server gentoo-stats assegnerà un ID univoco al vostro sistema. Questo ID sarà usato per assicurare
che ogni sistema sia contato una sola volta. Questo ID non sarà usato per identificare individualmente
il vostro sistema e nemmeno per identificare il vostro IP o altre informazioni personali. E' stata presa ogni
precauzione per assicurare la vostra privacy nel sistema di sviluppo. Ecco le cose che vengono monitorare
dal programma "gentoo-stats":
- pacchetti installati e la loro versione
- informazioni sulla CPU: velocità (MHz), marca, modello, CPU flag (come "mmx" o "3dnow")
- informazioni sulla memoria (RAM fisica totale disponibile, spazio di swap totale disponibile)
- schede PCI e chipset delle schede di rete
- il profilo Gentoo Linux che sta usando la vostra macchina (cioè dove sta puntando il link /etc/make.profile).
Siamo consapevoli che la conoscenza di informazioni sensibili è un pericolo per molti utenti Gentoo Linux
(così come lo è per gli sviluppatori).
-
A meno che non lo modifichiate, il programma gentoo-stats non trasmetterà informazioni sensibili come
password, dati di configurazione, taglia delle scarpe...
-
La trasmissione del vostro indirizzo di email è opzionale ed è disabilitato di default.
-
L'indirizzo IP che origina la trasmissione dei vostri dati non verrà mai registrato per potervi identificare.
Non c'è l'accoppiata "indirizzo IP/ID del sistema".
L'installazione è semplice, dovete solo eseguire i seguenti comandi:
Esempio 73: Installare gentoo-stats |
# emerge gentoo-stats
# gentoo-stats --new
|
Il secondo comando richiederà un nuovo ID per il vostro sistema ed entrerà automaticamente
dentro /etc/gentoo-stats/gentoo-stats.conf. Potete dare un'occhiata a questo
file per vedere le opzioni di configurazione aggiuntive.
Il programma dovrebbe quindi essere eseguito a cadenza regolare (gentoo-stats non dovrebbe
essere eseguito come root). Aggiungete questa riga al vostro crontab:
Esempio 74: Aggiungere gentoo-stats al cron |
0 0 * * 0,4 /usr/sbin/gentoo-stats --update > /dev/null
|
Il programma gentoo-stats è un semplice script perl che può essere visto usando il vostro editor preferito.
|