[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
2. Scelta della modalità di installazione
Indice:
2.a. Richieste Hardware
Introduzione
Prima ancora di cominciare vengono elencate le richieste hardware necessarie per
installare Gentoo sulla propria macchina.
Richieste hardware
| CPU (Big Endian port) |
MIPS3, MIPS4, MIPS5 o MIPS64-class CPU |
| CPU (Little Endian port) |
MIPS4, MIPS5 o MIPS64-class CPU |
| Memoria |
128 MB |
| Spazio su disco |
3.0 GB (escluso lo spazio per swap) |
| Spazio per swap |
Almeno 256 MB |
Si dovrebbe anche controllare Requisiti hardware Gentoo/MIPS Linu
sul sito di Gentoo.
2.b. Note di installazione
Una nota sui processori e sulle architetture
Su molte architetture, il processore cambia spesso, e quello nuovo si costruisce
sulla base di quello precedente. MIPS non fa eccezione. Ci sono molte CPU per la
architettura MIPS. Per scegliere il tarball dell'immagine dello stage netboot e
le CFLAGS appropriate, si deve conoscere il tipo di CPU che si usa.
Questi tipi sono riferiti a Instruction Set Architecture.
| MIPS ISA |
32/64-bit |
CPU |
| MIPS 1 |
32-bit |
R2000,
R3000
|
| MIPS 2 |
32-bit |
R6000
|
| MIPS 3 |
64-bit |
R4000,
R4400,
R4600,
R4700
|
| MIPS 4 |
64-bit |
R5000,
RM5000,
RM7000,
R8000,
R9000,
R10000,
R12000,
R14000,
R16000
|
| MIPS 5 |
64-bit |
Nessuna |
| MIPS32 |
32-bit |
AMD serie Alchemy, 4kc, 4km, molti altri... Ci sono alcune revisioni nella
versione MIPS32 ISA
|
| MIPS64 |
64-bit |
Broadcom SiByte SB1, 5kc ... etc... Ci sono alcune revisioni nella versione
MIPS64 ISA
|
Nota:
Il livello ISA MIPS5 è stato fatto dalla Silicon Graphics nel 1994, ma
non è mai stato usato su una CPU commerciale. È presente come parte del ISA
MIPS64.
|
Nota:
Le ISA MIPS32 e MIPS64 possono creare confusione. Il livello ISA
MIPS64 è un superset di ISA MIPS5, e include tutte le istruzioni
da MIPS5 e ISA precedenti. MIPS32 è il subset 32 bit di
MIPS64, esiste perchè la maggior parte delle applicazioni richiedono solo
32 bit.
|
Altro importante concetto è quello di endianness. Endianness si riferisce
al modo in cui una CPU legge le parole dalla memoria principale. Una parola può
essere letta sia con big endian (il byte più significativo), sia con
little endian (il byte meno significativo). Le macchine Intel x86 sono
principalmente Little endian, mentre le macchine Apple e Sparc sono Big Endian.
Su MIPS, possono essere entrambi. Per separarle, si aggiunge el
all'architettura per denotare le little endian.
| Architettura |
32/64-bit |
Endianness |
Macchine |
| mips |
32-bit |
Big Endian |
Silicon Graphics |
| mipsel |
32-bit |
Little Endian |
Cobalt Servers |
| mips64 |
64-bit |
Big Endian |
Silicon Graphics |
| mips64el |
64-bit |
Little Endian |
Cobalt Servers |
Per chi volesse sapere di più su ISA, può consultare i seguenti siti.
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.
2.c. Descrizione dell'avvio da rete (Netbooting)
In questa sezione si spiega tutto ciò che è necessario per fare l'avvio da rete
(network boot) con una workstation Silicon Graphics o Cobalt Server. È solo una
piccola guida, per altre informazioni si consiglia di leggere il documentoPostazioni diskless usando Gentoo Linux.
Di cosa si ha bisogno: In base alla macchina, ci sarà bisogno di determinato
hardware per completare con successo l'avvio da rete e l'installazioe di Linux.
-
In generale:
-
DHCP/BOAMD serie Alchemy, 4kc, 4km, molti altri. Ci sono diverse
modifiche nella versione MIPS32 ISA. server OTP (raccomandato ISC DHCPd)
- Molta pazienza
-
Per workstation Silicon Graphics:
- TFTP server (raccomandato tftp-hpa)
-
Se si desidera o è necessario usare la console seriale:
-
MiniDIN8 --> cavo seriale RS-232 (necessario per sistemi IP22 e
IP28)
- Null-modem cable
- VT100 o ANSI terminale compatibile con capacità di 9600 baud
-
Per Cobalt Servers (non l'originale Qube):
- NFS server
- Null-modem cable
- VT100 o ANSI terminale compatibile con capacità di 115200 baud
Nota:
Le macchine SGI usano un connettore MiniDIN 8 per le porte seriali. I cavi del
modem Apple funzionano bene come cavi seriali, ma per le macchine Apple che
hanno USB & modem interni, questi sono più difficili da trovare. Un buon
diagramma è disponibile nel Linux/MIPS Wiki, e la
maggior parte dei negozi di elettronica dovrebbero avere il plug richiesto.
|
Nota:
Il terminale può essere un reale VT100/ANSI o un PC che esegue un software di
emulazione terminale (come HyperTerminal, Minicom, seyon, Telex, xc, screen: uno
di questi va bene). Non è un problema quale piattaforma sia eseguita dalla
macchina, basta che abbia una porta seriale RS-232 che si possa usare, e un
software adatto.
|
Nota:
Notare che questa guida non tratta di Qube. Il server Qube non ha una porta
seriale nella sua configurazione predefinita, e non è possibile installare
Gentoo senza l'aiuto di un cacciavite e di una macchina sostitutiva per fare
l'installazione. Il seguente sito ha una guida per installare Gentoo su queste
macchine. http://www.metzner.org/projects/qube/
|
Impostare TFTP e DHCP -- una breve guida
Questa non è una guida completa, si può usare per cominciare una installazione
da zero, o usare i suggerimenti per una impostazione esistente per supportare
l'avvio da rete.
Notare che i server usati non devono per forza eseguire Gentoo Linux, si può
usare FreeBSD o un'altra piattaforma Unix-like. In questa guida, si assume però
di usare Gentoo Linux. Se lo si desidera, si può eseguire TFTP/NFS su una
macchina differente del server DHCP.
Avvertenza:
Il Team Gentoo/MIPS non può aiutare gli utenti che usano altri sistemi operativi
come server di netboot. Se si sceglie un sistema operativo differente, si assume
che l'utente conosca cosa sta facendo.
|
Il primo passo è configurare DHCP. Per fare rispondere il demone ISC DHCP alle
richieste BOOTP (richiesto da SGI & Cobalt BOOTROM), si deve abilitare il
BOOTP dinamico sul range di indirizzi in uso; poi impostare una voce per ogni
client che punta alla immagine boot.
Codice 3.1: Installare ISCs DHCP |
# emerge dhcp
|
Si deve creare il /etc/dhcp/dhcpd.conf. Qui c'è un esempio di
configurazione per cominciare.
Codice 3.2: dhcpd.conf |
ddns-update-style none;
subnet 192.168.10.0 netmask 255.255.255.0 {
pool {
range dynamic-bootp 192.168.10.1 192.168.10.254;
}
option domain-name-servers 203.1.72.96, 202.47.56.17;
option routers 192.168.10.1;
authoritative;
allow bootp;
}
|
Con questa impostazione, si può aggiungere qualsiasi numero di client nella
subnet. Si vedrà più avanti cosa è necessario mettere.
Il prossimo passo è impostare il server TFTP. È raccomandato usare
tftp-hpa poichè è l'unico demone TFTP conosciuto che funziona
correttamente. Si deve installarlo:
Codice 3.3: Installare tftp-hpa |
# emerge net-ftp/tftp-hpa
|
Questo crea /tftproot per immagazzinare le immagini netboot. Si può
spostarla in qualsiasi altra parte se lo si desidera. In questo manuale si
assume che venga lasciata nel suo percorso predefinito.
2.d. Avvio da rete su workstation SGI
Scaricare una immagine netboot
Ci sono molte immagini disponibili per essere scaricate, dipende su quale
sistema si vogliono installare. Sono tutte etichettate per il sistema e la CPU
sui quali saranno compilate. I tipi di macchine sono:
| Codename |
Macchine |
| IP22 |
Indy, *Indigo 2, Challenge S |
| IP26 |
*Indigo 2 Power |
| IP27 |
Origin 200, Origin 2000 |
| IP28 |
*Indigo 2 Impact |
| IP30 |
Octane |
| IP32 |
O2 |
Nota:
* È un errore comune scambiare IRIS Indigo (IP12 w/ R3000 CPU or IP20 w/ R4000
CPU, nessuna può eseguire Linux), Indigo 2 (IP22, che esegue bene Linux),
R8000-based Indigo 2 Power (non esegue bene Linux) e R10000-based Indigo 2
Impact (IP28, che è in fase di sperimentazione). Tenere a mente che queste
macchine sono differenti.
|
Nel filename r4k si riferisce ai processori R4000-series, r5k a R5000, rm5k
a RM5200 e r10k a R10000. Le immagini disponibili si trovano sui mirror Gentoo.
Configurazione DHCP per un client SGI
Dopo averlo scaricato, mettere il file della immagine decompressa nella
directory /tftpboot. (Usare bzip2 -d per decomprimerla)
Modificare /etc/dhcp/dhcpd.conf e aggiungere la voce per il client
SGI.
Codice 4.1: dhcpd.conf per SGI Workstation |
subnet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx {
host sgi {
hardware ethernet 08:00:69:08:db:77;
next-server 192.168.10.1;
fixed-address 192.168.10.3;
filename "/gentoo-r4k.img";
}
}
|
Opzioni del kernel
È quasi fatta, ma ci sono alcune ottimizzazioni da fare. Aprire una console con
i privilegi root, e dare i seguenti comandi.
Codice 4.2: Alcune ottimizzazioni per macchine SGI con lo scopo di far funzionare correttamente TFTP |
# echo 1 > /proc/sys/net/ipv4/ip_no_pmtu_disc
# echo "2048 32767" > /proc/sys/net/ipv4/ip_local_port_range
|
Dovrebbe essere sufficiente per fare andare il server Linux con SGI Prom.
Avviare i demoni
A questo punto, si dovrebbe essere pronti a avviare i demoni. Quindi digitare i
seguenti comandi:
Codice 4.3: Avviare i demoni DHCP e TFTP |
# /etc/init.d/dhcp start
# /etc/init.d/in.tftpd start
|
Se è andato tutto bene, si dovrebbe poter proseguire con il manuale. Se il
server DHCP non si avvia, provare a eseguire 'dhcpd' da riga di comando (se si
visualizza un 'exiting', vedere sotto quali sono i problemi).
Un modo facile per verificare se il demone tftp sta funzionando, è quello di
digitare il seguente comando( se si visualizza un qualcosa di simile al
messaggio sottostante, tutto è andato bene.
Codice 4.4: Controllare che TFTPd funzioni |
# netstat -al | grep ^udp
udp 0 0 *:bootpc *:*
udp 0 0 *:631 *:*
udp 0 0 *:xdmcp *:*
udp 0 0 *:tftp *:*
|
Avvio da rete su una macchina SGI
Ora che tutto è impostato e DHCP e TFTP stanno funzionando, è tempo di accendere
la macchina SGI. Quando si vede sullo schermo "Running power-on diagnostics",
cliccare "Stop For Maintenance" o premere ESC. Si presenta un menu come il
seguente. Digitare i comandi come quelli sottostanti.
Codice 4.5: Menu Manutenzione SGI PROM |
Running power-on diagnostics
System Maintenance Menu
1) Start System
2) Install System Software
3) Run Diagnostics
4) Recover System
5) Enter Command Monitor
Option? 5
Command Monitor. Type "exit" to return to the menu.
>> bootp(): root=/dev/ram0
|
La macchina dovrebbe cominciare a scaricare la immagine e dopo 20 secondi
dovrebbe partire l'avvio di Linux. Se tutto funziona come dovrebbe, ci si
dovrebbe trovare in una shell Busybox ash come descritto di seguito, in
cui si può passare alla Configurazione della
rete.
Codice 4.6: Se tutto è andato bene |
init started: BusyBox v1.00-pre10 (2004.04.27-02:55+0000) multi-call binary
Gentoo Linux; http://www.gentoo.org/
Copyright 2001-2004 Gentoo Technologies, Inc.; Distributed under the GPL
Gentoo/MIPS Netboot for Silicon Graphics Machines
Build Date: April 26th, 2004
* To configure networking, do the following:
* For Static IP:
* /bin/net-setup <IP Address> <Gateway Address> [telnet]
* For Dynamic IP:
* /bin/net-setup dhcp [telnet]
* If you would like a telnetd daemon loaded as well, pass "telnet"
* As the final argument to /bin/net-setup.
Please press Enter to activate this console.
|
Risposte ad alcuni problemi
Se la macchina si rifiuta di scaricare la sua immagine, le cause possono essere
due, (1) si è fatto un errore in qualche parte, o (2) si ha bisogno di una
piccola persuasione. Ecco una lista delle cose che si possono controllare:
-
dhcpd sta dando un indirizzo IP alla macchina SGI. Si dovrebbe vedere
qualche messaggio sulla richiesta BOOTP nel log di sistema. Anche
tcpdump potrebbe essere utile.
-
I permessi sono impostati correttamente in tftp (/tftproot
dovrebbe essere leggibile)
-
Controllare i log del sistema per vedere cosa sta riportando il server tftp
(se ci sono errori)
Se si è controllato tutto sul server, e si stanno ottenendo timeout, ecc. sulla
macchina SGI, digitare quanto segue nella console.
Codice 4.7: Fare funzionare SGI PROM |
>> resetenv
>> unsetenv netaddr
>> unsetenv dlserver
>> init
>> bootp(): root=/dev/ram0
|
2.e. Metodo alternativo: Gentoo/MIPS SGI LiveCD
Descrizione
Su macchine Silicon Graphics, è possibile avviare il sistema da un CD da cui
installare successivamente il sistema operativo. (l'installazione di IRIX ad
esempio) Di recente, sono state fatte immagini per CD avviabili con cui si può
installare Gentoo.
Al momento il Live CD Gentoo/MIPS funziona solo su workstation SGI Indy, Indigo
2 e O2 con CPU serie R4000 e R5000, in fututo potrebbe essere possibile farlo
funzionare su altre piattaforme.
Si possono trovare le immagini del Live CD per il download sui Gentoo Mirror
nella directory experimental/mips/livecd.
Avvertenza:
Questi CD sono sperimentali. Potrebbero anche non funzionare. Si possono
riportare note sul loro funzionamento o meno su Bugzilla, in questa discussione del
forum o nel canale
IRC #gentoo-mips.
|
Masterizzare un Live CD
Una nota importante, SGI PROM non conosce il formato ISO9660, e neanche El
Torito boot standard. Queste immagini su CD sono state costruite come un SGI
disklabel con la immagine di boot nell'intestazione del volume come un disco
rigido. Prestare attenzione quando si masterizza il CD.
Qui di seguito si trova un comando di esempio che assume che la velocità sia di
24x su un masterizzatore IDE. Se si ha un masterizzatore SCSI cambiare
dev in un modo appropriato. Lo stesso per l'opzione speed: se si
riscontrano problemi, cambiare la velocità.
Codice 5.1: Masterizzare con cdrecord |
# bzip2 -d mips-livecd-prototype-rc2-20041027.img.bz2
# cdrecord -vv -pad speed=24 dev=ATAPI:0,0,0 -tao
mips-livecd-prototype-rc2-20041027.img
|
Nota:
Potrebbe essere possibile masterizzare questi CD con Windows, sempre che il
programma di masterizzazione copi l'immagine così come è. Nessuno è riuscito
a fare un CD funzionante in questo modo fino ad ora.
|
Nota:
Se non si sa cosa mettere in dev, eseguire cdrecord -scanbus da
root: verrà visualizzata la posizione del masterizzatore.
|
2.f. Avvio da rete su server Cobalt
Descrizione della procedura di avvio da rete
Al contrario delle macchine SGI, i server Cobalt usano NFS per trasferire i loro
kernel per l'avvio. Si avvia la macchina premendo i tasti freccia sinistra &
destra mentre si accende. La macchina tenterà di ottenere un numero IP via
BOOTP, monta la directory /nfsroot dal server con NFS, cerca di
scaricare e avviare il file vmlinux_raq-2800.gz (dipende dal
modello) che si assume essere un binario standard ELF.
Scaricare una immagine Netboot
In
http://dev.gentoo.org/~redhatter/mips/cobalt/netboots/ si troveranno
immagini boot per ottenere e eseguire Cobalt. I file di cui si ha bisogno si
chiamano nfsroot-KERNEL-COLO-DATE-cobalt.tar, selezionare quello
più recente e scompattarlo in / come mostrato sotto:
Codice 6.1: Scompattare l'immagine nfsroot |
# tar -C / -xvf nfsroot-2.6.13.4-1.19-20051122-cobalt.tar
|
Configurazione NFS Server
Siccome questa macchina usa NFS per scaricare la sua immagine, bisogna esportare
/nfsroot sul server. Se non lo si è già fatto, si deve installare
il pacchetto net-fs/nfs-utils.
Codice 6.2: Installare nfs-utils |
# emerge net-fs/nfs-utils
|
Una volta fatto, inserire quanto segue nel file /etc/exports. Si
possono impostare restrizioni più strette se lo si desidera.
Codice 6.3: Esportare la directory /nfsroot |
/nfsroot *(ro,sync)
|
Si può avviare il server NFS:
Codice 6.4: Avviare il server NFS |
# /etc/init.d/nfs start
|
Se il server NFS è già in esecuzione, si può dire di controllare nuovamente il
file exports con il comando exportfs.
Codice 6.5: Esportare un nuovo filesystem |
# exportfs -av
|
Configurazione DHCP per una macchina Cobalt
La cosa è relativamente diretta. Aggiungere la seguente informazione al file
/etc/dhcp/dhcpd.conf.
Codice 6.6: dhcpd.conf per server Cobalt |
subnet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx {
host qube {
option root-path "/nfsroot";
hardware ethernet 00:10:e0:00:86:3d;
next-server 192.168.10.1;
fixed-address 192.168.10.2;
filename "default.colo";
}
}
|
Avviare i demoni
Si dovrebbe essere pronti per avviare i demoni. Digitare quanto segue:
Codice 6.7: Avviare i demoni DHCP e NFS |
# /etc/init.d/dhcp start
# /etc/init.d/nfs start
|
Se è andato tutto bene, si dovrebbe poter proseguire con il manuale. Se il
server DHCP non si avvia, provare a eseguire 'dhcpd' da riga di comando (se si
visualizza un 'exiting', vedere sotto quali sono i problemi).
Avvio da rete sulla macchina Cobalt
Ora che tutto è impostato e DHCP e TFTP stanno funzionando, è tempo di accendere
la macchina Cobalt. Collegare il cavo del modem, e impostare il terminale
seriale per poter usare 115200 baud, 8 bits, nessuna parità, 1 stop bit, VT100
emulazione. Premere i tasti freccia sinistra & destra mentre l'unità si
accende.
Se tutto è andato bene, si dovrebbe visualizzare "Net Booting", si dovrebbero
vedere alcune attività di rete, seguiti da CoLo. Andare in basso nel menu fino a
trovare "Network (NFS)" e premere invio. Si dovrebbe notare che la macchina si
avvia nella console seriale.
Codice 6.8: Avviare il kernel |
elf: 80080000 <-- 00001000 6586368t + 192624t
elf: entry 80328040
net: interface down
CPU revision is: 000028a0
FPU revision is: 000028a0
Primary instruction cache 32kB, physically tagged, 2-way, linesize 32 bytes.
Primary data cache 32kB 2-way, linesize 32 bytes.
Linux version 2.4.26-mipscvs-20040415 (root@khazad-dum) (gcc version 3.3.3...
Determined physical RAM map:
memory: 08000000 @ 00000000 (usable)
Initial ramdisk at: 0x80392000 (3366912 bytes)
On node 0 totalpages: 32768
zone(0): 32768 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: console=ttyS0,115200 root=/dev/ram0
Calibrating delay loop... 249.85 BogoMIPS
Memory: 122512k/131072k available (2708k kernel code, 8560k reserved, 3424k dat)
|
Se tutto è andato bene, ci si dovrebbe trovare in una shell Busybox ash
come mostrato sotto, dalla quale si può passare alla Configurazione della rete.
Codice 6.9: Se tutto è andato bene |
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 280k freed
init started: BusyBox v1.00-pre10 (2004.04.27-02:55+0000) multi-call binary
Gentoo Linux; http://www.gentoo.org/
Copyright 2001-2004 Gentoo Technologies, Inc.; Distributed under the GPL
Gentoo/MIPS Netboot for Cobalt Microserver Machines
Build Date: April 26th, 2004
* To configure networking, do the following:
* For Static IP:
* /bin/net-setup <IP Address> <Gateway Address> [telnet]
* For Dynamic IP:
* /bin/net-setup dhcp [telnet]
* If you would like a telnetd daemon loaded as well, pass "telnet"
* As the final argument to /bin/net-setup.
Please press Enter to activate this console.
|
Risposte ad alcuni problemi
Se la macchina si rifiuta di scaricare la sua immagine, i casi possono essere
due, (1) si è fatto un errore in qualche parte, o (2) si ha bisogno di una
piccola persuasione. Questa è una lista delle cose che si possono controllare:
-
dhcpd sta dando un indirizzo IP alla Macchina Cobalt. Si dovrebbe
vedere qualche messaggio sulla richiesta BOOTP nel log di sistema. Anche
tcpdump potrebbe essere utile.
-
I permessi sono impostati correttamente in /nfsroot. (dovrebbe
essere leggibile)
-
Assicurarsi che il server NFS sia in esecuzione ed esportare la directory
/nfsroot. Controllare con exportfs -v sul server.
[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
I contenuti di questo documento sono rilasciati sotto la licenza Creative
Commons - Attribution / Share Alike.
|