.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1995 James R. Van Zandt .\" Sat Feb 18 09:11:07 EST 1995 .\" .\" %%%LICENSE_START(GPLv2+_DOC_FULL) .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. .\" .\" The GNU General Public License's references to "object code" .\" and "executables" are to be interpreted as the output of any .\" document formatting or typesetting system, including .\" intermediate and printed output. .\" .\" This manual is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public .\" License along with this manual; if not, see .\" . .\" %%%LICENSE_END .\" .\" Modified, Sun Feb 26 15:08:05 1995, faith@cs.unc.edu .\" 2007-12-17, Samuel Thibault : .\" document the VT_GETHIFONTMASK ioctl .\" " .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH VCS 4 "1. November 2020" Linux Linux\-Programmierhandbuch .SH BEZEICHNUNG vcs, vcsa \- Speicher der virtuellen Konsolen .SH BESCHREIBUNG \fI/dev/vcs0\fP ist ein zeichenorientiertes Gerät mit der Major\-Nummer 7 und der Minor\-Nummer 0. Das Gerät gehört üblicherweise root:tty; der Zugriffsmodus ist auf 0644 gesetzt. Es verweist auf den Speicher der aktuell angezeigten virtuellen Konsole. .PP \fI/dev/vcs[1\-63]\fP sind zeichenorientierte Geräte für virtuelle Konsolen mit der Major\-Nummer 7 und den Minor\-Nummern 1 bis 63, normalerweise Modus 0644 und die Eigentümerschaft root:tty. \fI/dev/vcsa[0\-63]\fP sind identisch, verwenden aber \fIunsigned short\fPs (in der Reihenfolge des Rechners), die Attribute enthalten und denen vier Bytes vorangestellt sind, die die Bildschirmgröße und die Cursor\-Position angeben: \fIlines\fP, \fIcolumns\fP, \fIx\fP, \fIy\fP. (\fIx\fP = \fIy\fP = 0 linke obere Bildschirmecke) .PP Wenn eine Schrift mit 512 Zeichen geladen wird, kann die neunte Bit\-Position durch die Anwendung der \fBioctl\fP(2)\-Operation \fBVT_GETHIFONTMASK\fP (verfügbar in den Linux\-Kerneln 2.6.18 und höher) auf \fI/dev/tty[1\-63]\fP bestimmt werden; der Wert wird in dem \fIunsigned short\fP zurückgegeben, auf den das dritte Argument von \fBioctl\fP(2) zeigt. .PP Diese Geräte ersetzen die »Screendump«\-\fBioctl\fP(2)\-Operationen von \fBioctl_console\fP(2), sodass der Systemadministrator die Rechte für die einzelnen Konsolen durch das Setzen von normalen Dateisystemattributen vergeben kann. .PP Die Geräte für die ersten acht virtuellen Konsolen können wie folgt erstellt werden: .PP .in +4n .EX for x in 0 1 2 3 4 5 6 7 8; do mknod \-m 644 /dev/vcs$x c 7 $x; mknod \-m 644 /dev/vcsa$x c 7 $[$x+128]; done chown root:tty /dev/vcs* .EE .in .PP Aufrufe von \fBioctl\fP(2) werden nicht unterstützt. .SH DATEIEN \fI/dev/vcs[0\-63]\fP .br .\" .SH AUTHOR .\" Andries Brouwer \fI/dev/vcsa[0\-63]\fP .SH VERSIONEN Diese Geräte wurden in der Version 1.1.92 des Linux\-Kernels eingeführt. .SH BEISPIELE Sie können ein »Screendump« (Bildschirmphoto) von VT2 erstellen, indem Sie auf VT1 wechseln und folgendes eingeben: .PP .in +4n .EX cat /dev/vcs3 >foo .EE .in .PP Beachten Sie, dass die Ausgabe kein Zeilenumbruchzeichen enthält und Nacharbeit notwendig sein kann, wie .PP .in +4n .EX fold \-w 81 /dev/vcs3 | lpr .EE .in .PP oder (Horror) .PP .in +4n .EX setterm \-dump 3 \-file /proc/self/fd/1 .EE .in .PP Das Gerät \fI/dev/vcsa0\fP unterstützt Braille. .PP Das folgende Programm zeigt die Zeichen\- und Bildschirmattribute unter dem Cursor der zweiten virtuellen Konsole an und ändert danach dort die Hintergrundfarbe. .PP .EX #include #include #include #include #include #include int main(void) { int fd; char *device = "/dev/vcsa2"; char *console = "/dev/tty2"; struct {unsigned char lines, cols, x, y;} scrn; unsigned short s; unsigned short mask; unsigned char attrib; int ch; fd = open(console, O_RDWR); if (fd < 0) { perror(console); exit(EXIT_FAILURE); } if (ioctl(fd, VT_GETHIFONTMASK, &mask) < 0) { perror("VT_GETHIFONTMASK"); exit(EXIT_FAILURE); } (void) close(fd); fd = open(device, O_RDWR); if (fd < 0) { perror(device); exit(EXIT_FAILURE); } (void) read(fd, &scrn, 4); (void) lseek(fd, 4 + 2*(scrn.y*scrn.cols + scrn.x), SEEK_SET); (void) read(fd, &s, 2); ch = s & 0xff; if (s & mask) ch |= 0x100; attrib = ((s & \(timask) >> 8); printf("ch=%#03x attrib=%#02x\en", ch, attrib); s \(ha= 0x1000; (void) lseek(fd, \-2, SEEK_CUR); (void) write(fd, &s, 2); exit(EXIT_SUCCESS); } .EE .SH "SIEHE AUCH" \fBioctl_console\fP(2), \fBtty\fP(4), \fBttyS\fP(4), \fBgpm\fP(8) .SH KOLOPHON Diese Seite ist Teil der Veröffentlichung 5.10 des Projekts Linux\-\fIman\-pages\fP. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter \%https://www.kernel.org/doc/man\-pages/. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Christian Schmidt , Martin Eberhard Schauer , Helge Kreutzmann und Mario Blättermann erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die .MT debian-l10n-german@\:lists.\:debian.\:org Mailingliste der Übersetzer .ME .