 |
» |
|
|
 |
Dieser Abschnitt behandelt mögliche Probleme mit
alphanumerischen Anzeige-Terminals; die beschriebenen Aktionen können
jedoch auch bei Problemen mit Terminal-Emulatoren wie AdvanceLink
oder Terminal-Prozessen unter X-Window (z. B. hpterm oder xterm) durchgeführt werden. Terminal
antwortet nicht |  |
Wenn auf einem Terminal außer den über seine
Tastatur eingegebenen Zeichen keine Daten angezeigt werden, kann
dies verschiedene Ursachen haben. Führen Sie von einem
aktiven Terminal aus die folgenden Schritte durch, um das Problem
zu beheben: Überprüfen Sie
den Status des Systems. Wenn das System noch aktiv ist,
versuchen Sie, das Terminal zurückzusetzen. Wenn sich das System im Einbenutzerstatus befindet, ist die
Systemkonsole das einzige aktive Terminal; andere Terminals reagieren
in diesem Fall nicht. Aktivieren Sie den Mehrbenutzerstatus. Hinweise
zum Ändern der Ausführungsebene finden Sie unter init(1M) auf
den HP-UX Hilfeseiten. Überprüfen Sie die Ausführungsebene
des Systems wie folgt: who -r . run-level 2 Sep 28 10 07:10 2 0 S |
Der aktuelle Status des Systems (in diesem Beispiel “run-level
2”) wird in einem grau unterlegten Feld angezeigt. Eine
vollständige Beschreibung dieser Felder finden Sie auf
der Hilfeseite who(1). Prüfen Sie, ob auf dem Terminal
ein Editor aktiv ist. Überprüfen Sie
die aktiven Prozesse, die dem nicht reagierenden Terminal zugeordnet
sind, und stellen Sie fest, ob ein Editorprozess (z. B.
ein aktiver vi-Prozess) darunter ist. Beispiel (mit Terminal tty0p1): /etc/fuser /dev/tty0p1 oder ps -t tty0p1 -f |
Wenn Sie feststellen, dass auf dem Terminal ein Editorprozess
aktiv ist, befindet sich dieser wahrscheinlich im Texteingabemodus.
Speichern Sie die Daten in einer temporären Datei, und
verlassen Sie den Editor. Wenn Sie nicht sicher sind, welchen Status
die bearbeiteten Daten haben, sollten Sie diese nicht einfach
speichern und den Editor beenden. Dadurch wird der momentane Inhalt
der Datei durch unbekannte Daten überschrieben. Speichern
Sie die Daten in einer temporären Datei, so dass Sie sowohl
auf die Originaldaten als auch auf die geänderten Daten
zugreifen können. Falls keine andere Möglichkeit
besteht, beenden Sie den Editorprozess mit dem Befehl kill von der
Konsole aus (siehe Schritt 8.) Drücken Sie die Tastenkombination Strg+Q auf der Tastatur des Terminals. Wenn die Ausgabe an das
nicht reagierende Terminal durch ein vom Terminal an den Rechner
gesendetes XOFF-Signal (Strg-S) gestoppt wurde, können Sie das Terminal mit
einem XON-Signal (Strg-Q) erneut starten. Ist ein Anwendungsprogramm in eine Endlosschleife geraten
oder funktioniert es nicht richtig, drücken Sie die Taste Untbr und anschließend Strg+C, um wieder eine Shell-Eingabeaufforderung anzuzeigen. Falls das nicht reagierende Terminal eine andere Tastenkombination
als Strg+C als Unterbrechungszeichen verwendet, stellen Sie fest,
welche Tastenfolge dies ist. Melden Sie sich dazu auf einem anderen
Terminal an, und geben Sie den Befehl stty -a mit der Gerätedatei des nicht reagierenden
Terminals ein. Verwenden Sie den stty-Befehl nur mit Gerätedateien
für aktive Terminal-Gerätedateien.
Mit dem Befehl who können Sie feststellen, welche Gerätedateien
aktiv sind. Wenn Sie stty mit einer nicht aktiven Gerätedatei verwenden,
blockiert das Terminal, von dem aus Sie den Befehl eingeben. Beispiel: Vergleichen Sie die in der Ausgabe von stty angezeigte Übertragungsgeschwindigkeit
mit der auf dem Terminal eingestellten. Diese Geschwindigkeiten
sollten übereinstimmen. Setzen Sie das Terminal zurück. Drücken
Sie bei einem HP Terminal die Tastenkombination Shift+Reset.
Wenn das Terminal in einem ungewöhnlichen Status blockiert,
schalten Sie es aus, und warten Sie einige Sekunden, bevor Sie es
wieder einschalten. Auf diese Weise wird das Terminal zurückgesetzt.
Vielseitigere Möglichkeiten zum Zurücksetzen des Terminals
werden eventuell im Benutzerhandbuch zum Terminal beschrieben. Eventuell
müssen Sie mit dem Befehl tabs die Tabulatorpositionen neu festlegen. Verwenden Sie bei einem HP Terminal
die Menütasten zum Ermitteln der konfigurierten Modi. Ist der Modus EXTERNER RECHNER* eingeschaltet? Aktivieren
Sie diesen Modus. Ist der BLOCK MODUS* eingeschaltet? Inaktivieren
Sie diesen Modus. Ist der Modus ZEILE ÄNDERN* eingeschaltet? Inaktivieren
Sie diesen Modus. Ist der Modus ALLES ÄNDERN* eingeschaltet? Inaktivieren
Sie diesen Modus.
Überprüfen Sie die Kabelverbindung
zum Terminal, und stellen Sie sicher, dass alle Kabel
fest an der richtigen Position angeschlossen sind. Die Schnittstellenkarten
müssen fest eingebaut, das Netzkabel richtig eingesteckt
und das Terminal eingeschaltet sein. Übertragen Sie eine kurze ASCII-Datei
an die Gerätedatei des nicht reagierenden Terminals. Starten
Sie diesen Befehl im Hintergrund, um sicherzustellen, dass das momentan
verwendete Terminal aktiv bleibt. Wenn das betreffende Terminal
z. B. der Gerätedatei ttyd1p4 zugeordnet ist, geben Sie folgenden Befehl ein: cat /etc/motd > /dev/ttyd1p4 & |
Ist das Problem gelöst, wird der Inhalt der Datei /etc/motd auf dem Terminal angezeigt, das der Datei /dev/ttyd1p4 zugeordnet ist. Beenden Sie die dem nicht reagierenden
Terminal zugeordneten Prozesse mit dem Befehl kill. Verwenden
Sie den Befehl kill nur mit äußerster
Vorsicht, und geben Sie acht, dass Sie nicht versehentlich
einen gültigen Prozess beenden, dessen Ausführung
lange dauert. Überprüfen Sie
zunächst, welche Prozesse auf dem System aktiv sind, wie
im folgenden Beispiel gezeigt: Zum Beenden aller Prozesse, die einem
bestimmten tty -Gerät (z.B. ttyd2p5) zugeordnet sind, geben Sie den Befehl kill und die entsprechende Prozesskennung (PID) ein. Verwenden Sie für kill-Befehle die folgende Reihenfolge: kill -15, kill -3, kill -1, kill -9. (Eine Beschreibung dieser Befehle finden Sie
auf der HP-UX Hilfeseite signal(5).)  |
ps -ef UID PID PPID C STIME TTY TIME COMMAND ... root 94 1 0 Jul 20 tty0p5 0:00 /usr/sbin/getty -h tty0p5 9600 root 14517 1 0 Jul 21 ttyd1p4 0:01 -csh [csh] jaz 20133 1 0 11:20:24 ttyd2p5 0:00 -csh [csh] root 22147 1 0 13:33:45 ? 0:00 /etc/getty -h ttyd2p3 9600 jaz 21234 20133 0 12:22:05 ttyd2p5 0:01 rlogin remote jaz 21235 21234 0 12:22:12 ttyd2p5 0:04 rlogin remote kill -15 21235 21234 20133 |
Sobald die Prozesse beendet sind, startet init einen neuen getty-Prozess für dieses Terminal (sofern der
entsprechende Eintrag in /etc/inittab die Angabe respawn enthält). Überprüfen Sie die Parameter
der Gerätedatei des nicht reagierenden Terminals. Wie
für alle Dateien gibt es auch für Gerätedateien bestimmte
Zugriffsberechtigungen. Diese müssen so gesetzt sein, dass Sie
Zugriff auf die Datei haben. Für die Gerätedatei
eines Terminals sollte die Berechtigung beispielsweise auf 622 (crwww-) gesetzt sein. Vergewissern Sie sich, dass es
sich bei der Datei um eine zeichenorientierte Gerätedatei
handelt. Vergewissern Sie sich, dass Ihre inittab-Einträge aktiv sind. Damit init seine Initialisierungstabellen aus der Datei /etc/inittab aktualisiert, geben Sie den Befehl init q ein. Vergewissern Sie sich, dass die Dateien/dev/muxn und /dev/tty vorhanden sind./dev/muxn ist die der Schnittstellenkarte zugeordnete Gerätedatei. /dev/tty ist ein Pseudogerät, über das
häufig auf das Anmelde-Terminal verwiesen wird. Überprüfen Sie die Funktionalität
Ihrer Hardware. Wenn das betroffene Terminal eine Selbsttestfunktion
bietet, führen Sie diese jetzt aus. Hat Ihr Terminal keine
solche Funktion, schalten Sie das Terminal aus. Warten Sie einige
Sekunden, und schalten Sie das Terminal anschließend wieder
ein. Wechseln Sie das nicht reagierende Terminal gegen ein
anderes aus, von dem Sie wissen, dass es funktioniert. Tauschen
Sie nur das Terminal und die Tastatur aus,
und schließen Sie das funktionsfähige Terminal
an dasselbe Kabel an, das für das
nicht reagierende Terminal verwendet wurde. Schließen Sie
das nicht reagierende Terminal an das Kabel des funktionsfähigen
Terminals an, und stellen Sie fest, welches der beiden Terminals
funktioniert. Falls das funktionsfähige Terminal jetzt nicht funktioniert,
das nicht reagierende Terminal aber jetzt richtig arbeitet, liegt
das Problem nicht am Terminal selbst. Überprüfen Sie das Kabel zwischen
dem nicht reagierenden Terminal und dem Rechner. Tauschen Sie das
Kabel gegen ein funktionsfähiges aus. Falls das Problem
hierdurch behoben wird, ist das Kabel defekt oder falsch verdrahtet.
Ist das Problem nicht behoben, so liegt eventuell ein Fehler beim
Mux, beim Anschluss oder bei der Schnittstellenkarte vor. Bei Multiplexern der Serie 800 können in folgenden
Fällen Probleme auftreten: Wenn /dev/muxn gelöscht wird oder falsche Zugriffsberechtigungen
aufweist. Wenn die zu ladende Firmware gelöscht wird
oder falsche Zugriffsberechtigungen aufweist. Wenn /sbin/dasetup nicht von /etc/inittab gestartet wird. dasetup sollte ausschließlich von inittab gestartet werden. Starten Sie dieses Programm nur im
Einbenutzermodus.
Fehlerhafte
Anzeige auf dem Terminal-Bildschirm |  |
Wenn eine Mischung fehlerhafter und korrekter Daten
auf dem Bildschirm angezeigt wird, könnte dies
folgende Ursachen haben: Störungen auf der Datenleitung
aus einem der folgenden Gründe: Das RS-232-C-Kabel ist zu lang (die
empfohlene Länge beträgt maximal 15 Meter bei
9.600 Baud). Das Datenkabel verläuft zu dicht an Geräten,
die elektrische Störsignale aussenden (z. B. Motoren). Die Leitungen im Kabel sind teilweise kurzgeschlossen
oder gebrochen. Die Qualität der Telefonverbindung reicht
nicht aus.
Es liegt ein Hardwareproblem mit einem Modem, einer
Schnittstellenkarte oder dem Terminal selbst vor. Das Ein-/Ausgabeprogramm sendet ungültige
Daten. Die FUNKT ANZEIGE* des Terminals ist aktiviert (dadurch
werden Steuerzeichen angezeigt, die normalerweise nicht sichtbar
sind). Es wird eine Nicht-ASCII-Datei auf dem Bildschirm
angezeigt.
Wenn ausschließlich fehlerhafte Daten
angezeigt werden, könnte dies folgende Ursachen
haben: Die Baud-Rate ist falsch eingestellt
(sehr wahrscheinlich). Wenn die Übertragungsgeschwindigkeit
Ihres Terminals nicht mit der vom stty-Befehl angegebenen übereinstimmt, erscheinen
auf dem Bildschirm nur fehlerhafte Zeichen. Falls Sie sich noch nicht angemeldet haben, drücken
Sie die Taste Untbr und anschließend zweimal die Eingabetaste. Dies bewirkt, dass getty möglichst den nächsten Eintrag
in /etc/gettydefs verwendet. Normalerweise ist die Datei gettydefs so aufgebaut, dass nach Drücken der Taste Untbr getty möglichst die nächste in /etc/gettydefs angegebene Übertragungsgeschwindigkeit
verwendet. Wenn diese Geschwindigkeit mit der des Terminals übereinstimmt,
wird die Anmeldeaufforderung login angezeigt. Die erzeugte und die geprüfte Parität
stimmen nicht überein. Ermitteln Sie die richtigen Einstellungen
für Ihr Terminal mit dem Befehl stty. Die Umgebungsvariable TERM ist falsch eingestellt. Wenn Sie ein HP Terminal
verwenden, stellen Sie die Variable TERM auf den Wert hp ein (mit Hilfe des Shell-Befehls set). Ein laufender Prozess erzeugt eine fehlerhafte Ausgabe. Das Kabel ist falsch verdrahtet, oder es liegt eine
Leitungsstörung vor. Es liegt ein Hardwarefehler bei der Schnittstellenkarte,
dem Modem, dem Mux- oder einem anderen Gerät vor.
Die Umgebungsvariable TERM wird für die Kompatibilität
der Software mit dem Terminal benötigt. Zum Zeitpunkt der Anmeldung liest die HP-UX Software die Einstellung
von terminfo. Wenn Sie die Konfiguration während einer
Terminal-Session geändert haben, müssen Sie der Software
diese Änderung mitteilen, indem Sie die Variable TERM exportieren. Beispiel in einer Korn-Shell: export TERM=vt100 Weitere Informationen hierzu finden Sie auf der HP-UX
Hilfeseite terminfo(4).
|