Установка скорости и терминала для портов TTY определяются в управляющем файле /etc/ttydefs. Этот файл можно модифицировать с помощью команды или выбора Ports из меню System Administration.
Если вы выберете tty-settings из меню Ports, система выдаст экран, дающий вам возможность добавлять, модифицировать или удалять установки tty из системы.
Если вы выбираете опцию add, система выдаст вам следующую форму, которую надо заполнить (показаны значения по умолчанию):
Create TTY Line Settings and Hunt Sequences -------------------------------------------------------- Ttylabel: Enable autobaud? No Baud rate: Nextlabel: Initial line settings: hupcl erase ^h Final line settings sane ixany hupcl tab 3 erase ^h Fill in the form and press [SAVE]
ttylabel - это необязательная метка, используемая для идентификации конкретной устанавливаемой линии.
Autobaud - это параметр скорости передачи линии. Когда autobaud используется вместо установки скорости передачи, ttymon определяет скорость линии порта TTY, анализируя первый из введенных символов "возврат каретки", и устанавливает скорость в соответствии с этим.
Baud rate - это скорость линии.
nextlabel - это имя еще одной установки линии, которая используется, если текущая установка не обеспечивает совместимую скорость линии пользователю (выявленную, если пользователь посылает BREAK). Серия скоростей часто связывается вместе таким способом в замкнутое множество, носящее название последовательности замкнутого поиска (hunt). Например, 4800 может связываться с 1200, которая в свою очередь связывается с 2400, которая, наконец, связывается с 4800.
Initial and Final line settings поддерживают любые параметры termio (7), которые применяются в линии.
Показанные поля флагов имеют следующие значения:
Если вы выберете опцию List Line Settings из меню установок tty, система выдаст прокручиваемый список всех последовательностей hunt. Список будет от каждой ttylabel до соответствующей ей nextlabel. Если вы выберете установку из списка, вы получите детальное описание следующего вида:
Detailed Line Settings for TTY Label <label> ---------------------------------------------------------- Ttylabel: Initial Flags: Final Flags: Autobaud: Nextlabel: flag meaning . . . . . .
По существу информация та же, что вы имеете, когда создаете установку линии, за исключением того, что указывается еще значение каждого флага.
Когда вы выберите опцию Remove Line Setting, вы также получите список существующих меток и следующих меток. Выбор метки для удаления по новому свяжет последовательность hunt.
/etc/ttydefs - это управляющий файл, используемый ttymon. Он определяет установки скорости и терминала для портов TTY. Файл ttydefs содержит информацию, перечисленную ниже. Далее показана связь между полями ttylabel и nextlabel в управляющих файлах ttymon и файлах ttydefs. Образец файла ttydefs:
Все установки termio (7), поддерживаемые командой stty, поддерживаются как параметры в файле ttydefs. Например, вы сможете указать стирание по умолчанию и символы завершения.
sttydefs (1M) - это команда администратора, которая обслуживает файл ttydefs. Файл ttydefs содержит информацию об установках линий и последовательностях hunt для портов TTY системы. Команда sttydefs вместе с файлом ttydefs обеспечивает средства управления режимами терминала и установками линий. Команда sttydefs используется для:
Для просмотра информации об установке линии терминала используется команда:
/usr/sbin/sttydefs -l [ttylabel]
Если ttylabel указаны, sttydefs распечатывает запись ttydefs, которая соответствует этой ttylabel. Если ttylabel не указана, sttydefs распечатывает эту информацию для всех записей в файле /etc/ttydefs. sttydefs проверяет, что каждый отображаемый ею элемент - правильный, и что поле nextlabel элемента относится к существующей ttylabel. Для каждого выявленного недействительного элемента распечатывается сообщение об ошибке.
/usr/sbin/sttydefs -a ttylabel [-b] [-n nextlabel]\ [-i initial-flags] [-f final-flags]
sttydefs с параметром -a добавляет запись в файл ttydefs. ttylabel идентифицирует запись. Далее описывается действие параметров -b, -n, -i или -f, когда они используются с параметром -a. Параметр -a является действительным только тогда, когда вызывается привилегированным пользователем.
Параметр -b разрешает автоматическую настройку скорости передачи.
Параметр -n указывает значение, используемое в поле nextlabel. Если nextlabel не указано, sttydefs будет устанавливать nextlabel на ttylabel.
Параметр -i указывает значение, используемое в поле initial-flags. Аргумент этого параметра должен быть представлен в формате, распознаваемом командой stty. Если initial-flags не указан, sttydefs будет устанавливать initial-flags на флаг termio (7) 9600.
Параметр -f указывает значение, используемое в поле final-flags. Аргумент параметра -f должен быть представлен в формате, распознаваемом командой stty. Если final-flags не указаны, sttydefs будет устанавливать final-flags на флаги структуры termio (7) 9600 и sane.
Следующая командная строка создает новую запись в ttydefs:
sttydefs -aNEW -nNEXT -i"1200 hupcl erase ^h"\ -f"1200 sane ixany hupcl erase ^h echoe"
Приводимые поля флагов имеют следующие значения:
300-19200 | Скорость передачи линии. |
hupcl | Сброс при замкнутой последовательности. |
sane | Составной флаг, который стоит вместо множества нормальных характеристик линии. |
ixany | Позволяет любому символу перезапускать вывод. Если этот флаг не указан, только DC1 (CTL-Q) будет перезапускать вывод. |
tab3 | Посылает метки табуляции терминалу в виде пробелов. |
erase ^h | Устанавливает символ стирания ^h (CTL-h). В большинстве терминалов ^h это реверс. |
echoe | Эхо - стирание символа как символьной строки реверс-пробел-реверс. В большинстве терминалов так будет стираться стертый символ. |
Нижеприводимая последовательность команд добавляет записи с метками 1200, 2400, 4800 и 9600 в файл ttydefs и помещает их в замкнутый список или последовательность hunt. В приводимом примере поле nextlabel каждой строки является ttylabel следующей строки. Поле nextlabel для последней приводимой строки вновь указывает на первую строку в последовательности.
Целью последовательности hunt является связывание диапазона скоростей линии. Ввод BREAK в ходе поиска скорости передачи приводит к тому, что ttymon переходит к следующему элементу в последовательности. Поиск продолжается до тех пор, пока скорость передачи не будет соответствовать скорости терминала пользователя.
sttydefs -a1200 -n2400 -i 1200 -f "1200 sane" sttydefs -a2400 -n4800 -i 2400 -f "2400 sane" sttydefs -a4800 -n9600 -i 4800 -f "4800 sane" sttydefs -a9600 -n1200 -i 9600 -f "9600 sane"
Файл ttydefs, содержащий эти записи, будет выглядеть так:
# VERSION-1 1200:1200:1200: sane::2400 2400:2400:2400: sane::4800 4800:4800:4800: sane::9600 9600:9600:9600: sane::1200
/usr/sbin/sttydefs -r ttylabel
Запись для ttylabel, указанной в командной строке, удаляется из файла ttydefs.
Параметр -r является действительным, если вызывается привилегированным пользователем.
Примечание. Если запись, которую вы удаляете, является частью последовательности замкнутого поиска (hunt), обязательно исправьте последовательность. Может оказаться кстати запуск sttydefs с параметром -l, после того как запись будет удалена sttydefs -l будет проверять на наличие неправильных значений полей и разъединенных последовательностей hunt и распечатает сообщения об ошибках.
Команду stty (1) можно использовать для установки и изменения параметров терминала после регистрации пользователя. Командная строка stty может быть добавлена к файлу profile пользователя, чтобы можно было устанавливать параметры автоматически как часть процесса login. Ниже приводится пример простой команды stty:
Пример.
stty cr0 nl0 echoe -tabs erase ^h
Параметры в примере имеют следующие значения:
cr0 | Отсутствие задержки на возврат каретки или новой строки. Задержки не используются в видеотерминале, но необходимы на некоторых печатающих терминалах, давая время привести в движение механические части оборудования. |
echoe | Стирает символы при реверсе. |
-tabs | Расширяет метки табуляции пробелами при печати. |
erase ^h | Изменяет символ удаления символа на ^h. Символ удаления символа по умолчанию - это знак #. Большинство терминалов передают ^h после нажатия клавиши возврата каретки. |
Синтаксис команды | Описание |
---|---|
sacadm -l [-t type|-p pmtag] | Просматривает все мониторы портов (один -l), все мониторы портов заданного типа (-t type) или один монитор портов (-p pmtag). |
pmadm -l [-t type|-p pmtag][-s svctag] | Просматривает весь сервис для всех мониторов (один -l), весь сервис для всех мониторов портов заданного типа (-t type), весь сервис конкретного монитора (-p pmtag) или один сервис (-s svctag). |
sacadm -a -p pmtag -t ttymon -c cmd -v 'ttyadm -V' | Добавляет монитор портов ttymon. ttymon, используемая с аргументами параметра -v sacadm -a или pmadm -a, дает командную строку, содержащую номер версии ttymon для управляющего файла нового монитора портов. |
sacadm -r -p pmtag | Удаляет монитор порта |
pmadm -a -p pmtag -s svctag -i id [-f ux] -v 'ttyadm -V'\
-m "'ttyadm [-b] [-r count] [-c] [-h] [-i msg]\ [-m modules] [-p prompt] [-t timeout]\ -d device -l ttylabel -s service'" | Добавляет сервис ttyadm, используемая с аргументом параметра -m pmadm -a, дает поля pmspecific для включения в управляющий файл монитора портов. |
pmadm -r -p pmtag -s svctag | Удаляет сервис |
pmadm -e -p pmtag -s svctag | Разрешает сервис |
pmadm -d -p pmtag -s svctag | Запрещает сервис svctag, доступный с помощью монитора портов pmtag. |
sacadm -e -p pmtag | Разрешает весь сервис, определенный для монитора pmtag. |
sacadm -d -p pmtag | Запрещает весь сервис, определенный для монитора pmtag. |
/usr/sbin/sttydefs -a ttylabel [-b] [-n nextlabel]\
[-i initial-flags] [-f final-flags] | Добавляет элемент в файл /etc/ttydefs. |
/usr/sbin/sttydefs -l [ttylabel] | Распечатывает информацию об установке линии терминала из файла /etc/ttydefs для портов терминала с меткой ttylabel. Если ttylabel не указана, распечатывает информацию об установке линии терминала для всех записей в файле. |
/usr/sbin/sttydefs -r ttylable | Удаляет записи для ttylabel, указанной из /etc/ttydefs. |
Назад | Содержание | Вперед