|
|
В этом файле описывается процесс установки и настройки
|
|
|
фидонет-совместимого мейлера bforce 0.xx.
|
|
|
|
|
|
В данном документе приняты следующие обозначения:
|
|
|
|
|
|
<SRCDIR> - путь, куда вы распаковали тарболл с исходными
|
|
|
текстами bforce 0.xx (далее bforce)
|
|
|
Тарболл - файл с расширением tar.gz, или tar.bz2
|
|
|
|
|
|
|
|
|
Требования к системе
|
|
|
====================
|
|
|
|
|
|
Для компиляции bforce вам потребуется компилятор (для
|
|
|
gnu/bsd-систем gcc), так же GNU make (make для линукс,
|
|
|
gmake для bsd).
|
|
|
|
|
|
Обратитесь к документации по вашей системе того, что бы
|
|
|
узнать как установить вышеперечисленное программное обеспечение.
|
|
|
|
|
|
|
|
|
Процесс компиляции
|
|
|
==================
|
|
|
|
|
|
Распакуйте тарболл следующими командами:
|
|
|
|
|
|
gzip -d bforce-master.tar.gz
|
|
|
или
|
|
|
bzip2 -d bforce-master.tar.bz2
|
|
|
|
|
|
tar -xvf bforce-master.tar
|
|
|
|
|
|
Перейдите в директорию bforce/source:
|
|
|
cd <SRCDIR>/bforce/source
|
|
|
|
|
|
Для создания Makefile, который наиболее подходит к вашей
|
|
|
системе, наберите:
|
|
|
|
|
|
./configure --help
|
|
|
|
|
|
и внимательно прочитайте предлагаемую справку.
|
|
|
Если вам не понятна предлагаемая справка, то просто запустите:
|
|
|
|
|
|
./configure
|
|
|
|
|
|
## WARNING! Внимание!
|
|
|
## Новые версии bforce собираются с поддержкой syslog по умолчанию.
|
|
|
## Если вы не знаете что это/зачем вам это нужно - тогда делайте
|
|
|
## ./configure --disable-syslog
|
|
|
|
|
|
При необходимости исправьте Makefile для ваших нужд.
|
|
|
Запустите команду make (для bsd - gmake):
|
|
|
|
|
|
make
|
|
|
|
|
|
В случае ошибок при выполнении команды make пишите bugreport на
|
|
|
e.kozhuhovskiy@gmail.com или в эхоконференцию ru.unix.ftn
|
|
|
|
|
|
Возможно, прийдется пересоздать configure с помощью autoconf
|
|
|
|
|
|
Поздравляем, компиляция завершилась успешно.
|
|
|
Для установки bforce наберите:
|
|
|
|
|
|
make install
|
|
|
|
|
|
Для bsd:
|
|
|
|
|
|
gmake install
|
|
|
|
|
|
Внимание! Возможно, вам будет необходимо выполнить make installdirs для того,
|
|
|
что бы создать необходимые директории. Для установки дополнительных
|
|
|
скриптов, выполните make install-contrib
|
|
|
|
|
|
|
|
|
|
|
|
Настройка
|
|
|
=========
|
|
|
|
|
|
Рекомендуется установить системную переменную BFCONFIG,
|
|
|
указывающую на местоположение конфигурации bforce.
|
|
|
Проще всего через /etc/environment для общесистемной или
|
|
|
.profile для переменной пользователя.
|
|
|
|
|
|
Для нормальной работы вам нужно отредактировать конфигурационные файлы
|
|
|
bforce. По умолчанию они находятся в /usr/local/fido/etc и называются
|
|
|
bforce.conf - основной конфигурационный файл bforce
|
|
|
bforce.passwd - файл определения паролей на сессии
|
|
|
bforce.subst - файл переопределения данных из nodelist
|
|
|
freq.dirs - файл задания списка директорий для freq-запросов
|
|
|
freq.aliases - файл задания magic freqests
|
|
|
|
|
|
Так же вам необходимо подправить файл outman. По умолчанию он лежит в
|
|
|
/usr/local/fido/bin. outman - это скрипт, вызываемый вами для создания
|
|
|
прозвонок, файловых запросов и файл-аттачей на узлы ftn.
|
|
|
|
|
|
|
|
|
Использование
|
|
|
=============
|
|
|
|
|
|
bforce - основной файл bforce, служит для запуска
|
|
|
демона, исходящих звонков и запуска из-под mgetty\portslave для приема
|
|
|
входящих звонков.
|
|
|
Попробуйте bforce --help
|
|
|
|
|
|
|
|
|
bfindex - служит для обновления индексных файлов (перекомпиляции)
|
|
|
нодлистов. Испрользование: bfindex
|
|
|
|
|
|
bfstat - служит для показа почтовой очереди. Использование: bfstat
|
|
|
|
|
|
nlookup - служит для поиска информации в нодлисте. Использование:
|
|
|
nlookup <ftn_address>
|
|
|
|
|
|
outman - см. "Настройка". Попробуйте outman --help
|
|
|
|
|
|
В папке debian лежат man-страницы.
|
|
|
TODO: дописать Makefile для установки man-pages
|
|
|
|
|
|
Совместная работа с mgetty
|
|
|
==========================
|
|
|
Для того, что бы узел мог отвечать на входящие звонки, необходимо установить
|
|
|
соотв. програмное обеспечение. Наиболее распространенная программа - mgetty.
|
|
|
Для того, что бы она могла работать на ftn-узле, необходимо собрать ее с опцией
|
|
|
-DFIDO. В случае дистрибутивной сборки это можно проверить с помощью
|
|
|
cat `which mgetty` |strings |grep FIDO |wc -l
|
|
|
Если вы получите число, отличное от нуля, то вам повезло :)
|
|
|
|
|
|
В login.config допишите следующую конструкцию:
|
|
|
/FIDO/ news fido /usr/bin/bforce @
|
|
|
|
|
|
где news - это пользователь, из-под которого у вас работает ftn-подсистема.
|
|
|
|
|
|
Bforce при ИСХОДЯЩИХ звонках использует файлы блокировки порта модема,
|
|
|
при несовпадении каталога или невозможности создания файла
|
|
|
mgetty сбросит модем во время звонка.
|
|
|
Поэтому настоятельно рекомендуется проверить права на папку /var/lock
|
|
|
и то, на какой ФС она расположенв.
|
|
|
Современные системы имеют тенденцию к применению /var/lock как ссылки
|
|
|
на /run/lock, а ФС /run монтируется и создается на tmpfs при каждой
|
|
|
загрузке с помощью systemd-tempfiles.
|
|
|
Для изменения поведения необходимо создать файл в /etc/tempfiles.d/,
|
|
|
совпадающим (за исключением части имени -part) c именем файла в
|
|
|
/usr/lib/systemd/systemd-tempfiles.d.
|
|
|
Рабочий пример legacy-part.conf в папке contrib.
|
|
|
|
|
|
Совместная работа с inetd/xinetd
|
|
|
================================
|
|
|
К сожалению (или к счастью), bforce не умеет самостоятельно принимать входящие
|
|
|
binkd/ifc вызовы. Для этого вам прийдется использовать суперсервер интернета -
|
|
|
inetd или xinetd.
|
|
|
Вот примеры для inetd:
|
|
|
binkp stream tcp nowait news /usr/bin/bforce bforce -i binkp
|
|
|
ifc stream tcp nowait news /usr/bin/bforce bforce -i auto
|
|
|
|
|
|
Проверьте, что бы у вас были соотв. строки в /etc/services, например:
|
|
|
binkp 24554/tcp # binkp fidonet protocol
|
|
|
ifc 60179/tcp # fidonet EMSI over TCP
|
|
|
|
|
|
Дополнительные утилиты
|
|
|
======================
|
|
|
|
|
|
Дополнительные утилиты для bforce находятся в <SRCDIR>/contrib:
|
|
|
bflan - bforce log analyzer
|
|
|
callout.sh - скрипт для отзвонки на аплинков
|
|
|
outman - скрипт outman
|
|
|
timesync.tcl - скрипт для синхорнизации времени с узлами ftn.
|
|
|
init.d/bforce - init-скрипт для RedHat
|
|
|
bfha - bforce history analyzer (bfha)
|
|
|
bfha/README - bfha README
|
|
|
bfha/bfha.pl - собственно, bfha
|
|
|
legacy-part.conf - файл для донастройки прав на /run/lock в systemd
|
|
|
u-srif - продвинутый freq-процессор
|
|
|
u-srif/u-srif-index.py \ с поддержой отчетов,
|
|
|
u-srif/u-srif-lookup.py \ ограничений,
|
|
|
u-srif/u-srif.py \ индексации файловой базы,
|
|
|
u-srif/conf \ что значительно ускоряет
|
|
|
u-srif/conf/report.footer \ работу.
|
|
|
u-srif/conf/report.header \ Написан на python.
|
|
|
u-srif/conf/u-srif.aliases \ --------------------
|
|
|
u-srif/conf/u-srif.conf \ -------------------
|
|
|
u-srif/conf/u-srif.dirs \ ------------------
|
|
|
u-srif/lib / ------------------
|
|
|
u-srif/lib/uconfig.py / -------------------
|
|
|
u-srif/lib/udbase.py / --------------------
|
|
|
u-srif/lib/ufido.py / ---------------------
|
|
|
u-srif/lib/unodestat.py / ----------------------
|
|
|
u-srif/lib/utmpl.py / -----------------------
|
|
|
u-srif/lib/uutil.py / ------------------------
|