ИМЯ¶
console - консольные
терминалы и
виртуальные
консоли
ОПИСАНИЕ¶
В Linux-системе
имеется до 63
виртуальных
консолей
(символьных
устройств с
большим
номером
устройства 4
и меньшим -- от 1
до 63). Обычно
устройства
консоли
называются
/dev/tty n, где 1 ≤
n ≤ 63.
Текущая
консоль
также
доступна
как /dev/console или
/dev/tty0,
символьное
устройство
с номером
устройства
(4:0). Файлы
устройств /dev/*
обычно
создаются с
помощью
скрипта MAKEDEV,
или с
помощью mknod(1).
Права
доступа у
этих файлов
обычно 0622, а
владелец -- root.tty.
До версии
ядра 1.1.54
количество
виртуальных
консолей
задавалось
при его
компиляции
(в tty.h: #define NR_CONSOLES 8), и
изменить это
значение
можно было
редактированием
файла и
пересборкой
ядра.
Начиная с
версии 1.1.54
виртуальные
консоли
создаются на
лету при
необходимости.
Обычные
способы
запустить
процесс на
консоли: (a)
указать
init(8) (в
inittab(5))
запускать
getty(8)
на консоли; (b)
попросить
open(1)
запустить
процесс на
консоли; (c)
запустить X -
они найдут
первую
неиспользованную
консоль, и
будут
пользоваться
ею для
вывода
данных. (Есть
еще древняя
doshell(8).)
Обычные
способы
переключения
между
консолями: (a)
использовать
Alt+F
n или Ctrl+Alt+F
n для
переключения
в консоль
n;
AltGr+F
n может
перекинуть
вас в
консоль
n+12
[здесь Alt и AltGr
относятся к
левой и
правой
клавишам Alt,
соответственно];
(b)
использование
Alt+СтрелкаВправо
или
Alt+СтрелкаВлево
для перехода
по кругу по
используемым
консолям; (c)
использование
программы
chvt(1).
(Назначение
клавиш может
определять
пользователь,
см.
loadkeys(1);
указанные
выше
комбинации
клавиш
соответствуют
установкам
по
умолчанию.)
Команда
deallocvt(1)
(ранее
известная
как
disalloc)
освободит
память,
занятую
экранными
буферами
консолей, не
используемых
ни одним
процессом.
СВОЙСТВА¶
У консолей
множество
особенностей.
Я надеюсь
когда-нибудь
все их
задокументировать.
Самое важное
- что консоли
эмулируют vt100
терминалы. В
частности,
консоль
сбрасывается
в начальное
состояние
выводом на
нее двух
символов ESC c.
Все
escape-последовательности
вы найдете в
console_codes(4).
ФАЙЛЫ¶
/dev/console
/dev/tty*
СМОТРИ
ТАКЖЕ¶
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),