Pagina su Debian GNU/Linux PowerPC PReP
Introduzione
IBM e Motorola realizzano o hanno realizzato macchine con architettura PReP. Fino a ora il supporto per PReP è stato testato solo su vecchi sistemi Motorola PowerStack(tm) (schede madre Blackhawk, Comet e Utah) e sulle moderne soluzioni embedded della famiglia PowerPlus(tm) come MTX, MTX+, MVME2300(sc)/2400/2600/2700/3600/4600 e MCP(n)750. IBM produce molte workstation conformi con PowerPC PReP, fra queste le RS/6000 40P, 43P, 830, 850, 860, 6015 e 6030.
Problemi noti
MTX+ (un sistema MTX con 7 slot PCI) non può avviarsi con il kernel 2.2, si blocca durante l'inizializzazione dei dischi IDE. Questo è un problema noto e sarà corretto con una prossima patch per il kernel.
Tutti i sistemi Motorola PowerPlus hanno il supporto IDE nel kernel non funzionante. Questo problema è stato individuato e corretto. Le modifiche saranno presto disponibili in un pacchetto con una patch per il kernel e saranno applicate ai sorgenti del kernel.
Firmware
In base all'età e/o al produttore del sistema PReP e possibile avere uno dei firmware PPCBUG (Motorola), Open Firmware (IBM o Motorola) o PReP (IBM). I comandi di avvio sono leggermente diversi ma tutti questi sistemi implementano lo standard PReP e quindi lo stesso kernel può essere avviato su tutte e tre le piattaforme. Una completa spiegazione dei comandi del firmware non rientra nello scopo di questo documento e saranno fornite solo le informazioni necessarie.
Preparazione dell'installazione
Installazione con dischetti
Scrivere le immagini boot1440.bin
, root1440.bin
,
resc1440.bin
e drv14-*.bin
su dei dishetti. Per
scrivere le immagini si può usare dd
sui sistemi Linux/Unix
oppure rawrite
sui sistemi DOS/Windows.
Installazione via rete
Spostare i file resc1440.bin
e drivers.tgz
in un filesystem NFS esportato dal server NFS. La migliore directory
in cui metterli è: /[mountpoint]/debian/[installfiles]
.
Spostare il file boot.bin
nella directory tftp del
server TFTP.
Opzioni della console
Sui sitemi PPCBUG Motorola è possibile avviare e installare sia tramite la console VGA che tramite una console seriale. PPCBUG e Linux ripiegano sulla modalità con la console seriale se non sono rilevate la tastiera o la VGA.
Per poter vedere correttamente l'installazione su una console seriale sono necessarie alcune funzionalità di emulazione del terminale. Per vedere i colori è necessario avere un emulatore di terminale con il supporto per i colori ANSI. Il normale xterm, incluso nella maggior parte delle distribuzioni Linux, è sufficiente, così come molti dei programmi terminale per Windows (per esempio PuTTY). Per poter vedere i caratteri grafici usati per disegnare i riquadri dell'interfaccia grafica è essenziale usare un font con i caratteri artistici estesi IBM. Sotto Linux si può usare il font "linux8x8" e sotto Windows il font MSLineDraw.
Avvio
- PPCBUG
- Usare il comando "ENV" e abilitare l'opzione "Network PReP boot enable".
- Usare il comando "NIOT" per configurare il client, il server e l'indirizzo IP del gateway necessari per il tftp del kernel. Se l'hardware è nuovo di zecca eseguire SET <date/time> per impostare l'hwclock altrimenti la rete e altre cose non funzioneranno.
- Avviare l'immagine con
- PPCBUG>NBO 0 0 ,,, bootprep.bin
- OpenFirmware
- Usare il seguente comando per avviare tramite tftp una immagine PReP:
- >boot ‹server_ipaddr›,‹file›,‹client_ipaddr›
Installazione di Debian
-
Configurazione della tastiera
Su una console seriale il passo di configurazione della tastiera viene saltato.
-
Partizionamento del disco fisso
Creare una partizione primaria di circa 2MB e cambiare il suo tipo a PPC PReP (tipo 41). Le macchine OF PReP possono avere dei problemi se la partizione PPC PReP di avvio è diversa dalla prima partizione primaria. Sebbene tutti i sistemi PPCBUG siano in grado di gestire la partizione PPC PReP di avvio su qualsiasi partizione primaria è una buona consuetudine usare come partizione PPC PReP di avvio sda1 o hda1 anche su questi sistemi.
Dopo aver creato la partizione PPC PReP di avvio, si possono seguire le normali convenzioni di Linux per il partizionamento. Devono essere create almeno le partizioni root e di swap, queste partizioni possono essere create su partizioni sia primarie che logiche.
-
Installazione del disco di ripristino e dei driver
L'installazione da dischetti è semplice, inserire il dischetto di ripristino e successivamente quello con i driver quando viene richiesto.
Per l'installazione tramite rete, scegliere l'opzione NFS e verrà richiesto di configurare la rete. Quando viene richiesto quale server NFS utilizzare, inserire il server NFS e la directory che si vuole usare. Usare i valori predefiniti per tutte le altre opzioni.
-
Configurazione dei moduli driver
Per ora i moduli più importanti sono compilati nel kernel quindi si può tranquillamente proseguire.
-
Installazione del sistema di base
Se si sta seguendo l'installazione da dischetti, inserire i dischetti di base quando richiesto, invece se si sta seguendo l'installazione NFS entrare nella direcotry del server NFS in cui si è copiato i sistema di base e usare le scelte predefinite per installare il sistema di base Debian.
-
Rendere il sistema avviabile da disco fisso
Rende il sistema avviabile dalla partizione di avvio PPC PReP creata precedentemente. Se questa partizione manca verrà mostrato un messaggio di errore.
-
Creare un dischetto di avvio
Scrive un'immagine avviabile sul dischetto nel lettore.
Avvio del sistema di base Debian
Se è stata configurata la partizione come tipo 41 PReP di avvio e se il programma di installazione ha reso il sistema avviabile dal disco fisso si può semplicemente dare il comando boot del firmware per far avviare il sistema dal disco (su PPCBUG e OF si può anche abilitare l'opzione di avvio automatico).
Nota: per forzare il kernel a usare la giusta partizione di root potrebbe essere necessario specificarla nella variabile di ambiente "bootargs". Nel caso di installazione su PReP Motorola che ha come partizione di root predefinita sda1 ma che il vero filesystem di root è su sda2 è necessario impostare bootargs=/dev/sda2.
PPCBUG
- Impostazione dei parametri in bootargs
- PPCBUG>GEVEDIT bootargs
- PPCBUG>bootargs=root=/dev/sda2
- Avviare il sistema (si suppone che il disco SCSI sul controller 0 abbia SCSI ID 0):
- PPCBUG>PBOOT 0
- Avviare il sistema (si suppone che il disco SCSI sul controller 0 abbia SCSI ID x)
- PPCBUG>PBOOT 0 x0
- Openfirmware
- Avviare il sistema (disco IDE/SCSI con alias disk0)
- >boot disk0
- Avviare il sistema (disco IDE/SCSI con alias hdisk0)
- >boot hdisk0
Adesso il kernel si avvia dal disco fisso.
Segnalare con una email qualunque suggerimento/lementela/problema si riscontri con l'installazione su PReP o con questa documentazione a Matt Porter.