Все о Linux. LinuxRSP.Ru

[an error occurred while processing this directive]

Cвежие новости Linux и BSD, анонсы статей и книг прямо в почтовый ящик!
Подписаться письмом


 Сегодняшние новости:

25 лет исполнилось ядру Linux

Релиз KDevelop 5.0

Oracle открывает код JDK9 для ARM

Выпущен Timewarrior 1.0.0

Релиз Android 7.0

Percona Memory Engine для MongoDB на базе WiredTiger

PowerShell открыт и доступен для Linux

Форк TrueCrypt: VeraCrypt 1.18

Релиз Snapcraft 2.14

Релиз Go 1.7

Стабильный выпуск рабочего стола Lumina

Вышла первая версия аналога OpenCV - DCV 0.1

Выпуск минималистичной программы для мониторинга jsonmon 3

В MIT разработали новый язык программирования

Первый релиз Qt5Gtk2

Godot 2.1 - новая версия открытого игрового движка

Свободная цифровая станция звукозаписи: Ardour 5.0

Обновление SkypeWeb Plugin for Pidgin

Вышла версия 3.0 Android File Transfer для Linux (и для OS X)

Программный аналог MIDI-контроллера для создания музыки: Launchpadd v1.3

Mozilla спонсирует поддержку Python 3.5 в PyPy

Ef 0.08 - программа для моделирования динамики заряженных частиц

Обновление текстового редактора TEA до версии 42.0.0

Релиз OpenOrienteering Mapper 0.6.4

Вышли Guix и GuixSD 0.11

Релиз Opera 39

Выпуск LibreOffice 5.2

В OpenSSH обнаружены и устранены некоторые уязвимости

Эмулятор FCEUX 2.2.3

Компания Билайн переходит на российскую СУБД с открытым исходным кодом Tarantool

Google

 Новые статьи :

Утилиты для восстановления потерянных данных в Linux

Лучшие файловые менеджеры для Android

20 лучших бесплатных книг о Linux

Как сгенерировать открытый/закрытый SSH-ключ в Linux

Grive - клиент Google Drive для Linux с открытым исходным кодом

Протокол IPv6: варианты подключения

Сервер из образа: DHCP + TFTP + Initrd + OpenVZ

Обзор веб-панелей управления хостингом

Приёмы работы с Vim

Nginx как Reverse Proxy для сайта, использующего SSL

Разработка модулей ядра Linux

Мониторинг нагрузки http-сервера Apache 2

Перевод комментариев к файлу конфигурации Squid

Решение проблем при использовании "1c предприятие" 8.2 в Linux

Advanced Bash-Scripting Guide Искусство программирования на языке сценариев командной оболочки







Rambler's Top100





 
 

HOWTO : fidonet software for unix

[ index ]

Часть первая.
ifmail

Автор пакета ifmail - Eugene Crosser, crosser@average.org, 2:5020/230@fidonet. URL : http://www.average.org/ifmail/
Существует несколько ветвей ifmail'а, базирующихся на оригинальной версии, в частности : Здесь я опишу настройку двух первых ветвей ifmail'а из этого списка  - v2.14.os-p7 и v2.14.os-p7-tma5.3. Вторая базируется на первой и содержит большее количество возможностей. Основным будет описание .os-p7, новые возможности .tma5.3 будут описаны по тексту.
Если вы хотите использовать версии других авторов, сначала ознакомьтесь с их отличиями от оригинальной программы.

Компиляция

Берем последнюю версию с ftp://oskin.macomnet.ru/pub/linux/fido/, на настоящий момент - ifmail-2.14.os-p7.tar.bz2. (Или .tma версию с ftp://tma.spb.ru/pub/unix/fido/ifmail/, например ifmail-2.14.os-p7-tma5.3.tar.bz2). Для распаковки вам понадобятся архиваторы bzip2 и tar. Разворачиваем архив : bunzip2 ifmail-2.14.os-p7.tar.bz2, а затем tar -xvf ifmail-2.14.os-p7.tar. Будем считать, что вы раскрутили архив в каталог /usr/src/ifmail-2.14.os-p7. Все дальнейшие пути к файлам с исходными текстами, если не указано иное, будем считать от него.
Прочитайте все файлы Readme.* и определитесь, какие возможности программ вам нужны, а какие не очень.
Условимся, что весь фидошный софт будет устанавливаться в /usr/local/fidonet/. Перед компиляцией пакета нужно отредактировать файл CONFIG. Я опишу опции, которые вы наверняка захотите изменить :

главный файл конфигурации ifmail :
CONFIGFILE = "/usr/local/fidonet/etc/config"
файл лога для отладочных сообщений : если какая-то программа из пакета не работает, то запускаете ее с ключем "-x NN", где NN - от 0 до 32, и потом смотрите этот лог
DEBUGFILE = "/usr/local/fidonet/log/ifmail.debug"
файл лога для обычных сообшений :
LOGFILE = "/usr/local/fidonet/log/ifmail.log"
каталог для lock-файлов. Должен совпадать с тем, в котором создают свои lock-файлы другие программы, работающие с COM-портами (ppp, pppd, mgetty, др.). Проверьте, чтобы ifcico могла читать и писать в него.
LOCKDIR = "/var/spool/lock"
PUBDIR можно оставить тем же (если позволяет свободное место) - позже в него будем помещать файлэхи и файлы для freq's
PUBDIR = "/var/spool/uucppublic"
путь к spool-каталогу inn'a, настройка которого описана в Части 3 - inn
NEWSSPOOL = "/usr/local/news/spool"
Далее идут опции компиляции. Значение каждой из них описано в комментариях в CONFIGе. Прочитайте их ! Здесь я приведу свои комментарии только к нескольким из них.
Дойдя до настройки OPTS=, закоментариваем (стираем ;) секцию для Linux'a и раскоментариваем секцию для 386BSD. Она изначально выглядит так :
# 386BSD:
OPTS = -DHAS_STATFS -DSTATFS_IN_MOUNT_H -DHAS_SETSID -DHAS_NDBM_H \
       -DHAS_TERMIOS_H -DASCII_LOCKFILES -DHAS_FSYNC -DHAS_IOCTL_H \
       -DHAS_REGEX_H -DHAS_TCP -DHAS_SYSLOG -DNEED_UUCPFROM \
       -DNEED_BSY -DNEED_FORK -DNEGATIVE_SEEK_BUG \
       -DHAS_SYS_ERRLIST -DHAS_BSD_SIGNALS \
       -DINT32=long -DINT16=short \
       -DHAS_SELECT \
       -DHAS_FILLOG \
       -DNO_RECEIVED \
       -DNO_FROM \
       -DSHOW_SPEED \
       -DT_LINE \
       -DFTN_MSGID \
       -DEXT_FREQ \
       -DHAVE_TXY \
       -DSECURE_LOG \
       -DEMSI_SIZE \
       -DRM_SKIP \
       -DPKT_PW \
       -DLOCALE=\"ru.SU_KOI8-R\"
Добавьте опцию -DDONT_HAVE_GETOPT если у вас не установлена GNU getopt library (отсутствуют файлы /usr/local/include/getopt.h, /usr/local/lib/libgnugetopt.*. Если хотите, можете устанавить эту библиотеку из packages/devel)
Если ваши линки поддерживают пароли на *.pkt, то можете установить опцию -DPARANOID, хотя я этого не делал.
Можете добавить опцию -DFORCEINTL, при этом в письмах даже внутри одной зоны будет ставиться INTL, например :
@TOPT 30
@INTL 2:5058/99 2:5020/0
@MSGID: 2:5058/99@fidonet 5c2bba89
@RFC-Message-ID: <12428.991029@domain.my>
[...]
Если вы любите читать логи, то опция -DHAS_SYSLOG полезна тем, что при ее установке логгирование производится как в ifmail.log (если установлена опция -DHAS_FILLOG), так и через syslog, что позволяет разделить вывод программ (ifcico, iftoss, ...) по разным лог-файлам (хотя зачем это нужно ?), например :
/etc/syslogd.conf :
-------------------
!ifcico
*.*        /usr/local/fidonet/log/ifcico
!ifmail
*.*        /usr/local/fidonet/log/ifmail
!ifnews
*.*        /usr/local/fidonet/log/ifnews
!ifunpack
*.*        /usr/local/fidonet/log/ifunpack
[...]
-----------------
Опция -DNO_RECEIVED влияет на наличие в письме поля "Received:", например, если не устанавливать ее :
(нетмейл)
@MSGID: 2:5058/99@fidonet a7cd1089
@RFC-Message-ID: <8412.991029@domain.my>
Received: from host1.domain.my (host1.domain.my [10.1.1.1])
   by host2.domain.my (8.9.3/8.9.3/vkx1) with ESMTP id JAA00189
   for <Sysop@p1.f99.n5058.z2.fidonet.org>; Fri, 29 Oct 1999 09:53:57 +0600 (ESS)
[...]
Рекомендую ее не убирать.
Опция -DNO_FROM влияет на наличие в теле письма поля "From:", например, если не устанавливать ее :
(нетмейл)
@MSGID: 2:5058/99@fidonet a7cd1089
@RFC-Message-ID: <8412.991029@domain.my>
From: Cool Sysop <fido@domain.my>
[...]
(эхомейл)
@MSGID: news.domain.my 60fbfeed
@RFC-Message-ID: <7vb5nm$2ss_002@news.domain.my>
From: fido@domain.my (Cool Sysop)
[...]
Рекомендую ее не убирать.
При установленной опции -DT_LINE, в tearline будет название вашей почтовой программы (TheBat, PMMail, Eudora, etc.) - для нетмейла, и название вашей читалки новостей (Forte Agent, NewsXPress, XNews, etc.) - для эхомейла. Названия программ берутся из "X-mailer" и "X-Newsreader" заголовков интернетовского письма, например :
(нетмейл)
[...]
--- The Bat! (v1.00) UNREGISTERED
@Via 2:5058/99@fidonet, Wed Oct 27 1999 at 09:28 ifmail (2.14.os7)
(эхомейл)
[...]
--- News Xpress 2.01
* Origin: The one and only (2:5058/99@fidonet)
 Если эта опция не установлена, то на месте tearline в эхомейле будет полное название ifmail'а, а в нетмейловом сообщении tearlin'a не будут вовсе, например :
(нетмейл)
[...]

@Via 2:5058/99@fidonet, Wed Oct 27 1999 at 09:28 ifmail (2.14.os7)
(эхомейл)
[...]
--- ifmail v.2.14.os7
 * Origin: The one and only (2:5058/99@fidonet)
Если опция -DDENY_BAD_HEADERS не установлена, то куча заголовков из вашего интернетовского письма попадет в его фидошный образ, например :
(нетмейл)
@MSGID: 2:5058/99@fidonet 2443a844
@RFC-X-Priority: 3 (Normal)
@RFC-Message-ID: <16394.991027@domain.my>
[...]
(эхомейл)
@MSGID: news.domain.my 23585be8
@RFC-Path: news.domain.my!host1
@RFC-Sender: user1@host1.domain.my
@RFC-Distribution: big8
@RFC-Message-ID: <7v5qsp$2l8_002@news.domain.my>
@RFC-NNTP-Posting-Host: host1.domain.my
@RFC-X-Trace: host.domain.my 940994266 9561 10.1.1.2 (27 Oct 1999 03:17:46 GMT)
@RFC-X-Complaints-To: newsmaster@domain.my
@RFC-NNTP-Posting-Date: 27 Oct 1999 03:17:46 GMT
[...]
Естественно, ее лучше установить, но предварительно почитайте о правомочности обрезания таких заголовков в транзитных письмах в misc/FAQ ("Q: How do I get rid of the RFC headers converted to that silly kludges in the FidoNet messages?"). Так что решайте сами - резать или нет.
Замечание : Если вы устанавливаете пакет .tma5.3, то вам дополнительно доступны, в частности, следующие опции :
-DFBOX - поддержка файлбоксов. Подробнее о них рассказано в разделе настройка.
-DHIDDENS - поддержка hidden и override;
-DAMIGADOS_4D_OUTBOUND - иной формат outbound'а. Перед использованием убедитесь, поддерживают ли его другие ваши программы (binkd, filefix, etc.);
-DHAS_FILE_ATTACH (и прочие *ATTACH*) - поддержка транзитных файлаттачей. Я это не использовал;
Без опции -DSHELL = \"/bin/sh\" у меня пакет не смог откомпилироваться (выдавалась ошибка в execsh.c);
ACL в iftoss (описано в файле README.access-list). Я не пробовал.
Таким образом, в конце концов секция OPTS= у меня стала выглядеть примерно так (знаком "+" выделены добавившиеся опции, знаком "-" удаленные) :
# 386BSD:
OPTS = -DHAS_STATFS -DSTATFS_IN_MOUNT_H -DHAS_SETSID -DHAS_NDBM_H \
       -DHAS_TERMIOS_H -DASCII_LOCKFILES -DHAS_FSYNC -DHAS_IOCTL_H \
       -DHAS_REGEX_H -DHAS_TCP -DHAS_SYSLOG -DNEED_UUCPFROM \
       -DNEED_BSY -DNEED_FORK -DNEGATIVE_SEEK_BUG \
       -DHAS_SYS_ERRLIST -DHAS_BSD_SIGNALS \
       -DINT32=long -DINT16=short \
       -DHAS_SELECT \
       -DHAS_FILLOG \
       -DNO_RECEIVED \
       -DNO_FROM \
       -DSHOW_SPEED \
-      -DT_LINE \
+      -DDONT_HAVE_GETOPT \
+      -DFORCEINTL \
+      -DDENY_BAD_HEADERS \
+      -DFBOX \
+      -DHIDDENS \
+      -DSHELL = \"/bin/sh\" \
       -DFTN_MSGID \
       -DEXT_FREQ \
       -DHAVE_TXY \
       -DSECURE_LOG \
       -DEMSI_SIZE \
       -DRM_SKIP \
       -DPKT_PW \
       -DLOCALE=\"ru.SU_KOI8-R\"
При прописывании этих опций не забывайте добавлять "\" в конце каждой строчки.
Закончив настройку OPTS =, идем дальше :
каталог для бинарных файлов - ifcico, ifmail, iftoss, др.
BINDIR = /usr/local/fidonet/bin
владелец и группа для фидософта. Я использую fido:fido.
OWNER = fido
GROUP = fido

Закомментируем SHARED=1 и включим SHARED=0 (при SHARED=1 у меня не получилось скомпилировать ifmail)
Закомментируем LIBS в секции Linux, раскоментируем LIBS в секции 386BSD,FreeBSD и добавим путь -L/usr/local/lib - если библиотека gdbm лежит там (/usr/local/lib/libgdbm.*), иначе - поправьте. Соответственно нужно подправить путь к gdbm.h : INCLUDES = -I${INCDIR} -I/usr/local/include
Закомментируем NEEDED = в секции Linux и раскоментируем в секции SunOS,386BSD,FreeBSD.
Вот, собственно, с CONFIG закончили.
Запускаем make. Если компиляция началась - хорошо. Если же выдалось что-то типа :
for d in iflib ifgate ifcico; do (cd $d && echo $d && make all) || exit; done;
iflib
"Makefile", line 40: Missing dependency operator
"Makefile", line 47: Need an operator
"Makefile", line 54: Need an operator
"Makefile", line 74: Missing dependency operator
"Makefile", line 77: Need an operator
make: fatal errors encountered -- cannot continue
*** Error code 1
Stop.
то значить вам нужен GNU make. Если он у вас не установлен, то в общем-то можно в Makefile'ах из каталогов ifcico, ifgate, iflib ручками вычистить конструкции типа ifeq (1,${SHARED}) / else / endif, оставив части между else и endif (если мы компилируем без shared libs). Если хотите установить gmake (он может пригодиться при компиляции некоторых других прогамм), то можно установить его из packages, секция devel.
Итак, запускаем gmake (или просто make если он GNU-сный). Все должно скомпилироваться.
Теперь создаем группу fido в файле /etc/group, например : fido:*:120:
Затем создаем пользователя fido (если посредством vipw, то просто прописываем строчку : fido:*:120:120::0:0:fidonet:/usr/local/fidonet:/bin/sh, заменив UID на незанятый, а GID на тот, что прописали для группы fido).
У меня этот пользователь "реальный" - на него идет фидошный нетмейл, отчеты анализаторов статистики, копии отлупов роботов, и т.д.
Создаем директорию /usr/local/fidonet, меняем ее владельца на fido:fido, устанавливаем права (у меня 0755). Переходим в /usr/local/fidonet и создаем каталоги, запустив следующий скрипт : su fido -c ./mkdirs.sh
---mkdirs.sh---------
#!/bin/sh
cd /usr/local/fidonet
mkdir bin
mkdir bin/areafix
mkdir bin/filefix
mkdir bin/freq
mkdir bin/stat 
mkdir bin/route 
mkdir fileboxes
mkdir etc
mkdir etc/areafix
mkdir etc/filefix
mkdir etc/freq
mkdir etc/route 
mkdir etc/ifpolld
mkdir inbound.pro
mkdir inbound.unp
mkdir log
mkdir log/archive
mkdir magic
mkdir man
mkdir man/man1
mkdir man/man3
mkdir man/man8
mkdir nodelist
mkdir outbound
mkdir tmp
mkdir tmp/areafix
mkdir tmp/areafix/queue
mkdir tmp/filefix
mkdir tmp/filefix/queue
mkdir tmp/filefix/bad
mkdir tmp/filefix/tics
---------------------
Этот скрипт, конечно, создает несколько "лишних" на первый взгляд каталогов, но на них я буду ссылаться в дальнейших описаниях.
Возвращаемся в каталог с исходниками ifmail, запускаем make install. Бинарники должны скопироваться в /usr/local/fidonet/bin.
Осталось установить man-страницы, конфиги и утилиты. Man-страницы находятся в каталогах : ifcico (ifcico.8, ifindex.8, ifinfo.8, ifreq.8, ifroute.8, ifstat.8, nlpatch.8), ifgate (ifmail.8, iftoss.8), и в iflib (parsedata.3). Раскладываем их в /usr/local/fidonet/man/man8 и /usr/local/fidonet/man/man3 соответственно, делаем над ними chown bin:bin и chmod 0444. (Для удобства можете сделать хардлинк ln ifmail.8 ifnews.8).
Конфиги и утилиты лежат в каталоге misc. Копируем оттуда файлы Areas и config в /usr/local/fidonet/etc/. Из misc/inouttabs копируем outaltkoi8 и outkoi8alt в /usr/local/fidonet/etc/.
С исходниками все.

Настройка

В /etc/manpath.config добавляем
MANDATORY_MANPATH /usr/local/fidonet/man
Будем считать что у вас две модемные линии : первая - CM, вторая - ночная.
Посмотрим, кто владеет портами, на которых находятся ваши модемы :
$ ls -la /dev/cuaa*
crw-rw----  1 uucp  dialer  28, 128 29 окт 11:38 /dev/cuaa0
crw-rw----  1 uucp  dialer  28, 129 25 окт 00:26 /dev/cuaa1
crw-rw----  1 uucp  dialer  28, 130 23 окт 20:39 /dev/cuaa2
crw-rw----  1 uucp  dialer  28, 131 23 окт 20:39 /dev/cuaa3
Это uucp:dialer. Таким образом, для того, чтобы ifcico могла звонить, ее владелец (fido) должен входить в группу dialer. Редактируем /etc/group : dialer:*:68:fido
Так как при тоссинге iftoss вызывает /usr/local/news/bin/rnews из пакета INN, то он (iftoss) должен иметь соответствующие права. Так как rnews принадлежит news:uucp, поэтому простейшим решением будет прописать в /etc/group : uucp:*:66:fido
Проверьте существование каталога (или корректного симлинка) /tmp - если его нет, почта тосситься не будет.
Переходим в /usr/local/fidonet/etc. Там у нас пока четыре фйла : config, Areas, outaltkoi8 и outkoi8alt. Последние два - это перекодировочные таблицы : фидошные письма приходят в 866 кодировке, а inn'у скармливаются (и кладутся в news-базу) в koi8-r. Исходящие письма, наоборот, перекодируются из koi8-r в 866.
Начинаем редактировать /usr/local/fidonet/etc/config :
Параметры logfile и debugfile можно закоментарить, тогда будут использоваться значения, заданные в файле CONFIG при копиляции программы.
В address прописываете ваш адрес и aka.
Вместо прописывания паролей, можно написать :
include /usr/local/fidonet/etc/ifmail.passwd,
создать файл ifmail.passwd, в котором и прописать пароли - так удобнее и безопаснее.
Можете создать и настроить aliases, как описано в комментариях (хотя у меня он пустой).
sysalias /usr/local/fidonet/etc/aliases,
В myfqdn - ваше fqdn ;)
myfqdn domain.my
,
в данном примере я буду использовать domain.my.
Прописываем каталоги :
inbound /usr/local/fidonet/inbound.unp
listinbound /usr/local/fidonet/inbound.unp
protinbound /usr/local/fidonet/inbound.pro

Так как по сути, listed практически не отличается в плане безопасности от unlisted, то и от тех и от других приходящие файлы будем класть в inbound.unp.
Прописываете outbound для зоны (обычно - Zone 2), которой принадлежин ваш основной адрес :
outbound /usr/local/fidonet/outbound
Если вы скомпилировали ifmail с опцией -DEXT_FREQ и собираетесь разрешить у себя freq's, то прописываете путь к freq-процессору :
ext_rp /usr/local/fidonet/bin/freq/ifextrp
(freq-процессоры описаны в Части 4, глава утилиты)
Каталог magic можно оставить тем же.
magic /usr/local/fidonet/magic
В секции nodelist прописываете имена и пути к ноделисту и пойнтлистам :
nodelist /usr/local/fidonet/nodelist/nodelist
nodelist pnt5058.ndl 2:5058/0@fidonet
nodelist node99.ndl 2:5058/0@fidonet

при этом не забудьте положить туда эти файлы ;). Самую свежую версию нодлиста можно взять на официальном сайте - ftp://ftp.sstar.com/fidonet/zone2/
domtrans у меня прописан как
domtrans .fidonet .fidonet.org
Идем далее :
эти два файла (ifdbm и seq) должны находится в каталоге, доступном пользователю fido на запись.
database /usr/local/fidonet/ifdbm,
sequencer /usr/local/fidonet/seq,

areas /usr/local/fidonet/etc/Areas.
badgroups
- на ваше усмотрение, я их вообще убрал.
Таблицы перекодировки. См. мои замечания в Части 4, hints
outtab /usr/local/fidonet/etc/outkoi8alt
intab /usr/local/fidonet/etc/outaltkoi8

Касательно этих опций - см. мои комментари к опциям компиляции -DNO_RECEIVED и -DNO_FROM
received no
bodyfrom no

Исправляем пути для вызываемых программ :
sendmail обычно в /usr/sbin
sendmail /usr/sbin/sendmail -f $F $T
rnews в /usr/local/news/bin (когда мы проинсталлируем туда inn ;)
rnews /usr/local/news/bin/rnews
iftoss /usr/local/fidonet/bin/iftoss
архиваторы - там, где они у вас лежат. Если ставить их из packages, секция archivers, то - /usr/local/bin
unzip /usr/local/bin/unzip -ojq $F
unarj /usr/local/bin/unarj e $F
unarc /usr/local/bin/unpack $F
unzoo /usr/local/bin/zoo -extract $F
для zip я добавил опции "-9q" - чтобы оно сжимало получше ;) и поменьше писало в  лог.
packer /usr/local/bin/zip -9q $F $P
Настройки размеров для пакетов подправьте в зависимости от стабильности связи, количества линков, и т.д. У себя я увеличил maxmsize, а то 12.3k - маловато. Стоявшая у меня перед этим фастэха/2 поддерживала размер письма по-моему до 512k ;)
Две строчки :
#newslog /usr/lib/news/log
#msgidbm /tmp/ifmsgids

имеют значение только если у вас в качестве news-сервера не inn а cnews.
ModemPort cuaa0:L115200
ModemPort (time Any1800-0800,Sat,Sun) cuaa1:L115200

порты модемов и скорость, на которую они залочены (COM1 - cuaa0, COM2 - cuaa1, etc.). Вообще, постарайтесь, чтобы во всех ваших коммуникационных программах (ifcico, ppp, mgetty, cu, etc.) каждый порт лочился бы на одну и ту же скорость.
Настройте трансляцию телефонных кодов для вашей местности :
PhoneTrans 7-3532- /
Из строчек ModemDial у вас (в простейшем случае) будет
ModemDial ATDPW \T\r
в options выставляем желаемые опции (все они описаны в комментариях)
# Вы же прочитали Readme.janus из -tma.5.3, да ?
options NoJanus

в секции EMSI data прописываем информацию о станции, избегая '}' и ']'.
Для .tma5.3 доступно еще несколько опций :
outbox 2:5058/500 /usr/local/fidonet/fileboxes/500-box
outbox 2:5058/0 /usr/local/fidonet/fileboxes/NC-box
hidden 2:5058/500 7-3532-955-2408 CM
override 2:5058/99.1 7-3532-955-0944 1.22:00-5.09:00,6.00:00-7.24:00

С config все.
Теперь надо отредактировать Areas. Там коментарии все понятны, единственное что надо иметь в виду - это названия эх со спецсимволами - &, $, др. - inn не сможет корректно их воспринять. Для таких эх желательно построить преобразование вида $CRACK$.TALKS fido7.cracks.talks fido7, т.е. без спецсимволов.
У меня файл Areas выглядит так :
$CRACK$             crack
$CRACK$.TALKS       crack.talks 
ORN.SONGS&RHYTHMS   orn.songs_rhythms
*                   *
О том, ставить или нет префикс fido7 во втором столбце - решайте сами. В простейшем случае, если у вас только фидошные линки, то под каким именем INN хранит эху в ньюс-базе - это ваше личное дело. Все равно при упаковке на линка ifmail ей вернет "фидошное" название. Если же у вас есть источник usenet-ньюсов (например ваш провайдер предоставляем вам доступ), то проще, конечно, придерживаться единообразия.
Что касается третьего столбца (distribution), то почитайте документацию inn'а (например man distrib.pats) и смотрите сами. В большинстве простейших случаев distributions можно не использовать.

Таким образом у вас в каталоге nodelist должны быть ноделист и пойнтлисты, в etc следующие файлы : aliases, Areas, config, ifmail.passwd, outaltkoi8, outkoi8alt. Теперь проверьте, чтобы владельцем всех этих файлов конфигурации (и ноделиста с пойнтлистами) были fido:fido.

В исходниках ifmail'а, в каталоге misc/inn лежит скрипт send-ifmail. Он используется для подготовки исходящей почты к упаковке. Я встречал два варианта этого скрипта - одн из поставки ifmail.os-p7, другой из ifmail.os-p7-tma5.3. Они немного отличаются, но оба v1.11 ;). Я опишу необходимые изменения для скрипта из ifmail.os-p7-tma5.3. Если у вас просто ifmail.os-p7, то подкорректируйте по аналогии.
Надо изменить несколько строчек :
путь к innshellvars :
## =()<. @<_PATH_SHELLVARS>@>()=
if [ -r /usr/local/news/lib/innshellvars ]; then
. /usr/local/news/lib/innshellvars
Т.к. send-ifmail будем запускать от пользователя fido, то логичным было бы чтобы лог писался в /usr/local/fidonet/log :
LOG=/usr/local/fidonet/log/${PROGNAME}.log
Путь к конфигу ifmail'а :
CONF=/usr/local/fidonet/etc/config
В секции "## Get the compression flags." можете подкорректировать тип создаваемых пакетов (прочитайте описание опции -g в man ifmail), например :
##  Get the compression flags.
echo "${PROGNAME}: [$$] begin ${SITE}"
case "${SITE}" in
f500.n5058.z2)
# На аплинка - crash (.clo)
    IFNEWS_OPTIONS="-g C"
    ;;
# На пойнта - hold (.hlo)
p1.f99.n5058.z2)
    IFNEWS_OPTIONS="-g H"
    ;;
# На всех остальных - по умолчанию (.flo)
*)
    IFNEWS_OPTIONS="-g N"
    ;;
esac,
Подкорректируйте путь к ifnews. Если у вас большой исходящий траффик, то можете добавить ключик -b0 в строку с вызовом batcher'а (man batcher) :
time batcher \
-p"/usr/local/fidonet/bin/ifnews ${IFNEWS_OPTIONS} [...]


Скопируйте send-ifmail в /usr/local/fidonet/bin, смените владельца на fido:fido.

Перед первым звонком необходимо откомпилировать ноделист, запустив ifindex (su fido -c /usr/local/fidonet/bin/ifindex). У вас в каталоге nodelist появятся файлики index.dir, index.pag, а в катологе log - ifmail.debug и ifmail.log.

В процессе настройки, при пробных тоссингах/постингах и т.д. предварительно сохраняйте пакеты с почтой, во избежание их потери при ошибках в настройке.

Если вы растоссили пришедшую почту, но в в базе INN'а ничего не появилось, проверьте, запущен ли у вас inn; посмотрите в /usr/local/news/log логи news и news.notice; проверьте каталоги :
a) /usr/local/news/spool/articles/junk - если пришедшая почта там, то запустите autocreate
b) /usr/local/news/spool/incoming/ - запустите rnews -U.

Прозвонка : "/usr/local/fidonet/bin/ifcico -r1". При этом ifcico просмотрит outbound, определит на кого можно звонить (это зависит от вида .?lo'шки, времени работы и прочих настроек) и попробует обзвонить эти узлы. Если вы при запуске ifcico укажете в командной строке адрес, например : "/usr/local/fidonet/bin/ifcico -r1 f500.n5058.z2", то по нему будет совершен принудительный звонок. Прочие параметры ifcico читайте в man ifcico.

Для того, чтобы ifcico могла отвечать на входящие звонки, вам необходимо поставить mgetty, настройка которой описана в Части 4, глава mgetty.

Тоссинг (если у вас уже инсталлирован inn) : su fido -c "/usr/local/fidonet/bin/ifunpack"

Упаковка на линков (если у вас уже инсталлирован inn) : su fido -c "/usr/local/fidonet/bin/send-ifmail ; /usr/local/fidonet/bin/ifpack"

Я сознательно в этом описании указываю "su fido -c ...", "su news -c ..." для того, чтобы никто не забывал запускать программы с правами конкретных пользователей (а не от root'а, например) - это позволит избежать многих ошибок.

Более подробно об автоматизации прозвонки, тоссинга, обработки файлэх, freq и прочего рассказано в Части 5 - совместная работа.
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/ifmail.html
Copyright (c) Vitaly Kuharev, 2:5058/49@fidonet, 1999-2000
Last updated : 14 apr 2000

      

Связь | О проекте LinuxRSP | Реклама | О Linux
© 1999-2024 LinuxRSP