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



              

Заметки о Linux-консоли Что же такое консоль - часть 5


Кроме того, слово терминал служит для обозначения программ эмуляции текстовой консоли с ее командной оболочкой (а в следующем разделе будет показано, что консоль в большинстве случаев тесно сопряжена с шеллом) в графическом режиме оконной системы X. Однако такие программы правильнее так и называть - эмуляторами терминала (или терминальными окнами). И вообще, к Linux-консоли они отношения не имеют, да и к Linux'у вообще - лишь косвенное, так как являют собой обычное Иксовое приложение. Речи о них в этих заметках не будет.

В заключение - несколько номенклатурных замечаний. Как известно, все, что существует в Unix-системе статически - суть файлы, в том числе физические или виртуальные устройства. И консоли тут - не исключение, каждой из них соответствует свой файл в каталоге /dev. Выше упоминалось, что физической консоли соответствует файл /dev/console, имеющий идентификатор группы устройств, так называемый старший (major) номер устройства, равный 5, и идентификатор конкретного устройства, младший (minor) номер, равный 1.

Виртуальные консоли в Linux'е ранее ставились в соответствие файлам вида /dev/tty??, где ?? соответствовал порядковому номеру устройства и мог изменяться в пределах от 0 до 63 (почему - будет подробно рассказано в следующей заметке), хотя в реальности их могло быть меньше. Старший номер всех их был равен 4, младший - был идентичен номеру устройства.

В большинстве современных Linux-дистрибутивов используется так называемая файловая система устройств (devfs), вносящая существенные коррективы в номенклатуру последних. Согласно ей, файлы устройств виртуальных консолей сгруппированы в каталоге /dev/vc/ (в некоторых системах имя каталога, в который монтируется devfs, может быть иным). И именуются они просто своими номерами - /dev/vc/1, dev/vc/2 и так далее, каковые и выступаю заодно в качестве младших номеров устройств (старший номер остается прежним - 4).

Во всех известных мне дистрибутивах, задействующих devfs, используется также демон devfsd, обеспечивающий обратную совместимость с файлами устройств в старой номенклатуре (собственно, дело не только в поддержке старой номенклатуры, но это выходит за рамки сегодняшней темы). И потому в каталоге /dev можно обнаружить и файлы устройств виртуальных консолей типа /dev/tty??. Однако это - лишь символические ссылки на файлы реальных устройств, в чем легко убедиться командой

$ ls -l /dev/tty*

которая выведет список вида

lr-xr-xr-x 1 root root 4 Июн 8 2003 /dev/tty0 -> vc/0 lr-xr-xr-x 1 root root 4 Июн 8 2003 /dev/tty1 -> vc/1 lr-xr-xr-x 1 root root 5 Июн 8 2003 /dev/tty10 -> vc/10 lr-xr-xr-x 1 root root 5 Июн 8 2003 /dev/tty11 -> vc/11

и так далее.

Однако теоретически при использовании devfs наличие файлов устройств старого образца отнюдь не обязательно и зависит от настроек демона devfsd в файле /etc/devfsd.conf. А, например, в моей самостройной системе я вообще отказался от обратной совместимости, и никаких tty?? в ней нету. От чего, к слову, никаких неудобств я не испытываю. И во всех остальных заметках молчаливо подразумечается использование файловой системы устройств.

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






Содержание  Назад  Вперед