Руководство администратора сети в ОС Linux

       

Nntpd Взаимодействие с C News


При получении статьи, nntpd должен приписать ее к подсистеме новостей. В зависимости от того, было ли это получено в результате команды IHAVE или POST, статья вручена rnews или inews, соответственно. Вместо того, чтобы вызывать rnews, Вы можете также конфигурировать rnews (во времени компиляции) пакетировать входящие статьи и перемещать возникающие в результате пакеты в /var/spool/news/in.coming, где они остаются для relaynews, чтобы подбирать их в следующей выполненной очереди. Чтобы быть способным правильно выполнить ihave/sendme протокол, nntpd должен быть способен обратиться к файлу хронологии. Во времени компиляции, Вы следовательно должны удостовериться, что путь установлен правильно. Вы должны также удостовериться, что C news и nntpd договариваются о формате вашего файла хронологии. C news использует dbm хеш-функции, чтобы обратиться к нему; однако, имеется некоторое число отличных и немного несовместимых реализаций dbm библиотеки. Если C news был связан с различной dbm библиотекой чем Вы, имеете в вашем стандарте libc, Вы должны линковать nntpd с этой библиотекой, также. Типичный признак того что nntpd и C news не соглашаются относительно формата базы данных - сообщения об ошибках в файле регистрации системы, что nntpd не может открыть его правильно, или двойные статьи, полученные через NNTP. Хороший тест должен выбрать статью из вашей области spool, сделать telnet к nntp порту, и предлагать, это к nntpd как показано в примере ниже. Конечно, Вы должны заменить на ID-сообщение статьи, которую Вы хотите передать к nntpd снова.

$ telnet localhost nntp Trying 127.0.0.1... Connected to loalhost Escape characters is '^]'. 201 vstout NNTP[auth] server version 1.5.11t (16 November 1991) ready at Sun Feb 6 16:02:32 1194 (no posting) IHAVE 435 Got it. QUIT

Этот диалог показывает соответствующую реакцию nntpd; сообщение "Got it" сообщает Вам, что уже имеется эта статья. Если Вы получаете сообщение "335 Ok" взамен, поиск в файле хронологии, потерпел неудачу по некоторым причинам. Завершите диалог печатая Ctrl-D. Вы можете проверять, что шло неправильно, проверяя файл регистрации системы; nntpd регистрирует все виды сообщений в syslog. Несовместимая dbm библиотека обычно проявляется в сообщении, жалующемся что dbminit потерпел неудачу.



Содержание раздела