Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Next Previous Contents

5. Новости

5.1 Как настроить онлайновую читалку новостей?

Пока PPP активен, можно читать новости в онлайне. Есть куча доступных программ. Два примера: rtin и trn.

Чтобы начать читать новости, то в большинстве случаев достаточно сделать (обычно только раз и для всех в файле .profile):

export NNTPSERVER=news.acme.xz

Для получения в сообщениях корректного From-address, некоторые программы могут потребовать:

export NNTP_INEWS_DOMAIN=acme.xz

5.2 Как настроить оффлайновую читалку новостей?

Чтобы читать новости в offline и таким образом сократить счета за телефон и достичь большей гибкости, надо установить локальный news-spool. Это потребует усилий по настройке, и также определенного объема дискового пространства. После первичной настройки все должно более или менее благополучно работать, требуя лишь некоторого внимания время от времени.

Здесь описаны два различных решения.

5.3. Как настроить C News?

Здесь описано решение на базе ньюссервера C News и протоколе NNTP. C News предназначался для несколько других целей, но его гибкости хватает и для нашей ситуации. Также можно использовать более свежий продукт - сервер новостей INN, но он может требовать большее количество ресурсов. В любом случае не вздумайте ставить их обоих одновременно; они не дружат друг с другом.

Критично, что обработка новостей делается от имени пользователя news, и все конфигурационные файлы находятся в каталоге /usr/lib/news. Один из способов сделать это, при регистрации как root выполнить su news; cd.

Самые важные настроечные файлы это:

  • active - краткое описание активных групп новостей. Он обновляется командой addgroup, например, addgroup comp.os.linux.networking y.
  • организация может быть указана по вашему усмотрению в поле заголовка Organization: , в нашем случае:
    Dirk Gently's Holistic Detective Agency
    
  • почтовое имя в нашем случае acme.xz.
  • whoami установливает имя вашего сайта в Path: . В установке, описанной здесь, с использованием NewsX, это имя никогда не выйдет за пределы машины, так что можете установить его так, как вам нравится, если только уверены, что оно уникально. В нашем случае это roderick.
  • sys управляет выборкой и дальнейшим распространением новостей. Допустим, что ISP в нашем случае добавляет acme.xz к Path, и, что он единственный наш поставщик новостей. Данный пример в действительности говорит о том, что мы будем принимать все, что приходит, и, что мы отсылаем новости только на acme.xz, который прежде не видели и первоначально отправляли на наш собственный сайт. В этой упрощенной установке мы допустим, что все группы приходят из одного источника. /all определяет дистрибуцию, и должно быть включено. Буква F говорит о том, что все (указатели на) исходящие новости будут складываться в файл.
  • ME:all/all::
    acme/acme.xz:all,!junk/all:FL:
    

  • Должен быть создан подкаталог для исходящих новостей, в нашем случае:
  • mkdir /var/spool/news/out.going/acme
    

  • mailpaths управляет отправкой сообщений в модерируемые группы, хотя эта задача обычно оставляется на усмотрение ISP.

C News нуждаются в определенной доле ежедневного внимания со стороны администратора, но его действия могут быть определены один раз и для всех командой crontab -e для пользователя news. Далее показано как может выглядеть эта установка; она может быть настроена как вам угодно:

# maintain incoming and outgoing batches
10,40 *  * * * /usr/lib/newsbin/input/newsrun

# expire C News, once a day
30 0  * * * /usr/lib/newsbin/expire/doexpire

# monitor and report if needed
00 2  * * sat /usr/lib/newsbin/maint/addmissing
40 3  * * * /usr/lib/newsbin/maint/newswatch
50 3  * * * /usr/lib/newsbin/maint/newsdaily
newsrun перемещает входящие и исходящие статьи (дважды в час), doexpire будет удалять утаревшие статьи (каждую нось в 00:30), а три последние команды выополняют различные административные и корректирующие ошибки функции.

Нужно также удостовериться, что при запуске машины все чисто. От пользователя root, добавьте строку в /etc/rc.d/rc.local:

su news -c /usr/lib/newsbin/maint/newsboot
News могут обрабатываться программой NewsX, извлекающей новости с NNTP-сервера. Программа может быть найдена на:

ftp://sunsite.unc.edu/pub/Linux/system/news/transport/newsx-0.9.tar.gz или:

ftp://ftp.sol.no/user/egilk/newsx-0.9.tar.gz

Установка NewsX предельно проста. Установка в классическом случае:

make
su
make install
exit

Для приведенной установки все, что вы должны сделать - это создать группы, которые вы хотите читать, используя команду "addgroup".

Чтобы выбрать статьи, пользователь news выдает следующие команды (при установке связи по PPP, или аналогичной -):

newsrun
newsx acme news.acme.xz
newsrun

Опция -d дает непрерывную распечатку экрану. За подробной информацией обратитесь к документации NewsX.

NewsX будет также заботиться о регистрации исходящих новостей.

Для управления удалением статей при их устаревании требуется файл explist, требуется. Комментарии в этом примере должны объяснить, что мы делаем:

# hold onto history lines 14 days, nobody gets >120 days
/expired/                       x       14      -
/bounds/                        x       0-1-120 -

# retain these for 2 months
comp.sources,comp.os.linux.all  x       60      -

# noise gets thrown away fast
junk,control                    x       2       -

# default:  14 days, no archive
all                             x       14      -

ALT:В маленьком спуле новостей, не требуется частое управление группами новостей. Полезность трафика изменяется в широких пределах. Основная задача состоит в определении, какие статьи отбросить, а какие группы создать автоматически. Чтобы гарантировать, что управляющие сообщения, содержащие новую группу, не создадут у нас беспорядок, в файле, называемом newgroupperm определяется, что именно мы позволяем:

comp.os.linux   tale@uunet.com  yv
all             any             nq
В этом примере, будут созданы все группы в иерархии comp.os.linux (y), и пользовательские новости будут сообщаться (v). Все остальные будут молча (q) проигнорированы (n). Последняя строка нужна, если вы хотите создавать все группы вручную.

ALT: Альтернатива NewsX - suck, или slurp совместно с postit. Slurp использует NNTP NEWNEWS, который может работать с несколькими серверами.

5.4 Как настроить Leafnode?

Другое решение состоит в установке интегрированного пакета leafnode. Он выполняет все задачи, требуемые для персонального спула новостей, и легко настраивается. Доступен на:

http://www.troll.no/freebies/leafnode.html

Как для C News, вся обработка новостей ведется от пользователя news.

Домашний каталог для leafnode /usr/lib/leafnode. Для установки введите:

cd /usr/lib/leafnode
tar -xzvf leafnode-0.8.tgz
cd leafnode-0.8
make
su
make install

Заметьте ниже, что префикс /usr/local/sbin должен быть заменен на /usr/sbin, если вы ставите leafnode из пакета.

Оставаясь пользователем root, измените строку, которая управляет NNTP в /etc/inetd.conf:

nntp  stream  tcp  nowait  news  /usr/sbin/tcpd /usr/local/sbin/leafnode
Активизация:
killall -HUP inetd

Возвратимся к пользователю news, напечатав exit. В /usr/lib/leafnode/config изменяем строку, которая определяет сервер NNTP. В нашем случае:

server = news.acme.xz

Leafnode будет обслуживать себя добавлением следующей команды через crontab -e от пользователя news:

# expire Leafnode, once a day
0 4 * * * /usr/local/sbin/texpire

Обмен новостями производится также от пользователя news следующей командой (PPP поднят и запущен):

/usr/local/sbin/fetch
Пользователи, которые хотят читать новости, должны после этого использовать рецепт "Как мне установить онлайновую читалку новостей?", за исключением того, что их настройки производятся для локальной машины, т.е.:
export NNTPSERVER=localhost

Это должно быть все имеется к этому. Первая выборка почты передаст список доступных групп новостей. Leafnode затем посмотрит, какие группы запрошены пользователями, и соответственно настроится при следующей активизации.

Note that leafnode does not seems to work in cases where NNTP authorization is required. +.LP

ALT: Альтернатива leafnode - nntpcache. Он доступен на:

ftp://ftp.suburbia.net/pub/nntpcache/nntpcache.tgz ALT: Другая альтернатива - использовать читалку новостей slrn вместе с пакетом slrn-pull. Читалка новостей должна быть скомпилирована с поддержкой spool.


Next Previous Contents