Настройка и работа в Linux
adb5321d

Виртуальные терминалы


Прежде всего надо отметить, что syscons изображает из себя несколько "виртуальных терминалов" или "виртуальных консолей". Естественно, пользователь может переключаться из одного такого терминала в другой, с помощью соответствующих клавиш (подробнее смотри "Переключатели виртуальных терминалов.") или выводя на терминал специальные esc-последовательности.
Каждый такой виртуальный терминал является как бы независимым устройством. То есть, вывод на один из виртуальных терминалов никак не влияет на другие, некоторые атрибуты экрана (например цвета символов) могут быть установлены на одном конкретном терминале и не отражаться на других, "модификаторы клавиатуры" (CapsLock, NumLock и т.п.) могут находится в разных положениях на различных терминалах и т.п. Естественно, если пользователь переключится в другой виртуальный терминал, а потом вернется обратно, syscons восстановит и изображение на экране, и аттрибуты, и состояние модификаторов.
  Однако, надо сразу оговориться, что некоторые настройки syscons (шрифты, "раскладка клавиатуры" и некоторые другие) действуют сразу на все виртуальные терминалы, независимо от того, в каком из них вы находились в момент изменения этих настроек.

Обычно с каждым виртуальным терминалом связана своя сессия и своя задача, выполняющаяся в этой сессии. Однако, задача, запущенная на первом (например) виртуальном терминале может работать и с другими терминалами (например, выводить часть своих сообщений на экран другого виртуального терминала).

Обычно syscons поддерживает 16 виртуальных терминалов. Это число определяется при сборке ядра системы и может быть изменено при перегенерации ядра (option MAXCONS). Правда, для того, чтобы можно было их все задействовать, в директории /dev должно быть создано соответствующее количество "точек входа" ("устройства" ttyv0 - ttyv9, ttyva-ttyvf). Дело в том, что в "свеже-инсталлированной" системе таких устройств только 4 (ttyv0-ttyv3).
Для того, чтобы "доделать" остальные надо выполнить команду


/dev/MAKEDEV vty*

где * означает количество устройств, которое вам нужно (для чисел больше 9 используются буквы a-f, как для шестнадцатеричных цифр).

Кроме того, чтобы реально переключиться на какой-нибудь из виртуальных терминалов, он должен быть активным. То есть на нем должна быть запущена хоть какая-нибудь задача. Для того, чтобы при старте системы каждый терминал получил свою задачу, на каждом из них запускается программка getty, которая дает возможность открыть сессию на этом терминале. Это задание (запустить getty на каждом терминале) записывается в файле /etc/ttys. Опять же, в "свеже-поставленной" системе в этом файле "охвачены" только три терминала. Поэтому, если вы хотите пользоваться и остальными, то в этом файле придется добавить "задания" для всех виртуальных терминалов. Только, если вы собираетесь запускать систему X-Window, не забудьте оставить для нее хотя бы один свободный терминал.


Содержание раздела