  Linux NCD X Terminal mini-HOWTO
  Hendrik Scholz (hendrik@scholz.net)
  v1.0, 30. Juli 2000

  Diese Anleitung beschreibt, wie man ein NCD X-Terminal von einem
  Linux-Rechner aus bootet und konfiguriert.


  1.  Einfhrung


  1.1.  Neue Versionen dieses Dokuments


  Die jeweils neuste Version dieser HOWTO ist auf dem WWW Server des
  Deutschen Linux HOWTO Projekts unter folgender Adresse zu finden:


       http://www.tu-harburg.de/dlhp/


  1.2.  Feedback


  Wenn Sie irgendwelche Fragen oder Kommentare zu diesem Dokument haben,
  erreichen Sie mich unter den folgenden Adressen:


    Internet: hendrik@scholz.net

    Zerberus: hscholz@KRISKI.ZER

    AMPRNet: dg2ls@db0fho.ampr.org

    Homepage: http://www.toppoint.de/~hscholz

    Snail-Mail:

       Hendrik Scholz
       Elsa-Brandstrm-Str. 9
       D-24223 Raisdorf


  1.3.  Copyright


  Dieses Dokument ist urheberrechtlich geschtzt. Das Copyright liegt
  bei Hendrik Scholz.

  Das Dokument darf gem der GNU General Public     License verbreitet
  werden. Insbesondere bedeutet dieses, da der Text sowohl ber
  elektronische wie auch physikalische Medien ohne die Zahlung von
  Lizenzgebhren verbreitet werden darf, solange dieser Copyright-
  Hinweis nicht entfernt wird. Eine kommerzielle Verbreitung ist erlaubt
  und ausdrcklich erwnscht. Bei einer Publikation in Papierform ist
  das Deutsche Linux HOWTO Projekt hierber zu informieren.


  1.4.  Weiterfhrende Seiten

  Es gibt ein paar Seiten im Netz, welche die Nutzung der Terminals nach
  der Installation beschreiben.  Dies sind meist Seiten von
  Universitten fr die lokalen Terminals.

  Das englische NCD-X-Terminal mini-HOWTO gibt einen netten berblick:


       http://www.linuxdoc.org/HOWTO/mini/NCD-X-Terminal.html


  Eine kurze Beschreibung, wie man sein Terminal konfigurieren kann,
  gibt es hier:


       http://vega.ing.iac.es/~cfg/pub_notes/NCD-pref.html



  2.  Eigenschaften von Terminals


  2.1.  Seriell oder X?

  Die beiden Arten von Terminals unterscheiden sich in Ihrem Anschluss.
  Serielle Terminals wie z.B. das bekannte VT100 oder das VT102 werden
  ber eine serielle Schnittstelle an einen Host-Rechner angeschlossen.

  X-Terminals sind per Netzwerkkabel mit einem LAN verbunden. ber ein
  Men im X-Terminal kann man einen Rechner im LAN suchen, der eine X-
  Session hostet.


  2.2.  X-Server und X-Client

  Das X-Terminal ist eigentlich nur ein X-Server. Ein X-Server ist ein
  Monitor, der es X-Clients erlaubt, den Monitor zur Ausgabe zu nutzen.
  X-Server und X-Clients knnen auch lokal an einem Rechner ber das
  Loopback-Interface verbunden werden.


  2.3.  Terminal-Software

  Die Software fr das Terminal sollten Sie auf einer CD mitgeliefert
  bekommen haben. Falls Sie, wie ich, das Terminal gnstig gekauft oder
  geschenkt bekommen haben, dann haben Sie wahrscheinlich keine
  Software.

  Die Software ist eine Art Kernel, der beim Booten geladen werden muss.
  Ich habe die Software per ftpsearch und Google auf zwei Seiten
  gefunden:


       ftp.ii.uib.no/pub/misc/magnus/martin/



       http://jabba2.virtualave.net/



  2.4.  X-Server-Dateien

  Auf den Servern finden Sie verschiedene X-Server. Ihr Terminal wird
  nur mit dem richtigen X-Server starten.

    Xncd19c: 19 Zoll Farb-Terminal

    Xncd19: 19 Zoll s/w-Terminal

    Xncd19r: 19 Zoll s/w-Terminal

    Xncd17c: 17 Zoll Farb-Terminal

  ber die anderen Server kann ich leider nichts sagen.  Merken Sie sich
  Namen Ihres X-Servers.


  2.5.  Der Bootvorgang

  Das Terminal selbst hat keinen Speicher, um den X-Server dauerhaft zu
  speichern. Die X-Server-Software wird deshalb whrend des Bootvorgangs
  per TFTP (trivial file transfer protocol) von einem Host-Rechner
  geladen.  Bevor die Software geladen werden kann, muss allerdings das
  Netzwerk konfiguriert sein.

  Es gibt zwei Methoden, um das TCP/IP-Netzwerk zu konfigurieren:


    NVRAM: In einer Art BIOS wird die Konfiguration im Terminal
     gespeichert.

    BOOTP: Die IP-Adressen und die Netzmaske des LANs wird von einem
     Unix-Host per BOOT-Protocol vergeben. BOOTP ist meiner Meinung nach
     fr ein einzelnes X-Terminal Overkill, da es eine zustzliche
     Sicherheitslcke darstellt.

  Hier ein Bootvorgang im kurzen Schritten:


    Das Terminal wird angeschaltet und testet den Speicher und die
     Netzwerkkarte.

    Aus dem NVRAM wird die Konfiguration gelesen und das Terminal holt
     sich per TFTP vom angegebenen Host-Rechner die X-Server-Software.

    Der X-Server startet und es erscheint ein XDMCP-Login-Chooser, der
     alle Rechner anzeigt, die ein Login erlauben.

    Nach der Auswahl eines Rechners erscheint der normale XDM/GDM des
     Rechners, als wenn man lokal an dem Rechner arbeiten wrde.


  3.  Linux-Konfiguration


  3.1.  TFTP

  Der TFTP-Server muss zuerst installiert und konfiguriert werden, weil
  er nicht zur Standard-Software gehrt.

  3.1.1.  Installation

  Debian ermglicht die Installation mit dem Befehl:

       apt-get install tftpd


  SuSE-User knnem im Yast das TFTP-Paket auswhlen und installieren.
  RedHat und andere RPM-basierende Distributionen haben auch Pakete, die
  sich per

       rpm -Uvh paket.rpm


  installieren lassen.

  3.1.2.  Konfiguration

  Der TFTP-Daemon wird per inetd gestartet. Damit der inetd seine
  Konfigurationsdatei neu einliest, muss ihm mit kill ein Signal
  geschickt werden:

       killall -HUP inetd


  Das Verzeichnis /tftpboot ist das Root-Verzeichnis des TFTP-Daemons.
  Hier mssen die X-Server-Dateien und ggf. auch Schriftarten abgelegt
  werden.


  3.1.3.  GDM-Konfiguration

  Ihr Linux-Rechner muss das Login fr das X-Terminal erlauben.  Falls
  Sie den GDM nutzen, knnen Sie in der Datei /etc/X11/gdm/gdm.conf den
  Login per XDMCP erlauben.

  In der Konfigurationsdatei muss der Key Enable im Abschnitt xdmcp
  auf 1 stehen.

  [xdmcp]
  Enable=1




  Starten Sie den GDM anschliessend neu.

  3.1.4.  Fonts

  Ihr Terminal bentigt Fonts. Diese bekommt es der Einfachheit halber
  auch per TFTP. Dazu entpacken Sie einfach die Datei ncd.tar in dem
  Verzeichnis /tftpboot. Es entsteht dabei eine Verzeichnis-Struktur.


  4.  Terminal-Konfiguration

  Das Terminal weiss nicht, welche Software es wie und vor allem von wo
  holen soll. Deshalb booten wir das Terminal zuerst einmal von Hand.


  4.1.  Bootprompt

  Nach dem Einschalten des Terminals versucht das Terminal vermutlich,
  einen TFTP-Server zu finden. Wir brechen diese Ausgabe mit ESC ab.



       Boot Monitor V2.4.1
       Testing code memory     8.0Mbytes
       Testing data memory    12.0Mbytes
       Network controller passed 00:00:A7:12:DB:8F

       TFTP load <ESC> to abort




  Die MAC-Adresse oder der Speicherausbau varieren natrlich, so dass
  Sie vielleicht andere Werte haben.

  Nach dem zweimaligen Drcken der ESC-Taste sehen Sie den Prompt:


       TFTP booting aborted

       Network Computing Devices NCD88k 8-bit Color Boot Monitor
       >




  Das Fragezeichen bringt eine Hilfe zum Vorschein, welche die Befehle
  auflistet. Wir nutzen den Befehl BT um das Terminal via TFTP zu booten

       > BT Xncd19c 10.1.1.10 10.1.1.1 10.1.1.1 255.255.255.0



    BT : Befehl zum Booten per TFTP

    Xncd19c : Name des X-Servers (19" Farbversion)

    10.1.1.10 : IP-Adresse des Terminals


    10.1.1.1 : IP-Adresse des TFTP-Servers

    10.1.1.1 : IP-Adresse des Default-Gateways

    255.255.255.0 : Netzmaske

  Sie knnen das Default-Gateway und die Netzmaske weglassen, wenn Ihr
  TFTP-Server sich im LAN befindet.



       > BT Xncd19c 10.1.1.10 10.1.1.1 10.1.1.1 255.255.255.0
       Using IP address - 010.001.001.010
       Using Subnet Mask - 255.255.255.000
       Using host 010.001.001.001 file 'Xncd19c' ...




  Der Download des X-Servers hat begonnen. Sie sehen immer mehr Punkte
  und nach ca. 4 Zeilen erscheit der Session-Manager.


  4.2.  Session-Manager

  Nun ist es endlich soweit: Sie knnen Sich auf einem anderen Rechner
  einloggen.

  Sie sollten den Login Chooser sehen. Je nach der
  Netzwerkkonfiguration sehen Sie sogar schon Rechner in der Liste.  Es
  wird pro Host eine Zeile mit Hostname und zustzlichen Informationen
  angezeigt. Linux-Hosts zeigen die Kernelversion an. Solaris-Maschinen
  zeigen den Load mit den bekannten drei Werten.

  Wenn Sie sich auf einem aufgelisteten Rechner einloggen mchten, ist
  nur noch ein Doppelklick ntig.  Falls der Rechner noch nicht
  aufgelistet wird, mssen Sie dessen IP-Adresse in der Hostzeile
  eingeben.

  Nach kurzer Zeit erscheint der grafische Login-Bildschirm des
  ausgewhlten Rechners.


  4.3.  Konfiguration

  Am oberen linken Bildschirmrand ist ein Programm zu sehen, mit dessen
  Hilfe Sie viele Einstellungen vornehmen knnen.  Die System
  Preferences und User Preferences enthalten alle wichtigen
  Einstellungen zum Terminal.  Die Statistics zeigen Ihnen die
  Speicherauslastung und allgemeine Informationen ber Softwareversionen
  und Netzwerk-Statistiken.


  5.  Font-Server

  Das Terminal verfgt ber die angesprochenen Fonts. Diese reichen oft
  nicht aus oder man mchte andere zustzliche Fonts nutzen. Ein Font-
  Server auf einem Unix-Rechner kann diese Fonts zur Verfgung stellen.


  5.1.  Font-Server installieren

  Ihr Linux-Rechner hat fr seinen lokalen X-Server sehr viele Fonts,
  die wir auch dem Terminal zur Verfgung stellen mchten.


  Der xfs-xtt lsst sich bei Debian per

       apt-get install xfs-xtt


  installieren.

  Andere Distributionen haben ebenfalls Pakete, die man leicht
  installieren kann.

  5.2.  Terminal-Konfiguration

  Im NCD User Services Fenster unter X gibt es die Option Setup ->
  Setup Parameters.  Im neu erscheinenden Men gibt es einen Punkt
  Fonts.  Hier kann man zu die Liste der Default-Paths erweitern und
  den Font-Server eintragen:


       built-ins
       tcp/10.1.1.1:7100
       /usr/lib/ncd/fonts/pcf/75dpi
       /usr/lib/ncd/fonts/pcf/dw75dpi
       /usr/lib/ncd/fonts/pcf/100dpi
       /usr/lib/ncd/fonts/pcf/dw100dpi




  10.1.1.1 ist in diesem Beispiel die IP-Adresse des Font-Servers, die
  angepasst werden muss.  Der Button Auto Save File in der unteren
  linken Ecke des Fensters muss markiert sein. Um die Konfiguration zu
  speichern, einfach auf Apply drcken und die neunen Fonts auspro
  bieren.



  6.  Tipps & Tricks


  6.1.  telnet-Ports

  Wenn mal einfach mal ein Portscan des Terminals macht, sieht man
  schnell, dass einige Ports offen sind:



       nmap terminal
       Port       State       Service
       87/tcp     open        priv-term-l
       514/tcp    open        shell
       5978/tcp   open        ncd-diag-tcp
       5979/tcp   open        ncd-conf-tcp
       5998/tcp   open        ncd-diag
       5999/tcp   open        ncd-conf
       6000/tcp   open        X11




  Interessant sind hier die 5900er Ports. 5978 und 5998 haben die gle
  iche Funktion, ebenso wie 5979 und 5999.  Port 6000 ist der X-Server
  selbst, wie er auch auf anderen Unicen existiert.  Die Funktion von
  Port 87 ist mir unbekannt.  Eine Telnet-Verbindung zu Port 5998 (oder
  5978) zeigt die Statusmeldungen des Terminals.


       Ethernet address: 00:00:A7:12:DB:8F
       NCD88K 8-bit Color PEX V3.0.EF beta #21053 10/29/92 downloaded
       Copyright 1988-1992 Network Computing Devices, Inc.
       BSD TCP/IP Copyright 1980, 1982-83, 1985-88 Regents of the University of California
       TSSnet Copyright 1987-1991 Thursby Software Systems, Inc.
       TSSlat Copyright 1990-1992 Thursby Software Systems, Inc.
       DECwindows is a trademark of Digital Equipment Corporation
       X Window System is a trademark of the Massachusetts Institute of Technology
       %CONFIGD-I-IPADDR, IP address for this unit: 10.1.1.10
       %CONFIGD-I-NCDNETADDR, NCDnet address for this unit: 0.0
       %CONFIGD-I-READ, reading config file: /usr/lib/X11/ncd/configs/0000A712DB8F




  Anschliessend folgen Meldungen ber den Font-Server und Verbindungen
  von anderen Rechnern. Dieser Port ist sehr interessant fr die
  Fehlersuche.

  Port 5999 (und 5979) ermglicht die Fernadministration des Terminals.
  Allerdings muss dazu in der User Services Console die Konfiguration
  freigeschaltet werden.


  6.2.  Alte Konfiguration lschen

  Falls Sie das Terminal gebraucht erstanden haben, ist wahrscheinlich
  noch eine Konfiguration im NVRAM vorhanden. Diese knnen Sie vom
  Bootprompt aus lschen. Drcken Sie dazu beim Booten zweimal ESC,
  bis Sie den Bootprompt sehen.  Mit dem Befehl nv gelangen Sie ins
  NVRAM-Utility.  Beachten Sie den vernderten Prompt.


       > nv
       ->> help
       NVRAM Utility
       C [adr] - change location adr
       D [start] [end] - display contents
       Q - return to monitor
       L - load defaults X server
       M - load defaults MWT
       R - reload NVRAM values
       S - save new values
       ->>




  Mit dem Befehl l wird die Default-Konfiguration geladen.  Der Befehl s
  speichert die Konfiguratio ab (mit y besttigen). q verlsst das
  NVRAM-Menu und rs rebootet schliesslich das Terminal.















