NOMBRE¶
console - terminal de consola y consolas virtuales.
DESCRIPCIÓN¶
Un sistema Linux tiene hasta 63
consolas virtuales (dispositivos de
carácter de número mayor 4 y menor de 1 a 63), denominadas
habitualmente
/dev/ttyn donde 1 ≤
n ≤ 63. La
consola actual se designa también por
/dev/console o
/dev/tty0, el dispositivo de carácter con número mayor 4 y
menor 0. Los ficheros de dispositivo /dev/* se crean normalmente con el
guión MAKEDEV o con
mknod(1), habitualmente con el modo 0622 y
propietario/grupo root.tty.
Anteriormente a la versión 1.1.54 del núcleo, el número de
consolas virtuales se compilaba en el propio núcleo (en tty.h: #define
NR_CONSOLES 8) y sólo se podía cambiar editando y recompilando. A
partir de la versión 1.1.54, las consolas virtuales se crean sobre la
marcha, en el momento en que se necesiten.
Las formas habituales de arrancar un proceso en una consola son: (a) decir a
init(8) (en
inittab(5)) que arranque un
getty(8) en la
consola; (b) pedir a
open(1) que arranque un proceso en la consola; (c)
arrancar X, que buscará la primera consola libre y visualizará
allí su salida. (También está el viejo
doshell(8).)
Para conmutar de consola podemos: (a) teclear Alt+F
n o Ctrl+Alt+F
n para conmutar a la consola
n; AltGr+F
n puede llevarnos
a la consola
n+12 [aquí Alt y AltGr se refieren a las teclas Alt
izquierda y derecha respectivamente]; (b) usar Alt+CursorDerecha o
Alt+CursorIzquierda para hacer un ciclo a través de las consolas en uso;
(c) usar el programa
chvt(1). (Las combinaciones de teclas son
definibles por el usuario, véase
loadkeys(1). Las combinaciones
mencionadas arriba son los valores por omisión).
El programa
deallocvt(1) (anteriormente
disalloc) libera la
memoria reservada por los tampones de pantalla de aquellas consolas que no
tengan ningún proceso asociado.
PROPIEDADES¶
Las consolas conllevan un montón de estado. Espero documentarlo alguna vez.
El hecho más importante es que las consolas simulan terminales vt100. En
particular, si se imprimen dos caracteres ESC c, la consola vuelve a su estado
inicial. Todas las secuencias de escape se pueden encontrar en
console_codes(4).
FICHEROS¶
/dev/console
/dev/tty*
VÉASE TAMBIÉN¶
chvt(1),
deallocvt(1),
loadkeys(1),
mknod(1),
open(1),
console_codes(4),
console_ioctl(4),
tty(4),
ttys(4),
charsets(7),
getty(8),
init(8),
mapscrn(8) resizecons(8),
setfont(8)