Next
Previous
Contents
В дистрибутиве Linux-Mandrake RE Spring 2001 [1] есть rpm-пакет leafnode-1.9.18, но лучше взять более новую версию - архив исходников занимает всего 272Кб.
Распакуйте архив:
tar xzvf leafnode-1.9.19.tar.gz
Если сильны в английском, прочтите файл INSTALL. Если нет, то находясь в каталоге с исходниками вы должны набрать три команды (последнюю под правами root'а):
./configure make make install
Если всё сразу соберётся, то предпоследней строкой вы увидите фразу:
"Edit /etc/inetd.conf to start /usr/local/sbin/leafnode and restart inetd" Перевод: "Отредактируйте /etc/inetd.conf для запуска /usr/local/sbin/leafnode и перезагрузите inetd"
Можно, конечно, настроить для работы и inetd, но дело в том, что при инсталляции Linux Mandrake RE Spring 2001 [1] и ASPLinux 7.1 [2], по умолчанию устанавливается демон xinetd, а не inetd, т.к. считается более защищённым и не таким ресурсоёмким в использовании.
Конфигурация для inetd:
nntp stream tcp nowait news /usr/sbin/tcpd /usr/local/sbin/leafnode
Перезапустите inetd:
/etc/rc.d/init.d/inetd restart
Конфигурация для xinetd:
service nntp { disable = no flags = REUSE socket_type = stream wait = no user = news server = /usr/local/sbin/leafnode only_from = 127.0.0.1 log_on_failure += USERID }
В последних версиях xinetd конфигурационные файлы для запуска сервисов находятся в каталоге /etc/xinetd.d
Перезапустите xinetd:
/etc/rc.d/init.d/xinetd restart
Проверьте поднялся ли сервер (желательно под root'ом):
netstat --inet -pan | grep 119
Если сервис поднялся, то вы увидите строку:
tcp 0 0.0.0.0:119 0.0.0.0:* LISTEN 4158/xinetd
Если нет, то проверьте правильность указания пути к leafnode - проблема скорее в этом. Заодно посмотрите что говорится в логах (/var/log/syslog/messages) про leafnode.
Я столкнулся с этой проблемой, когда писал статью - отлаживая leafnode, я не мог подключиться к нему, - изучение файла /var/log/news/errors показало, что leafnode не может открыть /etc/leafnode/config, т.к. у на него стояли права rw только для root'a.
Для того чтобы ваш news-сервер начал работать, в файле конфигурации leafnode /etc/leafnode/config нужно прописать минимум два параметра:
server = имя_сервера_новостей_провайдера expire = 20
Если вы планируете забирать новости с публичного сервера новостей, то нужно добавить две строки для авторизации на нём:
user = ваш_логин password = ваш_пароль
Все остальные параметры (порт, таймаут и т.д.) вводятся по умолчанию. Теперь подключитесь к Internet и наберите следующую команду (под правами root'а):
Это может занять несколько минут. У меня это заняло около 10 минут. После этого отключитесь от Internet-а и запустите knode (или тот клиент для чтения новостей, с которым вы работаете). Это клиент для чтения новостей для KDE. В качестве news-сервера укажите localhost. Дайте команду подписаться на группы новостей. Ваш news-сервер предложит вам список групп новостей, который он считал у news-сервера провайдера (список находится в файле /var/spool/news/leaf.node/groupinfo + там же создаётся пустой файл с именем news-сервера, например: news.talk.ru). Отметьте те группы, которые вас интересуют. После этого в каталоге /var/spool/news/interesting.groups появятся пустые файлы с именами выбранных групп новостей, например: fido7.ru.linux .
Опять подключитесь к Интернет. Запустите команду fetchnews, но уже без ключа -f (под правами root'а):
su news -c "/usr/local/sbin/fetchnews -vvv"
Программа начнёт принимать новости, которым 10 дней и меньше. Этот возраст статей установлен по-умолчанию. Если вы хотите его изменить, то добавьте строку maxage = 10 в файл конфигурации.
Кроме программы fetchnews, вам ещё понадобится программа texpire. Она расположена в том же каталоге, что и fetchnews. Эта программа удаляет те новости, чей возраст превышает значение переменной expire в файле /etc/leafnode/config. По-умолчанию - это 5 дней. В rpm-пакете поставляемом с Linux-Mandrake RE Spring 2001 [1] добавлен скрипт, который размещается при инсталляции в каталоге /etc/cron.daily. В этом скрипте стоит две команды:
su - news -c /usr/local/sbin/texpire su - news -c /usr/local/sbin/fetchnews
Первую команду можно оставить. Вторую удалить, т.к. она не предназначена для работы с dial-up. Вторую команду вы должны поместить в файл /etc/ppp/ip-up.local. В этом случае, новости будут проверяться и обновляться при каждом подключении к Интернет. Правда нужно учесть следующее: если вы подключены к одному и тому же провайдеру, то проблем нет, если же с вашего компьютера подключаются к разным провайдерам и news-сервер привязан к одному из них, то придёться ставить проверку на то к кому сейчас подключен компьютер.
Отправкой новостей занимается ваш локальный news-сервер. Исходящие сообщения располагаются в каталоге /var/spool/new/out.going. <!> Если вы хотите отправить сообщение в news-группу через почту, то вы можете воспользоваться публичным сервером новостей TalkRu [8]. Правда только в том случае, если такая группа новостей есть в нём. Адрес получателя выглядит как название_группы@talk.ru (fido7.ru.linux@talk.ru). И не забывайте про необходимость указывать ваш код для групп новостей Fido [7].
Александр Куприн. ru_classic@mail.ru
- [1] http://www.altlinux.ru
- [2] http://www.asplinux.ru
- [3] http://www.leafnode.org
- [4] http://www.fido7.ru
- [5] http://www.fido7.ru/roadmap.html
- [6] http://www.fido7.ru/user.cgi
- [7] http://www.fido7.ru/passwords.html
- [8] http://www.talk.ru
Next
Previous
Contents
Используются технологии
uCoz