mgettydefs(4)

НАЗВАНИЕ
mgettydefs - скорость и настройки терминала используемые mgetty

ОПИСАНИЕ
Файл /etc/gettydefs содержит информацию, используемую mgetty(1) для установки скорости и настроек терминала. Он так же предоставляет информацию о том, как должно выглядеть приглашение login.

Многие версии UNIX имеют версию getty(1), которая тоже читает /etc/gettydefs. И mgetty и getty ожидают файл /etc/gettydefs похожего формата, но при использовании mgetty доступны дополнительные функции. Соответственно, дополнительные опции просто игнорируются стандартным getty, поэтому эти программы могут сосуществовать, используя один и тот же файл. Но учтите, что mgetty может быть скомпилирован для использования файла отличного от /etc/gettydefs, если ваш getty конфликтует с расширениями. Эта страница руководства описывает /etc/gettydefs и дополнительные возможности, доступные при использовании mgetty(1). Этот документ будет обращаться к getty(1), за исключением тех случаев, когда поведение mgetty отличается.

Каждая запись в /etc/gettydefs имеет следующий формат:

    метка# начальные-флаги # конечные-флаги # приглашение #следующая-метка

Каждая запись завершается пустой строкой. Поле приглашения может содержать символы в кавычках, которые будут преобразованы в другие значения. Последовательности и их значения:

\n  перевод строки

\r  возврат каретки

\g  сигнал

\b  курсор назад

\v  вертикальная табуляция (VT)

\f  начало страницы

\t  табуляция

\L  имя порта

\C  время в формате ctime(3)

\N  количество зарегистрированных на данный момент пользователей.

\U  количество зарегистрированных на данный момент пользователей.

\D  дата в формате ДД/ММ

\T  время в формате чч:мм:сс

\I  атрибуты CONNECT модема

\sequence
    где "последовательность" - это строка в формате strtol, например: nn

Учтите, что стандартный getty обычно поддерживает только \b, \r и \n.

Различные поля:

метка
    Это строка, которую getty пытается сопоставить её второму аргументу. Часто это скорость, такая как 1200, на которой предполагается работать, но это не обязательно так (смотри ниже).

начальные-флаги
    Это флаги первоначальных настроек ioctl(2), которые получит терминал, если тип терминала не указан getty. Флаги, которые понимает getty, перечислены в termio(7). mgetty обычно собирается с termios(7) и часто содержит более полные настройки, чем getty.

Обычно в начальных флагах необходим только флаг скорости.
    getty автоматически переключит терминал в режим необработанного ввода и позаботится о других флагах. Если используется опция "-s" mgetty(1), установки скорости будут проигнорированы. Начальные флаги настройки остаются в силе пока getty выполняет login(1).

конечные-флаги
    Эти флаги имеют те же значения что и начальные-флаги и устанавливаются непосредственно перед тем getty выполнит login. Опять требуется флаг скорости, если только mgetty не запущен с ключом -s. Два других обычно указываемых конечных-флага - это TAB3, так что символы табуляции отправляются на терминал как пробелы, и HUPCL, который вешает "трубку" линии при окончательном закрытии.

приглашение
    Это поле записи печатается как приглашение ко входу в систему. В отличии от указанных выше полей, где разделительные символы (пробелы, табуляции и знаки новой строки) игнорируются, здесь они входят в поле ввода входа в систему. Это поле игнорируется если mgetty(8) указана опция "-p".

следующая-метка
    Указывает метку, которая используется, если пользователь печатает символ <break> или getty обнаруживает ошибку приёма. getty ищет запись содержащую в поле "метка" значение "следующая-метка" и настраивает терминал в соответствии с этими настройкам. Обычно, последовательность скоростей связана таким образом, что они образуют замкнутое множество. Например, 2400 связана с 1200, которая в свою очередь связана с 300, которая, наконец, связана с 2400. следующая-метка игнорируется mgetty(8).

Несколько дополнительных составных настроек доступны для начальных-флагов и конечных-флагов. Следующие составные флаги поддерживаются mgetty и обычно поддерживаются getty:

SANE
    Аналогично "stty sane". (BRKINT, IGNPAR, ISTRIP, ICRNL, IXON, OPOST, CS8, CREAD, ISIG, ICANON, ECHO, ECHOK)

ODDP
    Нечётный паритет (CS7, PARENB, PARODD)

PARITY,EVENP
    Чётный паритет (CS7, PARENB)

-ODDP,-PARITY,-EVENP
    Нет паритета (сбрасывает PARENB, PARODD, и устанавливает CS8)

RAW Не обрабатываемый ввод-вывод (без канонической обработки) (отключает OPOST, ICANON)

-RAW,COOKED
    Включает каноническую обработку (включает OPOST, ICANON)

NL  Игнорировать переводы строк. (ICRNL, ONLCR)

-NL Обрабатывать переводы строк (выключает INLCR, IGNCR, ICRNL, ONLCR, OCRNL, ONLRET)

LCASE
    Игнорировать регистр - обрабатывать все символы, как символы в нижнем регистре. (IUCLC, OLCUC, XCASE) Устанавливать это, если mgetty полагает, что имя пользователя полностью в верхнем регистре.

-LCASE
    Обрабатывать регистр (выключает IUCLC, OLCUC и XCASE)

TABS
    Выводить табуляции как табуляции

-TABS,TAB3
    Выводить табуляции как пробелы

EK  Устанавливает VERASE в "#" и VKILL в CKILL соответственно. (Учтите, что во многих getty VERASE установлен в "#" по умолчанию. mgetty по умолчанию VERASE установлен в символ забоя.)

В дополнение, mgetty (но не getty) может устанавливать управляющие символы, перечисленные в структуре c_cc termio(termios), используя два поля:

<имя символа> <значение>

Например:

VERASE ^h

Значение должно быть установлено как "^<символ>", "\nnn" или "\<символ>" (обычный UNIX экранирующие последовательности \).

Смотри страницы руководства termio(7) и termios(7), чтобы найти список переменных "V", которые можно изменить. Учтите, что многие из них могут быть изменены в массиве c_cc, но не окажут какого-либо эффекта.

Если getty вызван без второго аргумента, getty использует первую запись в /etc/gettydefs, таким образом первая запись в /etc/gettydefs является записью по умолчанию. Она так же используется getty, если указанная метка не может быть найдена. mgetty использует метку по умолчанию "n", но это может быть изменено с помощью настроек. Если /etc/gettydefs отсутствует, существует одна запись, встроенная в команду, которая настраивает терминал на 300 бод (параметр настройки mgetty).

Настоятельно рекомендуется после создания или изменения /etc/gettydefs, пропустить его через mgetty, чтобы проверить опций и удостовериться в отсутствии ошибок.

ПРИМЕРЫ
Две следующие строки показывают пример переключения между 300/1200 бодами, которые полезны для портов dial-up:

    1200# B1200 HUPCL # B1200 SANE IXANY TAB3 #login: #300
    300# B300 HUPCL # B300 SANE IXANY TAB3 #login: #1200

Следующия строка показывают обычную запись для 9600-бодового проводного соединения (в настоящее время не поддерживается mgetty):

    9600# B9600 # B9600 SANE IXANY IXANY ECHOE TAB3 #login: #9600

Следующая строка типична для настройки умного модема и пригодна для mgetty:

    19200mg#
        B19200 #
        B19200 SANE VERASE \b VINTR \003 HUPCL #
        \n\D \T \N Users @!login: #19200mg

ФАЙЛЫ
/etc/gettydefs

СМОТРИ ТАКЖЕ
mgetty(8), getty(8), login(1), ioctl(2), termio(7), termios(7).

АВТОРЫ ПЕРЕВОДА
Перевод выполнен на сайте коллективных переводов http://translated.by. Авторы перевода Олег Безначев aka saturn721, Владимир Ступин <wheel69@yandex.ru>