makehistory - tools to recover Usenet history database.


   makehistory [ -A oldtmp ] [ -a active ] [ -b ] [ -f filename ] [ -i ] [
   -n ] [ -o ] [ -r ] [ -s size ] [ -T tmpdir ] [ -u [ -v ] ]


   Makehistory rebuilds the history(5) text file and the associated dbz(3)
   database.   The default name of the text file is /var/lib/news/history;
   to specify a different name, use the ``-f''  flag.   Makehistory  scans
   the  active(5) file to determine which newsgroup directories within the
   spool directory, /var/spool/news, should be scanned.  (If  a  group  is
   removed,  but its spool directory still exists, makehistory will ignore
   it.)  The program reads each file found and writes a history  line  for

   After  the  text  file  is  written,  makehistory  will  build  the dbz


   -A     If the ``-A'' flag is  used  then  the  argument  given  is  the
          pathname makehistory can use to store a copy of the history file
          as it's being built. It will be appended to,  so  existing  data
          will not be lost (and so should be valid history entries).

   -a     If the ``-a'' flag is given then the argument is the active file
          to use rather than the default one of /var/lib/news/active.

   -b     If the ``-b'' flag is used, then  makehistory  will  remove  any
          articles that do not have valid Message-ID headers in them.

   -f     If  the  ``-f''  flag is used, then the database files are named
          file.dir and file.pag.  If the ``-f'' flag is not used,  then  a
          temporary  link  to  the name history.n is made and the database
          files are written as history.n.pag and history.n.dir.

   -o     If the ``-o'' flag is used, then the link is not  made  and  any
          existing  history  files  are  overwritten.  If the old database
          exists, makehistory will use it to determine the size of the new

   -i     To  ignore  the  old  database  use  the ``-i'' flag.  Using the
          ``-o'' flag implies the ``-i'' flag.

   -s     The program will also ignore any old database if the ``-s'' flag
          is  used to specify the approximate number of entries in the new
          database.  Accurately specifying the  size  is  an  optimization
          that will create a more efficient database.  (The size should be
          the estimated eventual size of the file, typically the  size  of
          the  old  file.)   For  more  information, see the discussion of
          dbzfresh and dbzsize in dbz(3).

   -u     If the ``-u'' flag is given, then makehistory assumes that  innd
          is  running.   It will pause the server while scanning, and then
          send ``addhist'' commands (see ctlinnd(8)) to the server for any
          article  that  is  not  found  in the dbz database.  The command
          ``makehistory -bu'' is useful after a system  crash,  to  delete
          any  mangled articles and bring the article database back into a
          more consistent state.

   -v     If  the  ``-v''  flag  is  used  with  the  ``-u''  flag,   then
          makehistory  will  put a copy of all added lines on its standard

   -n     To scan the spool directory without rebuilding  the  dbz  files,
          use  the  ``-n'' flag.  If used with ``-u'', the server will not
          be paused while scanning.

   -r     To just build the dbz files from an existing text file, use  the
          ``-r''  flag.  The ``-i'' or ``-s'' flags can be useful if there
          are no valid dbz files to use.

   -T     Makehistory needs to create a temporary file that  contains  one
          line  for  each  article  it finds, which can become very large.
          This  file  is  created  in  the   /var/spool/news/in.coming/tmp
          directory.   The  ``TMPDIR'' environment variable may be used to
          specify a different directory.  Alternatively, the  ``-T''  flag
          may  be used to specify a temporary directory.  In addition, the
          sort(1) that is invoked during the build writes large  temporary
          files  (often to /var/tmp but see your system manpages).  If the
          ``-T'' flag is used, then the flag and its value will be  passed
          to  sort.   On  most  systems  this  will  change  the temporary
          directory that sort uses.  if used, this flag and its value will
          be  passed  on to the sort(1) command that is invoked during the


   A typical way to  use  this  program  is  with  the  following  /bin/sh

          ctlinnd throttle "Rebuilding history file"
          cd /var/lib/news
          if makehistory -n -f history.n ; then
              echo Error creating history file!
              exit 1
          # The following line can be used to retain expired history
          # It is not necessary for the history file to be sorted.
          # awk 'NF==2 { print; }' <history >>history.n
          # View history file for mistakes.
          if makehistory -r -s `wc -l <history` -f history.n; then
              mv history.n history
              mv history.n.dir history.dir
              mv history.n.pag history.pag
          ctlinnd go ''


   Makehistory  does not handle symbolic links.  If the news spool area is
   split  across  multiple  partitions,  the  following  commands   should
   probably be run before the database is regenerated:
          cd /var/spool/news
          find . -type l -name '[1-9]*' -print | xargs -t rm
   Make sure to run the command on all the appropriate partitions!


   Written  by  Rich  $alz <> for InterNetNews.  This is
   revision 1.3, dated 1996/11/26.


   active(5),  ctlinnd(8),  dbz(3),  filechan(8),   history(5),   innd(8),
   newsfeeds(5), makeactive(8), newsrequeue(8).


More Linux Commands

pthread_yield(3) - yield the processor - Linux manual page
pthread_yield() causes the calling thread to relinquish the CPU. The thread is placed at the end of the run queue for its static priority and another thread is

set_menu_userptr(3menu) - associate application data with a
Every menu and every menu item has a field that can be used to hold application-specific data (that is, the menu-driver code leaves it alone). These functions g

rpms2solv(1) convert one or more rpms into a solv file......
The rpms2solv tool converts the header data from one or more rpms into the solv file written to standard output. -m MANIFESTFILE Read the rpm file names from th

readahead(2) - perform file readahead into page cache.......
readahead() initiates readahead on a file so that subsequent reads from that file will be satisfied from the cache, and not block on disk I/O (assuming the read

mrtg-ipv6(1) IPv6 support in MRTG - Linux manual page.......
MRTG and cfgmaker support SNMP over IPv6. IPv6 targets can be specified by hostname or IPv6 address, and if the required libraries are present (see below), quer

snmpusm(1) - creates and maintains SNMPv3 users on a network
snmpusm is an SNMP application that can be used to do simple maintenance on the users known to an SNMP agent, by manipulating the agents User-based Security Mod

XGravityEvent(3) - GravityNotify event structure (Man Page)
The structure for GravityNotify events contains: typedef struct { int type; /* GravityNotify */ unsigned long serial; /* # of last request processed by server *

lremovexattr(2) - remove an extended attribute (Man Page)...
Extended attributes are name:value pairs associated with inodes (files, directories, symbolic links, etc.). They are extensions to the normal attributes which a

addstr(3ncurses) - add a string of characters to a curses wi
These functions write the (null-terminated) character string str on the given window. It is similar to calling waddch once for each character in the string. The

getgrent_r(3) - get group file entry reentrantly (Man Page)
The functions getgrent_r() and fgetgrent_r() are the reentrant versions of getgrent(3) and fgetgrent(3). The former reads the next group entry from the stream i

pesign-client(1) command line tool for signing UEFI applicat
pesign is a command line tool for manipulating signatures and cryptographic digests of UEFI applications. OPTIONS --unlock Unlock the specified token. A PIN - s

XCompositeRedirectWindow(3) - X Composite Extension library
The composite extension provides several related mechanisms: Per-hierarchy storage The rendering of an entire hierarchy of windows is redirected to off-screen s

We can't live, work or learn in freedom unless the software we use is free.