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. Einführung 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-Brandström-Str. 9 D-24223 Raisdorf 1.3. Copyright Dieses Dokument ist urheberrechtlich geschützt. 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 Lizenzgebühren verbreitet werden darf, solange dieser Copyright- Hinweis nicht entfernt wird. Eine kommerzielle Verbreitung ist erlaubt und ausdrücklich erwünscht. Bei einer Publikation in Papierform ist das Deutsche Linux HOWTO Projekt hierüber zu informieren. 1.4. Weiterführende Seiten Es gibt ein paar Seiten im Netz, welche die Nutzung der Terminals nach der Installation beschreiben. Dies sind meist Seiten von Universitäten für 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 können auch lokal an einem Rechner über das Loopback-Interface verbunden werden. 2.3. Terminal-Software Die Software für das Terminal sollten Sie auf einer CD mitgeliefert bekommen haben. Falls Sie, wie ich, das Terminal günstig 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 während 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 für ein einzelnes X-Terminal Overkill, da es eine zusätzliche Sicherheitslücke 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 würde. 3. Linux-Konfiguration 3.1. TFTP Der TFTP-Server muss zuerst installiert und konfiguriert werden, weil er nicht zur Standard-Software gehört. 3.1.1. Installation Debian ermöglicht die Installation mit dem Befehl: apt-get install tftpd SuSE-User könnem im Yast das TFTP-Paket auswählen 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 müssen die X-Server-Dateien und ggf. auch Schriftarten abgelegt werden. 3.1.3. GDM-Konfiguration Ihr Linux-Rechner muss das Login für das X-Terminal erlauben. Falls Sie den GDM nutzen, können 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 benötigt 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 to abort Die MAC-Adresse oder der Speicherausbau varieren natürlich, so dass Sie vielleicht andere Werte haben. Nach dem zweimaligen Drücken 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 können 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 können 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 zusätzlichen 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 möchten, ist nur noch ein Doppelklick nötig. Falls der Rechner noch nicht aufgelistet wird, müssen Sie dessen IP-Adresse in der Hostzeile eingeben. Nach kurzer Zeit erscheint der grafische Login-Bildschirm des ausgewählten Rechners. 4.3. Konfiguration Am oberen linken Bildschirmrand ist ein Programm zu sehen, mit dessen Hilfe Sie viele Einstellungen vornehmen können. 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 verfügt über die angesprochenen Fonts. Diese reichen oft nicht aus oder man möchte andere zusätzliche Fonts nutzen. Ein Font- Server auf einem Unix-Rechner kann diese Fonts zur Verfügung stellen. 5.1. Font-Server installieren Ihr Linux-Rechner hat für seinen lokalen X-Server sehr viele Fonts, die wir auch dem Terminal zur Verfügung stellen möchten. Der xfs-xtt lässt 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« drücken 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 für die Fehlersuche. Port 5999 (und 5979) ermöglicht die Fernadministration des Terminals. Allerdings muss dazu in der User Services Console die Konfiguration freigeschaltet werden. 6.2. Alte Konfiguration löschen Falls Sie das Terminal gebraucht erstanden haben, ist wahrscheinlich noch eine Konfiguration im NVRAM vorhanden. Diese können Sie vom Bootprompt aus löschen. Drücken Sie dazu beim Booten zweimal »ESC«, bis Sie den Bootprompt sehen. Mit dem Befehl nv gelangen Sie ins NVRAM-Utility. Beachten Sie den veränderten 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 bestätigen). q verlässt das NVRAM-Menu und rs rebootet schliesslich das Terminal.