Почему так много виртуальных консолей?

В чем причина наличия такого количества виртуальных консолей?

Я бы понял, если бы была одна в случае сбоя графического интерфейса, но еще 6, кроме стандартных? Для чего они? Я даже не вижу смысла ни в одном из них, за исключением случаев зависания графического интерфейса.

26
задан 5 December 2013 в 02:24

4 ответа

Краткий ответ: почему нет? (подразумеваемая улыбка, пожалуйста)

Более длинный: я полагаю, это в основном история. Там, где 6 виртуальных консолей, настроенных с помощью getty в первом Linux, я загрузил с поддержкой VC, я действительно забыл, когда (это было около 1990 года, я думаю). Затем, когда вы запустили графическое окружение (вручную, с startx ), оно открылось на первом свободном VC, который оказался # 7. И я по-прежнему выполнял большую часть своей работы с венчурными капиталистами в то время: редакторы были намного быстрее, а иногда я использовал больше венчурных капиталистов, чем стандартная шестерка, и мой ноутбук не был точно графическим монстром ...

Например, я использовал три редактора (программу, ее входные данные, описывающий ее файл TeX), один VC для компиляции, другой для чтения руководства и другой, подключенный через telnet к моему почтовому серверу.

Я подозреваю, что обоснование для того, чтобы по-прежнему использовать шесть виртуальных консолей, состоит в том, чтобы позволить графический VC на # 7 для всех, так что вы можете писать в руководствах «Ctrl-Alt-F7», а не «Ctrl-Alt-Fx где x это первый бесплатный ВК ».

Как примечание, вы можете (я полагаю, никогда не пытался) обрезать VC. Просто сделайте

 sudo bash -c "echo 'manual' >> /etc/init/tty6.override"

, чтобы остановить VC # 6, , следуя инструкции по началу работы .

0
ответ дан 5 December 2013 в 02:24
  • 1
    Спасибо за Ваш ответ, unfortunatly, flashtool, обеспеченный в том учебном руководстве doesn' t работа (это не показывает признака это it' s выполнение чего-либо) – Finlay Roelofs 13 May 2015 в 10:23

Почему не больше? Запустите top или htop в одной (дает статистику использования процессора / памяти), ssh для других систем в 2 или 3, запустите некоторую автоматизированную задачу в другой, оставьте одну бесплатной на всякий случай, войдите в систему для нескольких пользователей в еще немного, запустите cmatrix на одном, запустите графический интерфейс в другом с помощью -

startx -- :1

(некоторые графики содержат ошибки с этим)

http: //mostlylinux.wordpress .com / устранение неисправностей / ttysessions /

Когда вы действительно начнете использовать эту функцию, 7 tty (седьмой по умолчанию) кажутся немногим - и вы можете добавить больше.

Чтобы уменьшить количество: Как я могу уменьшить количество TTY?

0
ответ дан 5 December 2013 в 02:24

Практичность реальна. В действительно многопользовательской системе Linux может быть одновременно запущено несколько программ, и вы можете проверить каждую из них, работает ли она в своем собственном виртуальном терминале. Когда вы входите в каждый из них, вы можете войти как разные пользователи, если это необходимо. Теперь, само собой разумеется, многие люди приходят в Linux с однопользовательской точки зрения, но с тех пор, как Linux родился многопользовательским, эта возможность никогда не отбрасывалась.

0
ответ дан 5 December 2013 в 02:24

Весь из /dev/tty* записи являются чем-то известным как device file, в соответствии с философией Unix. Они служат ссылкой между устройством пользователя и существующим устройством, но их цель может отличаться немного.

Виртуальные консоли

Файлы устройств как /dev/tty123 может использоваться для взаимодействия с системой через регулярную оболочку. Это - виртуальные терминалы. Система Ubuntu настроена для открытия по умолчанию TTY 1 through 6, но можно вручную открыться больше, например:

sudo openvt -c 9 -s "bash"

Это откроется bash как корень на/dev/tty9 и сразу переключают Вас на это TTY.  , Чтобы сделать то же без sudo как некорневые, необходимо будет изменить владение tty, который Вы хотите открыть. Например,

$ sudo chown xieerqi:tty /dev/tty8 
$ openvt -c 8 -l 

Это зарегистрировало бы меня в с моей оболочкой по умолчанию на tty8. В моих тестах, однако, кажется, что это работает через TTY только, поэтому при выполнении этого через эмулятор терминала который не мог бы работать (я добирался Couldn't get a file descriptor referring to the console ошибка и только sudo openvt -c 8 -l работавший для меня от эмулятора)

С исторической точки зрения, прежде чем были созданы все необычные оконечные мультиплексоры, это было полезной функцией - Вы могли породить до 62 команд (возможно, серверы) на тех консолях и позволить им работать при работе в 63-м. В наше время это не могло бы быть по мере необходимости.

Существует несколько файлов устройств, созданных по умолчанию. Активные равняются 1 - 6, но можно изменить их число путем редактирования /etc/default/console-setup, конкретно эта часть:

# Setup these consoles.  Most people do not need to change this.
ACTIVE_CONSOLES="/dev/tty[1-6]"

ttyS* устройства

Это файлы устройств, используемые для последовательных консолей, иначе UART (также известный как RS-232). В прошлом много компьютерных систем шли бы с последовательным портом. В наше время это могло главным образом быть найдено на типе сервера компьютеров. Несколько ttyS устройств могли быть полезными с концентраторами RS-232, которые позволяют подключать несколько устройств, которые будут управляться через USB или Ethernet.

Для инженеров-электриков (который является тем, в чем я специализируюсь в колледже), мы используем последовательный порт для взаимодействия с микроконтроллерами и макетными платами (Ардуино, например). Единственные компьютеры порта, такие как Raspberry Pi, также используют его. В наше время последовательное соединение устанавливается с помощью USB для кабеля UART, и открывая консоль в терминале через screen как так:

screen /dev/ttyUSB0 115200 # the number is baud rate or speed

Обратите внимание на то, что Ардуино и Малина создадут их собственный файл устройств для последовательного соединения, /dev/ttyUSB0 или /dev/ttyACM0

vcs* устройства

Согласно man vcs это консольные запоминающие устройства. В простых словах, если Вы делаете sudo cat /dev/vcs1 Вы будете видеть то, что находится на экране в /dev/tty1 , по крайней мере, до максимальной суммы строк в том терминале.

Сокращение числа консолей

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

sudo bash -c 'for num in $(seq 10 63 ) ; do MAKEDEV -v -d "tty$num" ; done'

Это, однако, несколько бессмысленно - файлы устройств не занимают места и не влияют на производительность системы.

8
ответ дан 5 December 2013 в 02:24

Другие вопросы по тегам:

Похожие вопросы: