Начну с того что знаю. tty-устройства берут своё начало с телетайпов, во времена когда компьютеры были большими. В те времена для ввода и вывода данных использоватись терминалы. В Linux имеется шесть виртуальных терминалов /dev/tty1 - /dev/tty6. /dev/tty0 означает текущий виртуальный терминал, не него выводят свои сообщения ядро и демоны. Также в компьютере имеются COM-порты /dev/ttyS0 и /dev/ttyS1, которых с виртуальными терминалами объединяет то, что и те, ите являются устройствами последовательностного доступа. А вот для чего нужны все остальные tty в /dev, их там около шестидесяти? Это первый вопрос.
Виртуальные терминалы стартуют во время выполнения самого первого конфигурационного файла /etc/inittab:
Код: Выделить всё
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
После того как ядро и демоны закончат выводить свои сообщения в терминал и процесс загрузки Linux будет завершён, getty выведет на терминал приглашение ввести логин и пароль.
Вопрос 2 (очень давно меня интересует): возможно ли то что выводится в терминал записывать в лог?
После залогинивания запустится оболочка (по умолчанию bash), в которой мы и будем работать. Правда перед этим она отработает конфиги profile и bashrc.
Ещё есть эмуляторы терминалов. Продвинутые линуксойды рекомендуют использовать screen, дескать он повышает удобство работы в командной строке.
А вот командой tty я могу узнать в каком терминале я сейчас нахожусь. Если до запуска screen я находился в /dev/tty1, то теперь говорит, что я в /dev/pts/0 Как это понимать? Где должен запускаться screen в bashrc или можно прописать непосредственно в /etc/inittab и как должна выглядеть строка для его запуска. Маны по параметрам запуска screen читал, но ничего не понял, сказано что он умеет подключаться к уже существующим открытым терминалам.
При запуске screen я теряю содержимое активного экрана, можно ли настроить так, чтобы этого не происходило?