IMMD-IV LEFT UP DOWN RIGHT HELP Thomas Thiel, 22/02/95

MEMSY

Administration und Konfiguration
Tips & Tricks


faui4vm2

Die faui4vm2 war früher der MEMSY-Server für NIS und stellte die Kernbauumgebung zur Verfügung. Auf ihr wurde die meiste Software entwickelt und getestet, bevor sie auf das MEMSY System übertragen wurde. Heute dient sie lediglich als Plattenbaurechner verwendet.

Dot Ändern des Netzwerkinterfaces (FDDI <--> Ethernet)

Die faui4vm2 hat zwei Netzwerkinterfaces, von denen aber immer nur eines aktiviert ist:

Was ist zu tun, um das jeweils nicht-aktive Interface in Betrieb zu nehmen?


Dot Kernbauumgebung erzeugen

Wo? Prinzipiell kann die Kernbauumgebung auf jedem mot88-Rechner installiert werden, der genug Plattenplatz (64 MB für die Umgebung + xxx MB wenn ein Kern gebaut ist) vorhanden ist und NFS-Zugriff auf die Quellen (/src/SYS_V_88/) besteht.

Momentan ist eine Kernbauumgebung auf der faui4vm2 in /kernelbuild installiert. Diese Kernbauumgebung ist für den MEMSOS Quellbaum erzeugt worden. Egal wo das Startverzeichnis tatsächlich liegt, muß es immer /kernelbuild sein.

Wie? Um eine Kernbauumgebung zu erzeugen, muß lediglich das Script /local/memsos/etc/make_kbuild mit entsprechenden Parametern aufgerufen werden. make_kbuild -h gibt Auskunft über die möglichen Parameter und deren Wirkung.

Was? Die Kernbauumgebung besteht aus verschiedenen Teilen, da sich mit ihr nicht nur ein Kern, sondern auch ein Bootloader, alle Bibliotheken und Programme des Systems bauen lassen. Unter /kernelbuild findest man daher eine genaue Kopie der Verzeichnisstruktur von / und /usr. In diese werden die neu-compilierten Bibliotheken und Programme kopiert. Unter /usr/src wird eine Kopie des Quellbaumes (/src/SYS_V_88/src/{MEMSOS,FAU}/usr/src und Symlinks auf die Dateien angelegt. Während des Kernbauens liegen hier die Kern-Bibliotheken, o-Module, der fertige Kern (/kernelbuild/usr/src/uts/mot/cf/m88k/unix) und auch ein Logfile des make-Laufs (/kernelbuild/usr/src/uts/mot/sysgen/make.log).


Dot Kerne, Bibliotheken und Programme bauen

Kerne sind einfach zu bauen, indem man /local/memsos/etc/mk_memsos aufruft.

Bibliotheken und Programme sind auch nicht viel schwieriger: /local/memsos/etc/mk_cmd <command> aufrufen.


Dot MEMSY Identitäten

Jeder Knoten hat zwei Identitäten: MEMSOS und FAU.

Booten geht mit dem 188BUG Kommando bo.

      MVME328, SCSI id 0, Slice 0: bo 6 0
      MVME328, SCSI id 1, Slice 0: bo 6 10
      MVME327, SCSI id 0, Slice 0: bo 2 0
      MVME328, SCSI id 0, Slice 0: bo 2 10
    

Zum Booten von einem anderen Slice benötigt man die Option s. MEMSOS booten geht dann so:

      MVME328, SCSI id 0, Slice 4: bo 6 0 ;ms4
    

Die Option m ist notwendig, damit der Bootloader die Adressen der Kommunikationsspeicher im Adreßdecoder einträgt. Erst dann kann der MEMSOS-Kern darauf zugreifen. Die Usage des bootloaders:

      VME Disk IPL Version 10.4/FAU v1.9 08-08-1995/MEMSOS v1.10 09-12-1994
      VME Disk IPL: usage '[][;[?][h][l][S][s]]'
        ?      print this help message
        h      halt after loading OS
        l      list directory and halt immediately
        S      print slice table and halt immediately
        a      pass a - Option to autoconfig-loader
        b      boot from CM (default: unix.mcl)
        m      do MEMSOS configuration setup
        c      do MEMSOS configuration setup from SRAM, update NVRAM
        v      verbose mode
        s   use slice  instead of rootfs-offset in VID block
    

MEMSOS: Die Root (/) liegt auf Slice 4, die /usr auf Slice 5. Der Kern liegt in /stand/ und heißt unix.memsos oder unix.mdebug (/stand/unix als Hardlink!). Die fstab heißt fstab.memsos, sollte aber schon richtig gelinkt sein. Der MEMSOS-Kern läuft nur, wenn er mit der Option m gebootet wurde! Vom Slice 4 läßt sich auch ein FAU-Kern booten. Unter /normal_root(/usr) ist das FAU-fs erreichbar.

FAU: Der FAU-Kern ist der gleiche wie der MEMSOS-Kern, ohne MEMSOS-Erweiterungen. Die Root (/) liegt auf Slice 0, die /usr auf Slice 2. Der Kern heißt /stand/unix.fau (/stand/unix als Hardlink!). Unter /memsos_root(/usr) ist das MEMSOS-fs erreichbar.


Dot Bauen neuer Platten für MEMSY

Der einfache Fall: Plug & Play

Dot KS Konfiguration im NVRAM prüfen/updaten/ändern

Alle MEMSOS Kerne benötigen wichtige Informationen über den Knoten, auf dem sie laufen. Dazu gehört insbesondere die Knoten-ID (ohne diese bootet der MEMSOS-Kern überhaupt nicht!) und Anzahl und Zuordnung der Kommunikationsspeicher mit den jeweiligen physikalischen Adressen.

Die Konfiguration aller Knoten ist in der Datei /local/memsos/etc/memsy.conf abgelegt. Hier ein Ausschnitt: der Knoten m52

m52     Sued    m51  0xB5112  0x83000000  0x400000      0       0       0
m52     West    m53  0xB5321  0x81000000  0x400000      0       1       0
m52     Diag    m54  0xB5411  0x80000000  0x400000      0       2       0
m52     Priv_0  m52  0xB5222  0x82000000  0x400000      0       0       0
#m52    Priv_0  m52  0xB5222  0x8.000000  0x400000      0       0       0
m52     Priv_1  m52  0xB5222  0xA03E0000  0x20000       0       0       0
m52     Priv_2  m52  0xB5222  0xA13E0000  0x20000       0       0       0
m52     Priv_3  m52  0xB5222  0xA23E0000  0x20000       0       0       0
m52     Priv_4  m52  0xB5222  0xA33E0000  0x20000       0       0       0
m52     Down-NW m32  0xA3243  0xA0000000  0x3E0000      1       1       1
m52     Down-NO m31  0xA3144  0xA3000000  0x3E0000      4       0       1
m52     Down-SW m34  0xA3433  0xA1000000  0x3E0000      2       3       1
m52     Down-SO m33  0xA3334  0xA2000000  0x3E0000      3       2       1
    

(Die auskommentierte Zeile ist lediglich ein Platzhalter für den zweiten physikalischen (aber nicht verwendeten) Weg zum eigenen KS.)

Auslesen und modifizieren des NVRAMs / der Konfiguration geschieht mittels /local/memsos/bin/mconf.
Das Programm benötigt nur einen Parameter: 0 = auslesen, <nid> = update.
Wobei <nid> die reine Knoten-Id ist (11, 12, 13, ...).

Jeder User kann sich die eingestellte Konfiguration des NVRAMs ansehen. Ein Update ist nur mit root-Rechten möglich.

Das Programm ist für den Update oder das Verändern einzelner Werte etwas unhandlich, da es die zu schreibende Konfiguration auf stdin erwartet. Daher gibt es ein Mini-Shellscript: /local/memsos/etc/mconfigure.

Aufruf: mconfigure [<nid>] [<conffile>]

Ist kein Parameter angegeben, wird als <nid> als 0 angenommen. Wird keine besondere Konfigurationsdatei angegeben, wird /local/memsos/etc/memsy.conf benutzt.

Soll die Konfiguration nur geändert (kein Update) werden, kann man entweder die Default-Datei editieren, oder eine Kopie davon. Beispiel: Allen Knoten der A-Ebene soll der Uplink auskonfiguriert werden, weil die B-Ebene nicht mehr vorhanden ist. Dazu muß lediglich in der Konfigurationsdatei bei jedem Knoten der A-Ebene die Zeile der Form

mXX     Up      m5x  0xB5xxx  0x8xxx0000  0x20000       0       5       0
    

auskommentiert oder entfernt werden und per mconfigure die Konfiguration neu geschrieben werden.


Thomas Thiel (thiel@informatik.uni-erlangen.de)