[FAQ-Index] [Zum Kapitel 6 - Netzwerk] [Zum Kapitel 8 - Allgemeine Fragen]
Die Portierungen, die den wscons(4)-Konsolentreiber benutzen: alpha, amd64, hppa, i386, mac68k, macppc, sparc, sparc64, vax, und zaurus.
Bei wscons(4)-Konsolen werden die meisten Optionen mit dem Werkzeug wsconsctl(8) kontrolliert. Beispielsweise würde man die Tastaturbelegung mit Hilfe von wsconsctl(8) wie folgt ändern:
# wsconsctl -w keyboard.encoding=de
Im nächsten Beispiel werden wir die [CAPS LOCK]-Taste neu belegen; und zwar so, dass sie nun [STRG L] ist:
# wsconsctl -w keyboard.map+="keysym Caps_Lock = Control_L"
Für die alpha-, amd64- und i386-Plattformen bietet OpenBSD den wsmoused(8) an - einen Port des moused(8) von FreeBSD. Er kann bei jedem Booten automatisch aktiviert werden, indem du die passende Zeile in rc.conf(8) editierst.
Dazu musst du eine Zeile in /etc/gettytab(5) einfügen. Ändere die Sektion, die so aussieht:
P|Pc|Pc console:\
:np:sp#9600:
Füge die Zeile :cl=\E[H\E[2J: am Ende hinzu, sodass das ganze schlussendlich so aussieht:
P|Pc|Pc console:\
:np:sp#9600:\
:cl=\E[H\E[2J:
OpenBSD bietet auf einigen Plattformen einen sogenannten Konsolenscrollbackpuffer. Damit ist es möglich, Informationen zu sehen, die bereits wieder oben aus dem Bildschirm gescrollt sind. Um sich auf- und abwärts zu bewegen, benutze einfach die Tastenkombinationen [SHIFT]+[BILD AUF] und [SHIFT]+[BILD AB]
Der Standardscrollbackpuffer und somit auch die Anzahl der Seiten, die du so betrachten kannst, beträgt 8. Das ist eine Funktionalität des vga(4)-Treibers - daher funktioniert das alles natürlich nicht ohne VGA-Karte auf jeglichen Plattformen (viele Alpha-Systeme haben TGA-Video).
Wegen der Speicherbegrenzung unterstützen die Installationskernel keine Scrollbackfunktion. Ein Konsolenwechsel wird den Scrollbackpuffer löschen.
Die X-Umgebung benutzt ttyC4: [STRG]+[ALT]+[F5]. Wenn du X benutzt, bringen dich die [STRG]+[ALT]+[Fn]-Tasten auf die Textkonsolen und [STRG]+[ALT]+[F5] bringt dich wieder auf die grafische Oberfläche.
Wenn du mehr als die standardmäßige Anzahl der Textkonsolen haben willst, kannst du den Befehl wsconscfg(8) benutzen, um Bildschirme für ttyC6, ttyC7 und weitere zu erzeugen. Zum Beispiel:
wsconscfg -t 80x25 6
Dieser Eintrag erzeugt ein virtuelles Terminal für ttyC6, welches man
mit [STRG]+[ALT]+[F7] erreicht. Vergiss nicht, diesen Befehl
deiner
rc.local(8)-Datei
hinzuzufügen, wenn der zusätzliche Bildschirm auch nach dem nächsten
Neustart noch vorhanden sein soll.
Denk daran, dass du keinen login:-Prompt auf der neu erzeugten virtuellen Konsole erhältst, bis du sie in /etc/ttys(5) auf on setzt und entweder mit init(8) neustartest oder ein HUP-Signal mittels kill(1) sendest.
Auf dem Zaurus stehen standardmäßig zwei virtuelle Terminals (/dev/ttyC0 und /dev/ttyC1) zur Verfügung, die mit den Tastenkombinationen [ALT]+[CALENDAR] und [ALT]+[ADDRESS] erreicht werden können (Die [ALT]-Taste befindet sich rechts neben der linken [CTRL]-Taste).
Zunächst einmal kann man einen Font, der die gewünschte Auflösung unterstützt, mittels des Befehls wsfontload laden. Der standardmäßige Textbildschirm mit der Auflösung 80x25 benutzt 8x16-Pixelfonts; um die vertikale Auflösung zu verdoppeln, müssen wir 8x8-Pixelfonts benutzen.
Danach müssen wir die virtuelle Konsole löschen und in der gewünschten Auflösung neu erzeugen. Das machen wir mit dem Befehl wsconscfg.
Das kann während des Bootens automatisch am Ende deiner rc.local-Datei geschehen:
wsfontload -h 8 -e ibm /usr/share/misc/pcvtfonts/vt220l.808
wsconscfg -dF 5
wsconscfg -t 80x50 5
Wie bei jeder Änderung deiner Systemkonfiguration solltest du
etwas Zeit mit den passenden Manualseiten verbringen, um zu verstehen,
was diese Befehle eigentlich tun.
Die erste Zeile dort oben lädt den 8x8-Schriftsatz. Die zweite Zeile löscht den virtuellen Bildschirm Nummer 5 (den man mit [STRG]-[ALT]-[F6] erreichen würde). Die dritte Zeile erzeugt einen neuen Bildschirm 5 mit der Auflösung 50 Zeilen mit je 80 Buchstaben. Wenn du alles so gemacht hast, werden deine anderen virtuellen Bildschirme ganz normal im 80x25-Modus erscheinen; der neue Bildschirm 5 mit 80x50 ist mit [STRG]-[ALT]-[F6] erreichbar.
Denke daran, dass [STRG]-[ALT]-[F1] hier Bildschirm 0 ist. Wenn du die anderen Schirme auch ändern willst, wiederhole einfach die Schritte delete und add screen für jeden Bildschirm, den du mit 80x50 betreiben willst.
Du solltest aber Bildschirm 4 (ttyC4, [STRG]-[ALT]-[F5]) unverändert lassen, da dieser von X als grafischer Schirm genutzt wird. Außerdem ist es nicht möglich, die Auflösung des ersten Konsolendevices zu ändern (also ttyC0).
Selbstverständlich können all diese Befehle auch als root an der Konsole eingegeben werden - oder besser mittels sudo(8).
Hinweis: Das funktioniert nicht mit allen Grafikkarten. Dummerweise unterstützen nicht alle Grafikkarten die von wscons benötigten Schriftsätze für den 80x50-Textmodus. In diesen Fällen solltest du über den Einsatz von X nachdenken.
Bedenke, dass serielles Arbeiten/Interfacing KEINE einfache Sache ist - du wirst oft ungewöhnliche Kabel benötigen und Schnittstellen sind oft nicht zwischen den Maschinen standardisiert und manchmal noch nicht mal auf einer einzelnen Maschine konsistent. Ein komplettes Tutorial über serielles Arbeiten/Interfacing geht zwar weit über die Möglichkeiten dieses Artikels hinaus, aber wir geben dir trotzdem einen guten Rat: Nur weil der Stecker hineinpasst, heißt das noch lange nicht, dass es auch funktioniert.
Terminalsitzungen werden von der Datei
/etc/ttys
kontrolliert. Bevor OpenBSD dir auf der seriellen Konsole einen
login:-Prompt serviert, musst du das ganze in /etc/ttys
einschalten - normalerweise gibt es ja andere Verwendungen für die
serielle Schnittstelle. Bei Plattformen, die normalerweise eine
angeschlossene Tastatur und einen angeschlossenen Bildschirm haben, ist
die serielle Konsole standardmäßig ausgeschaltet. Wir benutzen hier die
i386-Plattform als Beispiel. In diesem Fall musst du die Zeile
editieren, die wie folgt aussieht:
tty00 "/usr/libexec/getty std.9600" unknown off
Ist so zu ändern in, dass sie so ähnlich wie folgt aussieht:
tty00 "/usr/libexec/getty std.9600" vt220 on secure
Die serielle Schnittstelle ist in diesem Fall die Gerätedatei
tty00, die wir als Konsole nutzen wollen. vt220
ist dabei der
termcap(5)-Eintrag,
der DEIN Terminal beschreibt (weitere häufig genutzte Optionen
sind vt100, xterm etc.). Das on
aktiviert das
getty
für die serielle Schnittstelle, sodass ein login:-Prompt
präsentiert wird, die Option secure erlaubt ein root- (UID 0)
Login auf dieser Konsole (das kann man wollen - oder auch nicht) und
9600 ist die Baudrate des Terminals. Du solltest dabei die
Baudrate aber nicht auf den maximalen Wert stellen, der von deiner
Hardware unterstützt wird, da eine solche Einstellung weitaus mehr
Probleme als Nutzen verursachen wird. Die meisten System haben eine
Standardgeschwindigkeit (liegt bei Boot-ROMs und/oder dem Bootloader
meist bei 9600). Verwende diesen Wert, wenn du keinen guten Grund hast,
einen anderen nutzen zu müssen.
Denke daran, dass du die serielle Konsole auch ohne diese Schritte für Installationen benutzen kannst, da das System im Singleuser-Modus läuft und getty gar nicht erst für den Login benutzt wird.
Auf einigen Plattformen und einigen Konfigurationen ist es notwendig, das System im Singleuser-Modus zu booten, damit die Änderungen durchgeführt werden können.
set tty com0
Damit kannst du die erste serielle Schnittstelle als Konsole verwendest.
Die Standardbaudrate ist 9600 bps, das kann mittels der stty-Option in
/etc/boot.conf angepasst werden. Diese Datei wird auf deinem
Bootlaufwerk abgelegt (kann auch deine Installationsdiskette sein);
das Kommando kann aber ebenso gut am boot>-Prompt vom
OpenBSD-Secondstage-Bootloader
eingegeben werden, wenn es nur ein einziges Mal (oder zum ersten Mal)
genutzt werden soll.
ok setenv input-device ttya
ok setenv output-device ttya
ok reset
Wenn Tastatur und Monitor (ttyC0) in /etc/ttys
(siehe oben) aktiv sind, kannst du sie
zusätzlich benutzen.
ok setenv output-device scca
ok setenv input-device scca
ok reset-all
Setze deine serielle Konsole auf 57600 bps, 8N1.
# wsconsctl -w display.screen_off=60000
display.screen_off -> 60000
oder sie dauerhaft setzen, indem du sie in der Datei
/etc/wsconsctl.conf
einträgst, sodass sie beim nächsten Bootvorgang aktiviert werden:
display.vblank=on # enable vertical sync blank
display.screen_off=600000 # set screen blank timeout to 10 minutes
display.kbdact=on # Restore screen on keyboard input
display.outact=off # Restore screen on display output
Der Bildschirmschoner wird entweder aktiv, wenn display.kbdact
oder display.outact auf on gesetzt sind.
Nahezu alle Unix-Befehle und -Benutzernamen werden in Kleinbuchstaben eingegeben. Trotzdem waren einige alte Terminals nur in der Lage, Großbuchstaben zu benutzen, was es für sie unmöglich machte, für Unix benutzt zu werden. Als Umgehung des Problems hat getty(8), wenn du deinen Benutzernamen komplett in Großbuchstaben eingegeben hast, angenommen dass dein Terminal »lowercase challenged« sei und hat einfach alles, was du getippt hast, als Kleinbuchstaben interpretiert, es allerdings alles in Großbuchstaben ausgegeben. Wenn du ein gemischtes oder Nur-Großbuchstaben-Passwort hast, kannst du dich nicht einloggen.
Wenn du [STRG]-D am Loginprompt drückst, wird getty(8) beendet und init(8) wird einen neuen starten, der dann Groß- und Kleinbuchstaben sauber akzeptiert.
[FAQ-Index] [Zum Kapitel 6 - Netzwerken] [Zum Kapitel 8 - Allgemeine Fragen]