Простой файл /etc/mgetty/mgetty.config
Пример 4-6. Простой файл /etc/mgetty/mgetty.config
# mgetty configuration file # # this is a sample configuration file, see mgetty.info for details # comment lines start with a "#", empty lines are ignored # # ----- global section ----- # In this section, you put the global defaults, per-port stuff is below # # access the modem(s) with 38400 bps speed 38400 # # set the global debug level to "4" (default from policy.h) debug 4 # # ----- port specific section ----- # # Here you can put things that are valid only for one line, not the others # # # Hayes modem connected to ttyS0: don't do fax, less logging # port ttyS0 debug 3 data-only y # # direct connection of a VT100 terminal which doesn't like DTR drops # port ttyS1 direct y speed 19200 toggle-dtr n
Файл конфигурации поддерживает глобальные и специфические для порта параметры. В нашем примере мы использовали глобальную опцию, чтобы установить быстродействие в 38,400 bps. Это значение унаследовано портом ttyS0. mgetty применяет именно это значение, если в секции специфической информации для порта не задано другое, как это сделано для ttyS1.
Ключевое слово debug управляет уровнем детализации отчетов mgetty. Ключевое слово data-only в конфигурации ttyS0 предписывает mgetty игнорировать любые свойства факс-модема, чтобы функционировать только как модем данных. Ключеове слово direct в конфигурации ttyS1 предписывает mgetty не делать попытку инициализации модема на этом порте. Наконец, toggle-dtr предписывает mgetty не делать попытку повесить трубку при получении на линии сигнала DTR (Data Terminal Ready).
Вы можете также оставить пустым файл mgetty.config и использовать параметры командной строки, чтобы определить те же самые параметры. Документация, сопровождающая программу, включает полное описание параметров командной строки и файла конфигурации mgetty .
Мы должны добавить две записи в файл /etc/inittab , чтобы активизировать эту конфигурацию. Файл
inittab файл конфигурации команды init. Команда init является ответственной за инициализацию системы. Она автоматически выполняет программы при начальной загрузке и перезапускает их, когда они завершаются. Это идеально для целей работы программы getty.
T0:23:respawn:/sbin/mgetty ttyS0 T1:23:respawn:/sbin/mgetty ttyS1
Каждая строка файла /etc/inittab содержит 4 поля, разделяемые двоеточиями. Первое поле является идентификатором. Оно уникально маркирует запись в файле. Традиционно это два символа, но современные версии позволяют четыре. Второе поле содержит список уровней выполнения, на которых эта запись должна быть активна. Уровни выполнения являются средством обеспечения альтернативных конфигураций системы. Они связаны с наборами скриптов в каталогах /etc/rc1.d, /etc/rc2.d и т.д. Третье поле описывает, когда принять меры. Для работы программы getty оно должно быть определено как respawn. Это означает, что при завершении программы, она будет запущена вновь. Имеется еще несколько параметров, но они не важны для наших целей в данный момент. Четвертое поле задает команду, которая будет выполнена. Именно здесь надо определить команду mgetty и все необходимые ее параметры. В нашем простом примере мы запускаем и перезапускаем mgetty, когда система действует на уровнях выполнения 2 или 3 и передаем в качестве аргумента только имя устройства для работы. Команда mgetty подразумевает каталог /dev, так что задавать его явно в имени устройства не нужно.
Эта глава дает только общее представлдение о mgetty. Подробные сведения можно найти в Serial-HOWTO.
После правки файла конфигурации, надо перезапустить процесс init, чтобы изменения вступили в силу. Пошлите сигнал hangup процессу init. Он всегда имеет ID процесса равный единице, так что можно использовать команду:
# kill -HUP 1
Только не забудьте параметр -HUP! Иначе получите останов системы со страшным скрежетом.