Wie wird die Linux-Konsole dem Benutzer angezeigt und wie kann der Benutzer die Anzeigeeinstellungen der Konsolen ändern?

3927
Chris

Ich habe die letzten zwei Tage gesucht, als ich versuchte zu verstehen, wie die Konsole sich dem Benutzer anzeigt und wie die Konsoleneinstellungen geändert werden. Ich hatte auf dem Weg etwas Glück, aber nichts, was ich gefunden habe, gibt mir eine klare Erklärung, wie die Konsole angezeigt wird oder wie die Anzeigeeinstellungen geändert oder gesteuert werden.

Einige Beispiele für was ich suche, sind wie folgt:

Wie wird die Konsole auf dem Bildschirm angezeigt? Ich weiß, dass X11 mit Ihrem Grafikkartentreiber Grafiken auf dem Bildschirm anzeigt, aber wie wird der Textmodus der Konsole behandelt? Könnte mir das jemand erklären oder mich auf einen detaillierten Überblick über alles verweisen?

Ist es möglich, im Konsolenmodus eine Multi-Head-Unterstützung mit separatem tty auf jedem Bildschirm zu haben? Wenn ja, wie sollte ich das einrichten?

Wie würden Sie vorgehen, um die Größe der Konsolenanzeige von der Standardeinstellung 80 x 25 in eine benutzerdefinierte Größe zu ändern?

Ich teste alles, was ich in einem Debian-Testbuild finde, was nur die minimale Basisinstallation auf einer virtuellen Box ist. Im Laufe der Zeit werde ich diese Informationen verwenden, um mein Hauptsystem einzurichten, das mit 3 Monitoren mehrere Anzeigen unterstützt. Ich möchte, wenn möglich, alle drei Displays im Konsolenmodus unterstützen.

2
keine vollständige Antwort, aber Sie suchen nach dem * Kernel Framebuffer * -Konzept und der * Vga * -Kernel-Option. Sie wird normalerweise beim Booten über den Bootloader (Grub, LILO usw.) eingestellt. quack quixote vor 14 Jahren 0
also hat der Kernel einen eigenen Framebuffer? Nach dem, was ich überflogen habe, klang es so, als ob der Bildpuffer eine separate Software wäre. Während ich suchte, habe ich kein Framebuffer-Gerät in meinem / dev-Ordner. Chris vor 14 Jahren 0

3 Antworten auf die Frage

1
Bobby

As quack quixote pointed out, the Kernel Framebuffer is used to draw the screen if no X is started. You can set the size using the boot-parameter vga (deprecated) or gfxpayload (newer).

 vga=vgamodeHere gfxpayload=1440x900x32 

These options need to be set via a boot option, so you'll have to edit /boot/grub/menu.lst for Grub1, and for Grub2 /etc/default/grub and add this boot option to the kernel.

Wie würde ich die gfxpayload-Einstellung übergeben? Chris vor 14 Jahren 0
@Chris: Normalerweise wird dies mit dem Boot-Loader erledigt. Für Grub1 müssen Sie `/ etc / grub / menu.lst` bearbeiten, und für Grub2 wäre es` / etc / default / grub`. Bobby vor 14 Jahren 0
Oder `/ boot / grub / menu.lst` Dennis Williamson vor 14 Jahren 1
@Dennis Williamson: Du hast recht ... es ist natürlich `/ boot / grub / menu.lst` und nicht` etc`. Bobby vor 14 Jahren 0
0
Dennis Williamson

For resizing the console, take a look at the resizecons command.

Ich habe dies auf meinem System ausprobiert und habe diesen Befehl nicht. Chris vor 14 Jahren 0
@Chris: Welche Verteilung? Beachten Sie auch, dass ich einen Tippfehler im Namen des Befehls korrigiert habe, falls Sie die unkorrigierte Version versucht haben. Dennis Williamson vor 14 Jahren 0
Ich benutze Debian Squeeze / Testing Businesscard mit nur der nackten Basis installiert, nichts mehr Chris vor 14 Jahren 0
0
Rafał

Ich habe nur Probleme mit zwei Monitoren. Die Konsolengröße im Grafikmodus kann eingestellt werden fbset, z. B .:

 fbset -xres 1280 -yres 1024 

man fbset zeige auch ein Beispiel:

 fbset -fb /dev/fb0 640x480-60 

zur Verwendung in rc.local. Ich bin mir nicht sicher, ob es für alle Konsolen funktioniert.