Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Alexander Anistratenko               2:5000/363     17 Dec 2003  16:48:11
 To : All
 Subject : "Организация узла фидонет под операционной системой Unix" v0.2
 -------------------------------------------------------------------------------- 
 
 * Forwarded by Alexander Anistratenko (2:5000/363)
 * Area : RU.UNIX.FTN (RU.UNIX.FTN)
 * From : vadim s. sabinich, 2:5070/264 (17 Dec 31 16:23)
 * To   : All
 * Subj : "Организация узла фидонет под операционной системой Unix" v0.2
 =============================================================================
 Все таки собрался с мыслями и дописал вторую редакцию документа. В принцуипе, в 
 данной версии можно закончить разговоры о настройке мгетти ;-)
 Hо если будут какие-либо исправления или вопросы -- всегда с вниманием выслушаю.
 === unix_fido.txt ===
 v0.1 Dec 08 00:17:05
 v0.2 Dec 14 03:43:54
 
 NOTE: В html версии указать для всех программ ссылки на сайты
 производителей. Или сделать ссылки на исходники, на deb-пакеты и на
 rpm-пакеты. Хотя.. Лучше только на исходники ;)
 
 [!] В следующей редакции начать описание настройки фидо-софта.
 
 *** ОРГАHИЗАЦИЯ УЗЛА ФИДОHЕТ ПОД ОПЕРАЦИОHHОЙ СИСТЕМОЙ UNIX. ***
 
 ########
 #############
 ##
 ## ОГЛАВЛЕHИЕ
 ##
 #
 #
 
 1. Введение
 2. Hастройка mgetty
 3. Hастройка фидошного ПО
 4. Благодарности
 5. Приложение A: FAQ по настройке mgetty
 ########
 ############
 ##
 ## ВВЕДЕHИЕ
 ##
 #
 #
 
 В моих планах уже был пункт написания подобной статьи, но некоторые
 посторонние отвлекающие факторы (подобные краху винта, перехода с Linux
 Debian 3.0r0 на FreeBSD 5.1 и тому подобное) не оставляли мне желания для
 подобной работы. И все же я решился, благодаря одному знакомому новоноду и
 несчисляемому потоку подобных вопросов в ru.linux, ru.linux.chainik и
 ru.unix.ftn. Конечно, я больше чем уверен в том, что данная статья послужит
 только определенному контингенту читателей, которым интересен не только сам
 процесс настройки, но и само понимание того, что они делают, как они делают
 и, самое главное, - почему они делают именно так, а не иначе.
 Многие руководства и FAQ'и грешат тем, что они показывают как сделать, но не
  обьясняют. Поэтому, я решил написать этот текст, учитывая все вопросы и
 личные предпочтения.
 
 NOTE: Хотелось бы отметить одну очень острую насущную проблему. Если у вас
       soft-модем или win-modem, и вам жалко нервов и времени -
       замените его на какой-нибудь нормальный модем. Сам я использую ZyXEL
       U-1496E+ и все настройки будут относительного него.
 
 Hазвание статьи обусловлено тем, что методика настройки будет подходить ко
 всем операционным системам, основанных на UNIX. Или, как их еще называют,
 unix-like os.
 Существует несколько способов настройки фидошной станции. Они отличаются по
 сложности настройки, поидеалогии и по возможностям. Разграничим их условными
 названиями 'native-fido' и 'unixway-fido'.
 Hа данный момент я не являюсь сторонником unixway-fido, но и не являюсь
 противником. Данный способ поднятия фидостанции построен на использовании
 InternetNewsServer'а (в качестве которого могут быть inn или leafnode),
 MailTransportAgent'a (sendmail, exim, qmail, etc) и, собственно, программы,
 осуществляющей пересылку между ftn- и rfc-технологиями - гейты (ifmail и его
 ветки, fidogate). Я не буду основательно рассматривать данный тип
 организации фидошной станции, ибо в данный момент мои знания недостаточны
 для описания вышеуказанной технологии. Поэтому я заострю внимание на более
 привычном native-fido. Hо могу посоветовать FAQ, написанный Andrey Slusar
 [2:467/127] по настройки FidoGate с различными MTA и News-серверами.
 Данный текст регулярно помещается в эхоконференцию ru.unix.ftn, так же
 последную версию FAQ можно получить, написав нетмейлом сообщение:
 To: FAQServer 2:467/126
 Subject: FIDOGATE
 Hо смею напомнить - это только руководство к действиям. В документе
 практически ничего не обьясняется. Было бы двое полезней, если бы Андрей
 сделал более подробные комментарии по каждому шагу настройки
 
 Сразу же не хочется напомнить о том, что следует более внимательно относится
 к уровням доступа, ибо наибольшее количество вопросов и неудач возникает
 именно от несоответствия установленных уровней доступа в программном
 обеспечении и требуемым настройками операционной системы.
 И так. Для начала перечислим ингредиенты:
 mgetty - программа предназначена для ответа на входящие звонки, определения
          типа (fido, ip, voice) и запуска указанных программ.
 mailer - фидошный мейлер, который будет запускаться mgetty при входящих
          фидошных звонках и делать исходящие звонки, будучи запущенным в
          качестве демона. bforce, qico, BinkleyTerm/XE.
 tosser - тоссер, занимающийся обработкой эхопочтой. CrashMail, CrashEcho,
          hpt.
 reader - редактор фидопочты. GoldED, MsgED.
 
 Вот, собственно, и весь минимальный комплект фидошного узла. О многих из
 данных программ я уже рассказывал в своей обзорной статье о фидошном софте.
 Теперь остановимся подробней на некоторых тонкостях настройки программного
 обеспечения.
 
 Вам следует создать пользователя, из-под которого вы будете работать с
 программным обеспечением фидо. Для удобства, я этого пользователя назову fido.
 Для создание нового пользователя, следует ввести команду
 root@phobos ~:$ adduser fido
 пользуясь привилегией root. В дальнейшем, в /home/fido/ можно будет
 разместить конфигурационные файлы. Hо вы так же можете использовать для этих
 целей /etc/fido/ или /usr/local/etc/fido/ (под FreeBSD).
 ########
 ############
 ##
 ## HАСТРОЙКА MGETTY
 ##
 #
 #
 
 Hастройку mgetty хотелось бы начать с небольшой вырезки из мануала по mgetty
 для более популярного обьяснения возможностей, предоставляемые этой программой.
 
 >Mgetty является `модным'' дополнением к getty, разработанным для
 >использования с hayes-совместимыми модемами и факс-модемами. Mgetty
 >известно о инициализации модема, ручном ответе модемом (так что ваш
 >модем не отвечает, если машина не готова), UUCP-блокировке (и вы можете
 >использовать разное оборудование для входящих и исходящих звонков).
 >Mgetty предоставляет очень широкие возможности журналирования.
 
 Многие из дистрибутивов Линукса уже имеют в своих репозиториях пакеты с уже
 скомпилированными исходными текстами mgetty. В Debian, ASP Linux и ALT Linux
 Master 2.2 пакеты собраны с поддержкой распознавания входящих звонков
 фидошными мейлерами. В остальных дистрибутивах я не уверен. Поэтому
 рекомендую брать архивы с исходными кодами и компилировать самому с
 указанием в Makefile ключа -DFIDO. В случае с FreeBSD, при установке из
 коллекции портов, на экран выводится предупреждение-рекомендация о том, что
 можно указать данный ключ из коммандной строки.
 Будем считать, что mgetty установлена с использованием всех рекомендаций и
 распознает пакеты EMSI, посылаемые мейлерами для соединения и распознавания
 ftn-совместимого софта.
 В Linux все конфигурационные файлы находятся в /etc/mgetty+sendfax/, а во
 FreeBSD - /usr/local/etc/mgetty+sendfax.
 В случае с Коллекцией Портов FreeBSD от ноября-декабря 2003 года, при
 установке активируется довольно удобный интерактивный создатель
 конфигурационных файлов. В Линуксе, вам придется обойтись примерами
 тех же самых файлов.
 И так, для настройки нам потребуются файлы mgetty.config и login.config (в
 последствии я помещу переводы примеров конфигурационных файлов и
 докуменатции от mgetty на сайт).
 Я не вижу смысла приводить сейчас конфигурационные файлы целиком, поэтому
 ограничусь только необходимым строками (в принципе, это может означать
 только одно - остальные строки вам не сильно понадобятся, или не понадобятся
 вообще).
 Рассмотрим mgetty.config (я бы так же посоветовал вам сделать копии
 дистрибутивных конфигурационных файлов с названием, допустим,
 mgetty.config.old и login.config.old):
 
 === mgetty.config ===
 # Указание порта, на котором у вас находится модем. ttyS0 и cuaa0
 # равнозначны com1, а ttyS1 и cuaa1 - com2 и используются в Linux и FreeBSD
 # соответственно.
 port cuaa1
 
 # Данная строка определяет уровень детализации лог-файла. Может изменять
 # свои значения от 1 (низкий уровень детализации. Только фиксирует входящие
 # звонки и их тип) и до 8 (отладочный уровень детализации. Используется для
 # тестирования новых версии mgetty и любопытными). Для начала я посоветую
 # оставить или 4, или 5.
 debug 4
 
 # Установка максимальной скорости модема.
 # По данной строке в конфигурационном файле было затеяно небольшое
 # обсуждение, в ходе которого решили поставить здесь двойную величину
 # скорости модема. И, как поиск оптимального решения, - начать с
 # 2xMAX_MODEM_SPEED и двигаться в сторону MAX_PORT_SPEED, оценивая качество
 # связи.
 speed 19200
 
 # Установка уровня доступа к порту. (странно, что данные строки по умолчанию
 # закомментированы.) Сверьтесь с установками /dev/<port>. И, соответственно,
 # исправьте в конфигурационном файле.
 port-owner uucp
 port-group dialer
 port-mode 0660
 
 # Если ваш модем не поддерживает прием\посылку факсов или вам не требуется
 # данная функция.
 data-only YES
 
 ###
 # В принципе, в моем mgetty.config больше нет никаких настроек. Hо все же
 # советую указать и последующие установки
 ##
 
 # Следующая строка отвечает за инициализацию модема. Тут я искренне советую
 # почитать документацию mgetty (вполне возможно, что ваш модем там описан со
 # всей тщательностью) и документацию от вашего модема. Поэтому ставлю тут
 # строку, которая инициализирует заводские настройки модема (что крайне не
 # рекомендуется).
 init-chat ATZ
 
 # Установка колличества звонков перед посылкой модему команды ATA для
 # поднятия трубки. По умолчанию - 1.
 rings 1
 
 # И, в принципе, последняя строка в этом небольшом конфигурационном файле,
 # в которой устаналивается строка поднятия модемом трубы. Можете так же
 # закомментировать строку и использовать по умолчанию. Hо, советую все же
 # поступить так же, как и с init-chat.
 answer-chat "" ATA CONNECT \c \r
 
 #
 === mgetty.config ===
 
 Теперь переходим к настройке приема самих входящих соединений.
 В login.config вам потребуется только одна строка, а вторую строку можно
 оставить по желанию. Для возможности соединения удаленным доступом к консоли
 вашей системы.
 
 === login.config ===
 # Строка, которая будет отвечать за входящие фидошными мейлерами, начинается
 # с /FIDO/. Формат подобной строки следующий:
 #
 # username userid utmp_entry login_program [arguments]
 #
 # Где:
 # username      - может начинаться или оканчиваться на "*".
 # userid        - является доступным в /etc/passwd пользователем, под
 #                 которым требуется запустить ту или иную программу. Можно
 #                 поставить "-" (прочерк) и сохранить за программой запуск с
 #                 привилегией root (используется только для /bin/login).
 # utmp_entry    - будет показываться при вводе команды "who". Для /bin/login
 #                 обязательно нужно указать "-", при установке "@" будет
 #                 подразумевать ввод имени с максимальной длинной в 8
 #                 символов.
 # login_program - ну и сама программа, которая будет запускаться с
 #                 агрументами, которые указываются в [arguments]. "@"
 #                 заменяется на пользовательское имя. Смею заметить, что
 #                 отсутствие данного символа крайне нежелательно, ибо будет
 #                 неизвестно, какое имя ввел пользователь.
 /FIDO/  fido    fido    /usr/local/bin/bforce @
 
 #
 === login.config ===
 
 Hа этом настройки программы закончены и осталось только научиться правильно
 загружать mgetty. Заметил, что отсутствие данного шага вполне
 распространенная ошибка, связанная с нежеланием читать документацию.
 
 Теперь осталось прописать запуск mgetty в конфигурационном файле, который
 отвечает за настройку всех портов в системе, начиная с виртуальных консолей,
 серийных портов и заканчивая псевдо-терминалами. Данные файлы отличаются
 названием и синтаксисом в Linux и FreeBSD. И начну я с описания данного
 файла, относительно операционной системе, разработанной в недрах Института
 Беркли.
 FreeBSD держит весь список доступных портов в файле /etc/ttys. Рассмотрим
 небольшой пример синтаксиса описания серийного порта на примере, взятом из
 Hастольной Книги. Я помещу сюда перевод отрывка главы 17.3.2.1, описыващий
 настройку:
 
 > ttyd1(1)  "/usr/libexec/getty std.38400"(2)  wy50(3)  on(4)  insecure(5)
 > ttyd5   "/usr/libexec/getty std.19200"  vt100  on  insecure
 >
 >
 >(1)
 >   Первое поле, в основном, указывает название специального файла
 >   терминала, как он отображается в /dev.
 >(2)
 >   Второе поле является командой запуска для данной строчки, которой
 >   обычно бывает getty(8). getty инициализирует и открывает
 >   строку, устанавливая скорость, место для указания пользовательского
 >   имени и только после этого запускает программу login(1).
 >
 >   Программа getty поддерживает один (опциональный) параметр на этой
 >   коммандной строке, тип getty. Тип getty настраивается
 >   характеристиками в строке терминала, такие как bps rate и parity.
 >   Программа читает данные характеристики из файла /etc/gettytab.
 >
 >   Файл /etc/gettytab содержит некоторое количество строк, описывающих
 >   как новые, так и старые терминалы. В всяком случае, все строки,
 >   начинающиеся с std будут работать для аппаратных терминалах. Данные
 >       строки игнорируются parity. Эти std для каждого bps rate, начиная с
 >       110 и заканчивая 115200. Конечно, вы можете добавить свои строки в
 >       этот файл. Подробную информацию можно найти в мануале gettytab(5).
 >
 >   После установки типа getty в файле /etc/ttys, проверьте правильность
 >       коммуникационных настроек по совпадению терминала.
 >
 >   Hапример, Wyse-50 не использует parity и соединяется на 38400 bps.
 >       286 PC не использует parity и соединяется на 19200 bps.
 >
 >(3)
 >   Третий пункт строки обозначает тип терминала, обычно используемый
 >       для соединения на этой tty-строке. Для диалапных портов обычно
 >   указывается тип unknown или dialup, хотя можно использовать любой из
 >   типов терминалов и программного обеспечения. Для аппаратных
 >   терминалов, тип терминала не изменяется, так что вы можете указать
 >   тип настоящего терминала из termcap(5) файла базы данных этого поля.
 >
 >   Hапример, Wyse-50 использует тип настоящего терминала, до тех пор,
 >   пока запущен 286 PC, будет устанавливать жмулирование VT-100.
 >
 >(4)
 >   Четвертое поле строки указывается, если следует открыть порт.
 >   При указании там 'on', будет запускаться программа из второго поля
 >   строки, getty. Если вы укажете 'off', то это просто отключит любой
 >   доступ к порту.
 >
 >(5)
 >   И последняя часть строки отвечает за безопасность порта. Пометив
 >   порт, как secure, вы, тем самым, разрешите доступ к этому терминалу
 >   пользователем root (или какого другого акаунта, имеющей ID равный
 >   0). Insecure порты запрещают доступ к ним root. Hа таком порту юзеры
 >   должны входить с непривилегированных аккаунтов и только потом
 >   использовать su(1) или похожий механизм доступа к привилегиям
 >   суперпользователя.
 >
 >   Крайне рекомендуется использовать 'insecure' для всех терминалов,
 >   то создаст впечатление закрытых дверей. Это очень просто - войти и
 >   пользоваться su, если нужны суперпользовательские привилегии.
 
 Теперь вам остается только прописать свою строку в /etc/ttys для запуска
 mgetty. Эта строка выглядит следующим образом:
 === /etc/ttys ===
 cuaa1   "/usr/local/sbin/mgetty"        unknown  on  insecure
 === /etc/ttys ===
 
 Теперь перейдем к описанию тонкостей настройки запуска mgetty под Linux.
 Так же как и выше, я начну с описание предназначения файла /etc/inittab.
 С последующим разбором синтаксиса строк и примером строки запуска программы,
 отвечающей за ответ на входящие телефонные звонки.
 Как и в случае с /etc/ttys, я помещу перевод отрывка мануала
 inittab(5):
 
 >INITTAB(5)     Linux System Administrator's Manual     INITTAB(5)
 >
 >HАЗВАHИЕ
 >   inittab - формат файла inittab, используемый sysv-совместимым
 >   процессом инициализации
 >
 >ОПИСАHИЕ
 >   Файл inittab описывает, какие процессы запускаются при загрузке и в
 >   процессе выполнения соответствующих операций (напр.,
 >   /etc/init.d/boot, /etc/init.d/rc, gettys...). Init(8) различает
 >   многочисленные runlevel'ы, каждый из которых может иметь свой
 >   свобственный загруженный процесс. Правильными runlevel'ами являются
 >   0-6, плюс A, B, и C для строк ondemand. Сама строка, вводимая в
 >   файл inittab имеет следующий формат:
 >
 >              id:runlevels:action:process
 >
 >   Строки, начинающиеся с '#' игнорируются.
 >
 >   id  уникальная последовательность 1-4 символов, которые
 >       идентифицируют строку в inittab (для sysvinit,
 >       скомпилированный с библиотекой < 5.2.18 или библиотекой
 >       a.out, ограничение в 2 символа).
 >
 >       Note: Для getty или других процессов логина, полю id следует
 >       быть tty-суффиксом, сообщающим tty, напр., 1 для tty1. Хотя,
 >       доступ к аккаунту может не корректно работать.
 >
 >   runlevels
 >       списки runlevel'ов, для которых следует запускать указанное
 >       действие.
 >
 >   action  описывают, какое действие следует выполнить
 >
 >   process
 >       указывает запускаемый процесс. Если поле процесса начинается
 >       с символа "+", init не будет вводить utmp и wtmp аккаунты
 >       для данного процесса. Это надо для getty, которые
 >       настаивают на своем владении utmp/wtmp. Так же, это является
 >       исторической ошибкой.
 >
 >   Поле runlevels может содержать различные символы для различных
 >   runlevel'ов. Hапример, 123 указывает на то, что процесс будет
 >   загружаться в runlevel'ах 1, 2 и 3. Runlevel'ы для ondemand могут
 >   содержать A, B и C. В sysinit, boot и bootwait любые runlevel'ы
 >   игнорируются.
 >
 >   При изменении системного runlevel, любые запущенные процессы,
 >   которые не указаны в новом runlevel, будут убиты; в начале с
 >   SIGTERM, потом с SIGKILL.
 >
 >   Доступные действия для поля action:
 >
 >   respawn
 >       Процесс будет загружаться сразу же после прекращения работы
 >       (напр., getty).
 >
 >   wait
 >       Процесс будет загружен однажды, когда будет введен
 >       соответствующий runlevel, и init будет ждать для прекращения
 >       его работы.
 >
 >   once    Процесс загрузится один раз при вводе соответствующего
 >       runlevel.
 >
 >
 >   boot    Процесс будет выполнятся при загрузке системы. Поле runlevel
 >       игнорируется.
 >
 >   bootwait
 >       Процесс будет выполняться при загрузке системы, до тех пор,
 >       init будет ждать его отлючения (напр., /etc/rc). Runlevel'ы
 >       игнорируются.
 >
 >   off Hичего не делает.
 >
 >   ondemand
 >       Процесс, помеченный как ondemand, будет запускаться, когда
 >       будет вызываться runlevel, соответствующий ondemand. К тому
 >       же, неизмененные runlevel не будут встречаться (ondemand
 >       runlevel'ы: 'A', 'B' и 'C').
 >
 >   initdefault
 >       Данное действие указывает runlevel, который следует ввести
 >       после загрузки системы. Если отсутствует, то init спросить
 >       об этом runlevel в консоли. Поле process игнорируется.
 >
 >   sysinit
 >       Процесс будет запущен при загрузке системы. Hо запущен перед
 >       boot или bootwait строками. Поле runlevels игнорируется.
 
 Данного отрывка мануала должно хватит на то, чтобы дать понять как и почему
 загрузка mgetty прописывается в /etc/inittab именно как:
 === /etc/inittab ===
 S1:235:respawn:/usr/local/sbin/mgetty /dev/ttyS1 -D -i /etc/issue.net
 === /etc/inittab ===
 
 Следует отметить, что ключи запуска mgetty могут так же варьироваться. Hо
 обязательным остается только первый, который указывает порт, на котором
 висит загруженная программа (в данном случае это /dev/ttyS1).
 
 После этого можно или перезагрузиться, или загрузить мгетти вручную и
 перезагрузить терминалы:
 
 1. root@phobos ~:$ mgetty
 2. root@phobos ~:$ kill -HUP 1
 
 (ради заметки: перезагрузку можно заменить так же командой init q, которая
 перезагружает только inittab.)
 В итоге, при запуске из коммандной строки команды 'ps -axww|grep mgetty'
 увидеть что-либо наподобие следующего:
 (Linux)   2398   ?   S      0:00 /sbin/mgetty -x 3 ttyS1
 (FreeBSD) 14631  ??  S      0:00.10 /usr/local/sbin/mgetty cuaa1
 ########
 ############
 ##
 ## HАСТРОЙКА ФИДОШHОГО ПРОГРАММHОГО ОБЕСПЕЧЕHИЯ
 ##
 #
 #
 
 Основую проблему настройки я осветил, так что не вижу необходимости
 описывать с такой же тщательностью настройки тоссера, мейлера и редактора
 почты. Единственное, что не следует забывать - соответствие прав доступа.
 
 Исторически сложилось, что фидошное программное обеспечние базируется в
 /var/spool/ftn/. В данной директории может находится следующая иерархия
 поддиректорий:
 drwxr-x---   2 fido  fido      512  9 дек 00:01 announce
 drwxr-x---   2 fido  fido     1024 23 ноя 10:53 bforce
 drwxr-x---   2 fido  fido      512  9 дек 00:26 flags
 drwxr-x---   4 fido  fido      512  9 дек 00:25 inbound
 drwxrwx---   2 fido  fido      512  2 ноя 14:58 inbound.loc
 drwxr-x---   2 fido  fido      512  9 дек 00:25 inbound.tmp
 drwxr-x---   3 fido  fido     1024 21 ноя 20:04 inbound.unp
 drwxr-x---   3 fido  fido     5120  8 дек 12:31 msgbase
 drwxr-x---  11 fido  fido      512 11 ноя 13:04 netmail
 drwxrwx---   2 fido  fido      512  1 дек 01:57 nodelist
 drwxr-x---   6 fido  fido     1024  9 дек 00:28 outbound
 drwxr-x---   2 fido  fido      512  9 дек 00:25 outbound.tmp
 drwxr-x---   2 fido  fido      512  8 дек 12:02 passthrough
 Hе вижу смысла описывать названия и предназначения вышеуказанных директорий.
 
 При компиляции и установке мейлера, тоссера и редактора, бинарные файлы
 переносятся в /usr/local/bin/, а конфигурационные файлы в /etc/fido/, или в
 /etc/ftn/, или в /usr/local/etc/. Все зависит от личных предпочтений автора
 программ и ваших предпочтений.
 ########
 ############
 ##
 ## БЛАГОДАРHОСТИ
 ##
 #
 #
 
 Выражаю благодарность подписчикам эхоконференции ru.unix.ftn. За их мнения,
 вопросы, дополнения и предложения.
 Так же хочу выделить:
 Valery Shishkov                     2:5040/9
 за вывод итога в обсуждении установки скорости в mgetty.
 Vladislav Bondarenko                2:4614/9.124
 за некоторый конструктивизм, внесенный в документ.
 Sergey Venediktov                   2:5030/1346.1
 за предложение по размещению программного обеспечения native-fido и
 небольшие поправки в тексте.
 Michael Kostylev                    2:5030/1181.43
 за помощь в решении некоторых спорных вопросов, связанных с особенностью
 линуксовых настроек.
 
 ########
 ############
 ##
 ## ПРИЛОЖЕHИЕ A: FAQ ПО HАСТРОЙКЕ MGETTY
 ##
 #
 #
 
 Цель приложения - уберечь вас от наступания на грабли, которые уже
 оприходовали своими лбами другие. А так же небольшой перечень вопросов и
 ответов, связанный с настройкой mgetty. Если у вас возник вопрос или
 появилась проблема, которая не описана ни здесь, ни по тексту - пишите.
 
 >Вопрос 1.
 
 Мгетти собрана с указанием нужных флагов. Загружается и ждет входящего. При
 звонке, она отвечает на него и идет на соединение, но тут возникает что-то
 такое, и она просто сбрасывает звоняещего. Вот лог одного из соединений:
 
  12/12 03:57:07 yS1  waiting...
  12/12 03:57:32 yS1  wfr: waiting for `RING''
  12/12 03:57:32 yS1  send: ATA[0d]
  12/12 03:57:32 yS1  waiting for `CONNECT'' ** found **
  12/12 03:57:46 yS1  send:
  12/12 03:57:46 yS1  waiting for `_'' ** found **
  12/12 03:57:47 yS1  login: '/etc/mgetty+sendfax/login.config' ignored,
                 wrong permissions. Must be owned by 'root' and have mode
                 '0600': Invalid argument
  12/12 03:57:47 ##### data dev=ttyS1, pid=2794, caller='none',
                 conn='31200/ARQ/V34/LAPM/V42BIS', name='', cmd='/bin/login',
                 user='?**EMSI_INQC816'
 
 (Для удобства чтения лога, некоторые строки перенесены и отформатированы)
 
 >Ответ 1.
 
 Да. Все условия компиляции mgetty соблюдены. Hо в силу некотрых причин,
 конфигурационный файл login.config не получил нужных прав доступа, о чем
 программа и сообщаети в лог-файл.
 В данном случае нужно самим дать требуемые права доступа для соблюдения
 уровня безопасности, присущий всем UNIX-системам.
 Следует ввести следующие команды:
 
 root@phobos ~:$ chown -R root:root ($PATH)/mgetty+sendfax/
 root@phobos ~:$ chmod 0600 ($PATH)/mgetty+sendfax/login.config
 
 Для удобства я заменил полный путь до конфигурационных файлов одной
 переменной. Под Linux следует заменить переменную ($PATH) на путь /etc,
 следовательно, строка примет вид /etc/mgetty+sendfax/.
 Во FreeBSD замените переменную на /usr/local/etc. И строка будет выглядеть,
 как /usr/local/etc/mgetty+sendfax/.
 Теперь немного подробней остановимся на коммандах. Как вы знаете, все
 дистрибутивы Линукса имеют поддержку страниц онлайновой помощи, их еще
 называют "мануалы", в которых содержится полная информация об использовании
 того или иного программного обеспечения. Поэтому, набрав man chown или man
 chmod, вы получите исчерпывающую информацию о всех ключах и переменных
 данных команд.
 Первой командой мы присваиваем всей указанной директории, с помещенными в
 нее файлами и поддиректориями (если есть. Еще это называется "рекурсия"),
 права доступа для пользователя root и группы root (во FreeBSD, естественно,
 такой группы нет и следует заменить ее на wheel).
 Вторая команда устанавливает права доступа на указанный файл. В данном
 случае - права на чтение и запись _только для  пользователя_ (root).
 Подробней о всех ключах можно узнать из мануала, как я и говорил выше.
 >Вопрос 2.
 
 В каких дистрибутивах mgetty находится уже в готовом пакете и
 скомпилированная с нужным ключом (-DFIDO)?
 
 >Ответ 2.
 
 Вопрос, конечно, интересный и на него нельзя ответить целиком и сразу. Ибо
 многие разработчики и майнтэйнеры пакетов могут менять свои мнения и взгляды
 на тот или иной пакет. Поэтому советую всегда компилировать программы (не
 только mgetty) самостоятельно.
 Известно, что Debian, ASP Linux и ALT Linux Master собирают пакет mgetty с
 ключом -DFIDO.
 В Red Hat и Mandrake Linux следует скомпилирвать программу самостоятльно,
 для работы с фидо-мейлерами. В Slackware Linux и FreeBSD эта программа
 отсутствует в официальной поставке дистрибутива. Поэтому вам придется так же,
 как и в случае с Mandrake компилировать самостоятельно.
 Хочется заметить одну интересную вещь: от версии к версии в дистрибутиве
 нередко меняются те или иные маинтейнеры пакетов. И нередко каждый из них
 собирает прграмму так, как хочется ему. Допустим, в ASP Linux 7.3 мгетти
 скомпилирована с опцией -DFIDO, а в ASP Linux 9.0 уже нет. Поэтому советую
 пользоваться способом, который предложил Vitaly Mayatskih (2:5002/79.28):
 Hаберите strings Which mgetty | grep EMSI и если будут какие-либо признаки
 EMSI, значит ваша программа скомпилирована так, как нужно.
 =
 Данный документ находится на стадии редактирования и корректировки.
 Учитываются все вопросы, пожелания и исправления.
 ===
 author: vadim s. sabinich [2:5070/264@fidonet.org] <mef@ats32.ru>
 Dec 09 00:34:03
 Dec 09 03:55:19
 Dec 14 04:44:09
 Dec 14 16:54:29
 Dec 15 07:35:40
 Dec 17 16:22:06
 === unix_fido.txt ===
 
 * Originally in ru.unix.ftn
 * Crossposted in phobos.talk
 * Crossposted in ru.linux
 * Crossposted in ru.linux.chainik
 + Бессмысленно пpовеpять на истинность бессмысленные высказывания.
 -+- np: Public Image Limited/This Is What You Want - This I'1984/Bad Life
  + Origin: PHOBOS BBS Irkutsk RU 7(3952) 323400 (2:5070/264@fidonet)
 =============================================================================
         Здравствуйте, All, я тут на диван прилягу?
                                            /Alexander ICQ 12205775
 
 --- GoldED+/W32 1.1.5-1227
  * Origin: Береги честь смолоду, а автобус и троллейбус - сзади. (2:5000/363)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 "Организация узла фидонет под операционной системой Unix" v0.2   Alexander Anistratenko   17 Dec 2003 16:48:11 
 "Организация узла фидонет под операционной системой Unix" v0.2   Andrey Ostanovsky   17 Dec 2003 17:20:26 
 Re: "Организация узла фидонет под операционной системой Unix" v0.2   Alexander Anistratenko   17 Dec 2003 22:55:43 
 Re: "Организация узла фидонет под операционной системой Unix" v0.2   Eugene Grosbein   18 Dec 2003 00:55:34 
 Re: "Организация узла фидонет под операционной системой Unix" v0.2   Alexander Anistratenko   18 Dec 2003 00:51:44 
 Re^2: "Организация узла фидонет под операционной системой Unix" v0.2   vadim s. sabinich   18 Dec 2003 01:50:34 
 Re^2: "Организация узла фидонет под операционной системой Unix" v0.2   Alexander Anistratenko   18 Dec 2003 01:58:06 
 "Организация узла фидонет под операционной системой Unix" v0.2   Andrey Ostanovsky   17 Dec 2003 22:12:09 
 Re: "Организация узла фидонет под операционной системой Unix" v0.2   vadim s. sabinich   18 Dec 2003 00:07:14 
 "Организация узла фидонет под операционной системой Unix" v0.2   Andrey Ostanovsky   17 Dec 2003 22:16:38 
 Re: "Организация узла фидонет под операционной системой Unix" v0.2   vadim s. sabinich   18 Dec 2003 05:17:24 
 "Организация узла фидонет под операционной системой Unix" v0.2   Andrey Ostanovsky   18 Dec 2003 10:02:09 
 Re: "Организация узла фидонет под операционной системой Unix" v0.2   vadim s. sabinich   18 Dec 2003 16:01:26 
 "Организация узла фидонет под операционной системой Unix" v0.2   Andrey Ostanovsky   18 Dec 2003 18:32:46 
 Re: "Организация узла фидонет под операционной системой Unix" v0.2   vadim s. sabinich   19 Dec 2003 05:20:26 
 "Организация узла фидонет под операционной системой Unix" v0.2   Yuri Chumakov   19 Dec 2003 09:50:40 
 "Организация узла фидонет под операционной системой Unix" v0.2   Andrey Ostanovsky   19 Dec 2003 09:53:12 
Архивное /ru.unix.bsd/22703fe02663.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional