NetBSD/Alpha

NetBSD auf einer DEC/Alpha installieren

* Was ist Alpha (Index)

Die von der Digital Equipment Corporation 1992 vorgestellte Alpha
(auch als AXP bezeichnet, schließlich liebt die DEC TLAs ) ist ein
64-bittiger RISC Prozessor der in kleinen Personal Workstations bis hin zu
riesigen Mehrfachprozessorservern eingesetzt wird.
Seit der Übernahme der DEC durch Compaq werden Alphaprodukte von HP/Compaq gepflegt.

Da sich die Alpha vom gewöhnlichen IBM-kompatiblen PC unterscheidet, möchte ich hier
die Installation von NetBSD auf einem AXPpci Alphasystem beschreiben.

* Bootkonsole (Index)

Der erste große Unterschied ist die Verwendung einer Bootkonsole anstatt eines BIOS.
Diese Bootconsole besitzt eine Unixähnlich Befehlssyntax, dürfte also nicht allzu
schwer zu bedienen sein.
Es gibt allerdings zwei verschiedene Konsolentypen, die SRM und die ARC Konsole.
Die SRM wird benötigt um ein Unix oder VMS/OpenVMS zu booten, die ARC für proprietäre
Betriebssysteme aus Redmond.
Die passende respektive neuere Version kann man von http://ftp.digital.com/pub/Digital/Alpha/firmware/
downloaden und per Bootdiskette installieren.

Nachdem die Alpha mit der neuesten SRM Konsole bespielt wurde können wird die NetBSD
Installation vorbereiten. Es sei allerdings noch angemerkt das die meisten Alphas
SCSI-Systeme sind, die zwar teilweise auch IDE Controller enthalten, aber nur von
SCSI-Devices und Floppy booten können. Entweder man verwendet als Bootdevice eine
SCSI-Platte oder lässt eine IDE Festplatte von Diskette booten.

* Installation (Index)

Zur Installation benötigen wir die NetBSD Installations CD die von einem Mirror auf
http://www.netbsd.org/mirrors/#iso geladen werden können.
(Die Installationsimages enthalten nur das direkte NetBSD-System ohne Drittsoftware,
welche sich aber bequem aus der Portscollection nachinstallieren lässt.)

Das CD Image lässt sich mit cdrecord auf Unices oder mit einem beliebigen
Brennprogramm unter Windows/MacOS als bootbare CD brennen.
Sollte aus verschiedenen Gründen nicht von CD gebootet werden können,
werden Bootdisketten benötigt.
Diese liegen auf der Installations-CD unter alpha/installation/floppy/
und können mit
dd if=disk1of2 of=/dev/fd0a bs=36b oder dem DOS-Tool rawrite
Möchten wir eine eigene Boot-CD erstellen, (bspw. mit einem Release Engineering Current Snapshot von ftp://releng.netbsd.org) ist dazu etwas mehr Aufwand nötig. Nachdem wir den Inhalt der CD nach /usr/home/alpha heruntergeladen haben, können wir mit folgenden Befehlen eine bootbare CD generieren:
cd /usr/home/alpha/binary/sets
tar -zxvf base.tgz ./usr/mdec/boot ./usr/mdec/bootxx_cd9660
mv ./usr/mdec/boot /usr/home/boot
mkdir /tmp/mdec.alpha
mv  ./usr/mdec/bootxx_cd9660 /tmp/mdec.alpha/bootxx_cd9660
rm -rf ./usr/mdec
cd /usr/home/alpha/installation/instkernel
cp  netbsd.gz /usr/home/netbsd.gz
mkisofs -o axp.iso -lJRL /usr/home/alpha
Das CD Image existiert nun als /usr/home/axp.iso und muss jetzt gebootstrapped werden. Dazu benötigen wir installboot(8), das allerdings als Alpha binary auf einer Alpha ausgeführt werden muss, oder aber crosskompiliert für Alpha auf dem Host ausgeführt wird.
installboot -v axp.iso /tmp/mdec.alpha/bootxx_cd9660 

Nachdem wir die CD erstellt haben booten wird die Alpha und dürften in der blauen
Bootkonsole hängen bleiben. Dies ist der Ort um der Alpha klarzumachen was und wie
sie booten soll. Dazu gibt es verschiedene Befehle die wir verwenden können.

Befehle der SRM-Konsole:
boot startet den Bootprozess, Übergebbar sind Dateiname und Device
fwupdate atartet das Firmware Updatetool von Floppy
set setzt Systemvariablen
show zeigt Systemvariablen

Umgebungsvariablen:
boot_file Datei die gebootet werden soll
boot_osflags Parameter die dem boot_file übergeben werden sollen
bootdef_dev Device von dem gebootet werden soll

Als erstes lassen wir mit show device die vorhandenen Devices
(Laufwerke und Netzinterfaces) anzeigen und mit boot dka*** vom
SCSI-CDROM oder gegebenenfalls vom Floppylaufwerk booten.

Nach dem Booten übernimmt sysinstall den Installationsprozess
und verhält sich ab diesem Zeitpunkt genau
so wie auf --|> i386 Systemen.
Nach der Installation bootet die Alpha wieder in die SRM-Konsole,
welche nun auf automatische Booten gesetzt werden kann. Dies geschieht mit:
>>>set boot_osflags a
>>>set auto_action boot
>>>set boot_file netbsd
>>>set bootdef_dev dka***
>>>boot -fl a  
so das von jetzt an die Alpha automatisch ins NetBSD bootet.

* Weiterführende Links (Index)

SRM Konsolen Guide (PDF)

NetBSD/Alpha

DEC Documentation Reference List

Alpha Install Notes

net-tex.de, Index
\$Id: netbsdalpha.html,v 1.36 2014/08/21 09:24:04 stefan Exp $


$Log: netbsdalpha.html,v $ Revision 1.36 2014/08/21 09:24:04 stefan Umlaute und Makefile clean up

Autor: Stefan Schumacher für net-tex.de/cryptomancer.de, PGP-Key 0xB3FBAE33

Bitte beachten Sie, das die Seite inhaltlich seit Ende 2007 nicht mehr gepflegt wird!
Aktuellere Informationen erhalten Sie auf Kaishakunin.com