1PULLNEWS(1)               InterNetNews Documentation               PULLNEWS(1)
2
3
4

NAME

6       pullnews - Pull news from multiple news servers and feed it to another
7

SYNOPSIS

9       pullnews [-hnqRx] [-b fraction] [-c config] [-C width] [-d level] [-f
10       fraction] [-F fakehop] [-g groups] [-G newsgroups] [-H headers] [-k
11       checkpt] [-l logfile] [-m header_pats] [-M num] [-N timeout] [-O] [-p
12       port] [-P hop_limit] [-Q level] [-r file] [-s to-server[:port]] [-S
13       max-run] [-t retries] [-T connect-pause] [-w num] [-z article-pause]
14       [-Z group-pause] [from-server ...]
15

REQUIREMENTS

17       The "Net::NNTP" module must be installed.  This module is available as
18       part of the libnet distribution and comes with recent versions of Perl.
19       For older versions of Perl, you can download it from
20       <http://www.cpan.org/>.
21

DESCRIPTION

23       pullnews reads a config file in the running user's home directory
24       (normally called ~/.pullnews) and connects to the upstream servers
25       given there as a reader client.  By default, it connects to all servers
26       listed in the configuration file, but you can limit pullnews to
27       specific servers by listing them on the command line:  a whitespace-
28       separated list of server names can be specified, like from-server for
29       one of them.  For each server it connects to, it pulls over articles
30       and feeds them to the destination server via the IHAVE or POST
31       commands.  This means that the system pullnews is run on must have
32       feeding access to the destination news server.
33
34       pullnews is designed for very small sites that do not want to bother
35       setting up traditional peering and is not meant for handling large
36       feeds.
37

OPTIONS

39       -b fraction
40           Backtrack on server numbering reset.  Specify the proportion (0.0
41           to 1.0) of a group's articles to pull when the server's article
42           number is less than our high for that group.  When fraction is 1.0,
43           pull all the articles on a renumbered server.  The default is to do
44           nothing.
45
46       -c config
47           Normally, the config file is stored in ~/.pullnews for the user
48           running pullnews.  If -c is given, config will be used as the
49           config file instead.  This is useful if you're running pullnews as
50           a system user on an automated basis out of cron rather than as an
51           individual user.
52
53           See "CONFIG FILE" below for the format of this file.
54
55       -C width
56           Use width characters per line for the progress table.  The default
57           value is 50.
58
59       -d level
60           Set the debugging level to the integer level; more debugging output
61           will be logged as this increases.  The default value is 0.
62
63       -f fraction
64           This changes the proportion of articles to get from each group to
65           fraction and should be in the range 0.0 to 1.0 (1.0 being the
66           default).
67
68       -F fakehop
69           Prepend fakehop as a host to the Path: header of articles fed.
70
71       -g groups
72           Specify a collection of groups to get.  groups is a list of
73           newsgroups separated by commas (only commas, no spaces).  Each
74           group must be defined in the config file, and only the remote hosts
75           that carry those groups will be contacted.  Note that this is a
76           simple list of groups, not a wildmat expression, and wildcards are
77           not supported.
78
79       -G newsgroups
80           Add the comma-separated list of groups newsgroups to each server in
81           the configuration file (see also -g and -w).
82
83       -h  Print a usage message and exit.
84
85       -H headers
86           Remove these named headers (colon-separated list) from fed
87           articles.
88
89       -k checkpt
90           Checkpoint (save) the config file every checkpt articles (default
91           is 0, that is to say at the end of the session).
92
93       -l logfile
94           Log progress/stats to logfile (default is "stdout").
95
96       -m header_pats
97           Feed an article based on header matching.  The argument is a number
98           of whitespace-separated tuples (each tuple being a colon-separated
99           header and regular expression).  For instance:
100
101               Hdr1:regexp1 !Hdr2:regexp2
102
103           specifies that the article will be passed only if the "Hdr1:"
104           header matches "regexp1" and the "Hdr2:" header does not match
105           "regexp2".
106
107       -M num
108           Specify the maximum number of articles (per group) to process.  The
109           default is to process all new articles.  See also -f.
110
111       -n  Do nothing but read articles -- does not feed articles downstream,
112           writes no rnews file, does not update the config file.
113
114       -N timeout
115           Specify the timeout length, as timeout seconds, when establishing
116           an NNTP connection.
117
118       -O  Use an optimized mode:  pullnews checks whether the article already
119           exists on the downstream server, before downloading it.  It may
120           help for huge articles or a slow link to upstream hosts.
121
122       -p port
123           Connect to the destination news server on a port other than the
124           default of 119.  This option does not change the port used to
125           connect to the source news servers.
126
127       -P hop_limit
128           Restrict feeding an article based on the number of hops it has
129           already made.  Count the hops in the Path: header (hop_count),
130           feeding the article only when hop_limit is "+num" and hop_count is
131           more than num; or hop_limit is "-num" and hop_count is less than
132           num.
133
134       -q  Print out less status information while running.
135
136       -Q level
137           Set the quietness level ("-Q 2" is equivalent to "-q").  The higher
138           this value, the less gets logged.  The default is 0.
139
140       -r file
141           Rather than feeding the downloaded articles to a destination
142           server, instead create a batch file that can later be fed to a
143           server using rnews.  See rnews(1) for more information about the
144           batch file format.
145
146       -R  Be a reader (use MODE READER and POST commands) to the downstream
147           server.  The default is to use the IHAVE command.
148
149       -s to-server[:port]
150           Normally, pullnews will feed the articles it retrieves to the news
151           server running on localhost.  To connect to a different host,
152           specify a server with the -s flag.  You can also specify the port
153           with this same flag or use -p.
154
155       -S max-run
156           Specify the maximum time max-run in seconds for pullnews to run.
157
158       -t retries
159           The maximum number (retries) of attempts to connect to a server
160           (see also -T).  The default is 0.
161
162       -T connect-pause
163           Pause connect-pause seconds between connection retries (see also
164           -t).  The default is 1.
165
166       -w num
167           Set each group's high water mark (last received article number) to
168           num.  If num is negative, calculate Current+num instead (i.e. get
169           the last num articles).  Therefore, a num of 0 will re-get all
170           articles on the server; whereas a num of "-0" will get no old
171           articles, setting the water mark to Current (the most recent
172           article on the server).
173
174       -x  If the -x flag is used, an Xref: header is added to any article
175           that lacks one.  It can be useful for instance if articles are fed
176           to a news server which has xrefslave set in inn.conf.
177
178       -z article-pause
179           Sleep article-pause seconds between articles.  The default is 0.
180
181       -Z group-pause
182           Sleep group-pause seconds between groups.  The default is 0.
183

CONFIG FILE

185       The config file for pullnews is divided into blocks, one block for each
186       remote server to connect to.  A block begins with the host line, which
187       must have no leading whitespace and contains just the hostname of the
188       remote server, optionally followed by authentication details (username
189       and password for that server).
190
191       Following the host line should be one or more newsgroup lines which
192       start with whitespace followed by the name of a newsgroup to retrieve.
193       Only one newsgroup should be listed on each line.
194
195       pullnews will update the config file to include the time the group was
196       last checked and the highest numbered article successfully retrieved
197       and transferred to the destination server.  It uses this data to avoid
198       doing duplicate work the next time it runs.
199
200       The full syntax is:
201
202           <host> [<username> <password>]
203                   <group> [<time> <high>]
204                   <group> [<time> <high>]
205
206       where the <host> line must not have leading whitespace and the <group>
207       lines must.
208
209       A typical configuration file would be:
210
211           # Format group date high
212           data.pa.vix.com
213                   rec.bicycles.racing 908086612 783
214                   rec.humor.funny 908086613 18
215                   comp.programming.threads
216           nnrp.vix.com pull sekret
217                   comp.std.lisp
218
219       Note that an earlier run of pullnews has filled in details about the
220       last article downloads from the two rec.* groups.  The two comp.*
221       groups were just added by the user and have not yet been checked.
222
223       The nnrp.vix.com server requires authentication, and pullnews will use
224       the username "pull" and the password "sekret".
225

FILES

227       pathbin/pullnews
228           The Perl script itself used to pull news from upstream servers and
229           feed it to another news server.
230
231       $HOME/.pullnews
232           The default config file.  It is in the running user's home
233           directory (normally called ~/.pullnews).
234

HISTORY

236       pullnews was written by James Brister for INN.  The documentation was
237       rewritten in POD by Russ Allbery <rra@stanford.edu>.
238
239       Geraint A. Edwards greatly improved pullnews, adding no more than
240       16 new recognized flags, fixing some bugs and integrating the
241       backupfeed contrib script by Kai Henningsen, adding again 6 other
242       flags.
243
244       $Id: pullnews.pod 8468 2009-05-16 12:28:24Z iulius $
245

SEE ALSO

247       incoming.conf(5), rnews(1).
248
249
250
251INN 2.5.2                         2010-08-11                       PULLNEWS(1)
Impressum