Provided by: leafnode_1.11.10-3_i386 bug


       fetchnews - fetch news via NNTP


       fetchnews [-q] [-v] ... [-x number] [-l] [-n] [-f] [-P] [-w]


       Leafnode  is a USENET package intended for small sites, where there are
       few users and little disk space, but where a large number of groups  is

       The  design  of leafnode is intended to self-repair after problems, and
       to require no manual maintenance.

       Fetchnews (formerly called "fetch") is the program  which  submits  and
       retrieves new articles to or from the upstream NNTP server.


       -q     Be  quiet.  Suppresses  some  warnings.  This  flag  cancels any
              previously encountered -v flags.

       -v     Be verbose.  This flag cancels  any  previously  encountered  -q
              flags.   A  maximum of four -v can be used (the more v, the more

       -v     Warn about non-critical errors.

       -vv    Be verbose whenever a group command occurs.

       -vvv   Be verbose whenever an article command occurs.

       -vvvv  For debugging purposes. Don't expect the  additional  output  to
              make sense.

       -w     Wait  mode.  This  causes the XOVER update (which runs after the
              article fetch phase) to run in the foreground. By  default,  the
              XOVER update runs in the background, detached from the shell, on
              systems that offer a working fork(2) call. Helpful for debugging
              and to avoid terminal clobbering when fetchnews is run manually.

       -x number
              Go number articles back and try to re-fetch what's missing. This
              can be useful to pull data from broken servers that have  either
              overview  and  group data out of synch or create articles out of
              article number order.

       -l     Don't  use  supplementary  servers  (-l  is  supposed  to   mean
              "local").  This does speed up the operation quite a bit.

       -n     Do  not  expire  newsgroup  subscriptions.  Technically:  do not
              unlink files in the interesting.groups directory.

       -f     Erase the file, thus force redownloading  the  whole
              active file from all upstream servers. This is usually occurring
              only very infrequently  because  it  takes  a  long  time.   See
              timeout_active  in  leafnode(8).  DO NOT use this option in cron
              jobs or otherwise regularly.

       -P     Only post  articles  that  have  accumulated  in  the  out.going
              directory but do not fetch articles from upstream servers.


       fetchnews  will exit with code 0 if it could connect to all servers and
       encountered no other errors. It exits with code 2 when it was unable to
       connect  to  at  least  one  server,  and it exits with code 1 on other


              is a file to track when the active files have been  successfully
              downloaded  from  the  upstream  servers the last time. If it is
              missing, this has the same effect as giving the -f option. It is
              only  created after the active file of each upstream servers has
              been downloaded successfully.

       See  leafnode(8)  for  the  list  of  other  files  affected,  and  for
       information on configuring fetchnews.


       LN_SKIP_GROUPS=pattern[,pattern[...]] (since v1.9.53)
              If  set,  all  groups  that match one of the wildmat(3) patterns
              will be skipped during the fetch. This can be used  as  a  quick
              way  of  skipping  binary  groups  during daytime, for instance,

              env 'LN_SKIP_GROUPS=*binary*,alt.*' /usr/sbin/fetchnews -nq

              This variable  is  parsed  as  an  unsigned  integer  value  and
              determines  how  many seconds fetchnews will wait when trying to
              obtain the lock file from another leafnode program. 0  means  to
              wait  indefinitely.  This  variable  takes  precedence  over the
              configuration file.

              (since v1.11.7) If this variable is defined (regardless  of  its
              value,   including  empty),  leafnode  will  skip  checking  the
              upstream server's time by means of the NNTP DATE command.


       Here is a brief description of what fetchnews does.

       First, after connecting to the upstream NNTP server, all articles  that
       have  the  u+r  permission (0400) flag set in /var/spool/news/out.going
       are posted using POST.  If a posting fails, that article  is  moved  to
       /var/spool/news/failed.postings  which an administrator has to clean up
       once in a while.  Moving a file back  to  /var/spool/news/out.going  is
       sufficient  to  retry  the  post it. The u+r flag is checked to prevent
       posting an (incomplete) article that leafnode(8) is still receiving  at
       the  same  time.   If  a  posting succeeds, the article is removed from
       out.going in order to not post it twice into a moderated newsgroup on a
       different  server  (which  would send multiple copies of the article to
       the moderator).  Note: older fetchnews versions tried to  post  on  all
       servers first, but failed to do so when one of the servers could not be
       reached. If you need to work around a dodgy  upstream  server  that  is
       fast  but doesn't forward your posts reliably, prohibit posting to this
       server using the nopost server option in the  configuration  file,  see

       Second,  the  upstream server's list of newsgroups (obtained using LIST
       and LIST NEWSGROUPS) is merged into leafnode's (if  timeout_active  has
       expired,  the  file  is  not present or the active file is
       empty) or updated (with NEWGROUPS).

       Third, fetchnews iterates over the list  of  newsgroups,  performing  a
       GROUP,  an XOVER (if supported) or XHDR Message-ID and a number of HEAD
       and BODY or ARTICLE  commands  for  each  group  which  has  been  read
       recently.  It  assumes  that for the particular group it is looking at,
       "maxage" was set to the groupexpire or global expire. As a consequence,
       it makes only sense to set maxage lower than or equal to expire.


       Fetchnews  does  not  use  NEWNEWS.   NEWNEWS is not used because it is
       often very expensive and therefore also disabled at many sites.

       After some experiments, I decided that it was better to fetch  all  the
       articles  in  a  group than to optimize away some; users would complain
       too loudly when the optmizer guessed wrongly.

       The only way to control what newsgroups are accessible to  local  users
       is  to  control  what the upstream server lets fetchnews read, and that
       will not keep out all crossposts (endemic in e.g. the  groups).
       If  your  site is big enough that you need to control newsgroup access,
       consider using a news server which is designed for a big site.

       Fetchnews sets its real and effective uid to  "news"  when  started  as
       root and refuses to run if it cannot get this user ID.


       Fetchnews ignores the "Supersedes:" and "Control:" headers.


       Older  versions  of  fetchnews  posted any articles found in out.going.
       Since v1.9.23, fetchnews will only post article files that  have  their
       user  executable  bit  set.   Leafnode  sets  this  bit  after  it  has
       successfully received a post. This behaviour avoids posting  incomplete
       articles  when  leafnode  receives a post at the same time fetchnews is


       Written by Arnt Gulbrandsen <>  and  copyright  1995-96
       Troll  Tech  AS,  Postboks  6133  Etterstad, 0602 Oslo, Norway, fax +47

       Modified  by  Cornelius  Krasel  <>,
       Markus  Enzenberger <> and Randolf Skerka
       <>.  Copyright  of  the  modifications  1997-1999.
       Modified  by Matthias Andree <>, copyright of the
       modifications 2001-2004.


       leafnode(8),                   texpire(8),                    newsq(1),