HOWTO : fidonet software for unix
[
index ]
Часть четвертая, программы
areafix
Существуют различные варианты
areafix'ов, в частности :
Здесь я опишу настройку двух
первых ареафиксов из этого
списка. (сначала у меня стоял areafix
by Yar Tikhiy, но потом я перешел на gup)
areafix
by Yar Tikhiy
Берем areafix из
дистрибутива ifmail'а
(misc/contrib/areafix-0.5.07). Прочитав README
можно скомпилировать areaqueue.c, но т.к.
это почти 1:1 совпадает с areaqueue из
filefix'a, я не стал этого делать и в
дальнейшем использовал areaqueue
оттуда (см. Часть 4, раздел
filefix).
Копируем areafix.pl в
/usr/local/fidonet/bin/areafix/, а config, help, passwords,
restricted и uplinks - в /usr/local/fidonet/etc/areafix/.
Меняем владельца этих файлов на
fido:fido.
В areafix.pl исправляем путь к файлу
конфигурации :
$CONFIGFILE="/usr/local/fidonet/etc/areafix/config";
Редактируем
/etc/aliases, прописывая две строчки :
areafix:"|/usr/local/fidonet/bin/filefix/areaqueue
/usr/local/fidonet/tmp/areafix/queue", fido
areafix-service: fido
Обратите внимание - первая
строчка почти совпадает с
аналогичной для FileFix'а, только
другой алиас и каталог - не
filefix/queue, а areafix/queue. Не перепутайте
;). Не забывайте после изменения
/etc/aliases запускать newaliases.
Начинаем
настройку в config :
корректируем имя сисопа и адрес.
Если хотите чтобы ваши даунлинки
использовали через вас
транзитную подписку (я это не
использовал), то пропишите адрес
вашего основного аплинка,
название его site-записи в newsfeeds inn'а
и пароль к его areafix'у :
UpLink_Address f500.n5058.z2.fidonet.org
Uplink_Site f500.n5058.z2
UpLink_Password SUPERPASSWORD
(!) Обратите внимание, что Uplink_Site
должен содержать имя зоны.
Далее корректируем пути :
Queue /usr/local/fidonet/tmp/areafix/queue
PasswdFile /usr/local/fidonet/etc/areafix/passwords
UplinkFile /usr/local/fidonet/etc/areafix/uplinks
HelpFile /usr/local/fidonet/etc/areafix/help
NewsFeeds /usr/local/news/etc/newsfeeds
Passive_NewsFeeds /usr/local/news/etc/newsfeeds.passive
OutNewsFeeds /usr/local/news/etc/newsfeeds
NewsGroups /usr/local/news/db/newsgroups
Active /usr/local/news/db/active
Echo2News /usr/local/fidonet/etc/ifmail.areas
RestEcho /usr/local/fidonet/etc/areafix/restricted
MailCommand |/usr/sbin/sendmail -t
ReloadCommand /usr/local/news/bin/ctlinnd reload newsfeeds
Areafix request
Обратите внимание на последнюю
строчку :
Areafix request
- без
кавычек.
RmGroup /usr/local/news/bin/ctlinnd rmgroup %g
Semaphore /usr/local/fidonet/tmp/areafix.semaphore
NewsLockDir /usr/local/news/run
LogLevel 5
Forward No
С config все.
Теперь
прописываем линков в файл passwords :
p1.f99.n5058.z2.fidonet.org:p1.f99.n5058.z2:pwd1
p2.f99.n5058.z2.fidonet.org:p2.f99.n5058.z2:pwd2
p3.f99.n5058.z2.fidonet.org:p3.f99.n5058.z2:pwd3
(!) Обратите внимание, что третье
поле должно содержать имя зоны.
Файл uplinks я не
использовал.
В файле restricted
прочитайте комментарий - там все
понятно.
Пробуем запустить areafix.pl
Если появились сообщения об
ошибках, то есть три варианта :
1. Сделайте что он вас просит (запустите
h2ph, etc.);
2. Попробуйте взять более свежие
areafix'ы из дистрибутива ifmail 2.15 или
у автора;
3. Подправить areafix.pl на предмет
использования файла areafix.log
вместо работы через syslog.
Можете проверить работу areafix'а
аналогично тому, как это было
сделано для filefix'а.
gup
Авторы программы - Mark Delany,
markd@bushwire.apana.org.au и Andrew Herbert,
andrew@werple.apana.org.au. Берем последнюю
версию с
ftp://ftp.isc.org/isc/inn/unoff-contrib,
на настоящий момент - gup-0.4.tar.gz,
раскручиваем, начинаем
подготовку к компиляции.
Посмотрите файл config/netbsd,
допишите в него строчку
P_NO_FLAGS = -DNO_MALLOC_H
Редактируем Makefile :
CONFIG = netbsd
Пути к бинарнику и man-страницам.
Т.к. вам все равно понадобится
отдельный каталог для прочих
файлов gup'а, то будем держать их
вместе.
BINDIR = /usr/local/fidonet/bin/areafix
MANDIR = /usr/local/fidonet/man/man1
Корректируем пути к файлам
ACTIVE_PATH = /usr/local/news/db/active
NEWSGROUPS_PATH = /usr/local/news/db/newsgroups
MAIL_COMMAND = "/usr/sbin/sendmail -t"
Редактируем файл rfc822.h,
убирая строчку (в самом конце)
extern char *sys_errlist[];
Запускаем make; make install. Файлы gup и
gup.1 должны скопироваться в свои
каталоги. Копируем scripts/gupdate в
/usr/local/fidonet/bin/areafix, и немного
правим его :
gup=/usr/local/news/etc/gup
newsfeeds=/usr/local/news/etc/newsfeeds
ctlinnd=/usr/local/news/bin/ctlinnd
tmpfeeds=/usr/local/news/tmp/newsfeeds.$$
# global header
cat header.global
# header
sed -e "s/HOST/$h/g" ../header.local
# body
sed -e 's/$/,\\/g' -e 's/^/ /g' $h/groups
# trailer
#sed -e "s/HOST/$h/g" $h/trailer
cat ../trailer.local
# global trailer
cat trailer.global
Кусок, начинающийся со
строчек
# tell INN about it
if [ "$ctlinnd" ]; then
и до конца файла я выкинул,
оставив только :
if [ "$ctlinnd" ]; then
echo "full update: ctlinnd reload newsfeeds"
$ctlinnd reload newsfeeds gupup
fi
Переходим в /usr/local/fidonet/etc/areafix.
Создаем файл
config, где
прописываем newsfeed-записи, пароли
и e-mail'ы вашил линков, которые
будут пользоваться gup'ом (более
подробно - см. man gup) :
# Moscow link
f0.n5020.z2 PASSWORD MyLink@mail.ru
# Local link
f500.n5058.z2 PASWORD2 sysop@f500.n5058.z2.fidonet.org
В процессе работы gup
конструирует newsfeeds из файлов :
header.global, нескольких описаний
ваших линков и trailer.global. Описания
ваших линков конструируются из
файлов : header.local, списка эх и
trailer.local.
header.global :
ME:*,!junk,!control*::
dummy-feed:!*::
# Прочие не-фидошные newsfeeds
[...]
trailer.global :
# [EOF]
# ;)
header.local :
HOST:!*,\
("HOST" для каждого
конкретного линка будет
заменяться на его адрес)
trailer.local :
:Tf,Wfb,B16386/4096:
mail.headers - эти заголовки
gup будет использовать при ответе
на письма :
From: "AreaFix-robot"
<AreaFix-robot@f99.n5058.z2.fidonet.org>
Subject: Reply from AreaFix
Создаем каталог sites, в нем
описываем линков путем создания
каталогов типа :
./f0.n5020.z2
./f500.n5058.z2
./news.provider.my
./p1.f99.n5058.z2
./p2.f99.n5058.z2
В каждом из этих каталогов у
меня лежат по два файла :
exclude и groups.
В groups прописаны конференции, на
которые подписан этот линк, в
exclude - те, на которые он не может
подписаться. Более подробно - см.
man gup.
Например, в
/usr/local/fidonet/etc/areafix/sites/f500.n5058.z2/
exclude
:
junk
control
f99.points
,
а в
groups :
orn.*
!orn.naezd
!orn.tormoz
!orn.general
uplink.*
Аналогично и для других
линков...
Для запуска gup'а прописываем в
/etc/aliases строчку :
areafix: fido,"|/usr/local/sbin/gup -d
/usr/local/fidonet/etc/areafix -l
/usr/local/fidonet/log/gup.log -m
/usr/local/fidonet/etc/areafix/mail.headers -s
/usr/local/fidonet/etc/areafix/sites"
Описание параметров - man gup.
This is a part of "HOWTO : fidonet
software for unix", http://howto.id.ru
Original of this document is located at http://howto.id.ru/areafix.html
Copyright (c) Vitaly Kuharev, 2:5058/49@fidonet, 1999-2000
Last updated : 14 apr 2000