]> Cypherpunks.ru repositories - nncp.git/blobdiff - doc/admin.texi
Add various documentation indices
[nncp.git] / doc / admin.texi
index 02c15794a5be8f865462a18ea338106e1d607480..e17c136644bd8e68868a1d3751bd183e15cc70eb 100644 (file)
@@ -1,4 +1,5 @@
 @node Administration
+@cindex administration
 @unnumbered Administration
 
 NNCP uses following files/directories you should be aware of:
@@ -20,11 +21,18 @@ NNCP uses following files/directories you should be aware of:
     Partly transferred files are stored with @file{.part} suffix. And
     possibly they also require cleanup if they are completely lost.
 
-    Also it can contain @file{.seen} files, that should be cleaned too
-    from time to time.
+    It can contain @file{.nock} files: fully downloaded, but still not
+    checksummed. Can be checksummed (with @file{.nock} extension removing)
+    with @command{nncp-check -nock}.
+
+    Also it can contain @file{seen/} and @file{hdr/} subdirectories,
+    that should be cleaned too from time to time.
 
     All of that cleaning tasks can be done with @ref{nncp-rm} utility.
 
+    @cindex shared spool
+    @cindex setgid
+    @pindex umask
     @anchor{Shared spool}
     If you want to share single spool directory with multiple grouped
     Unix users, then you can @command{setgid} it and assure that umask
@@ -43,9 +51,10 @@ $ echo 'umask: "007"' >> /usr/local/etc/nncp.hjson
     @ref{Log} file, for example @file{/var/spool/nncp/log}. It should be
     rotated. Choose you own preferable way to do it.
 
+    @pindex newsyslog
     Example @url{https://www.newsyslog.org/manual.html, newsyslog}'s entry:
 @example
-/var/spool/nncp/log            644     7       100     *       CYN
+/var/spool/nncp/log            644     7       100     *       BCYN
 @end example
 
 @item
@@ -58,42 +67,70 @@ $ echo 'umask: "007"' >> /usr/local/etc/nncp.hjson
 */1    *       *       *       *       nncp-reass -all -noprogress
 @end example
 
+@pindex daemontools
+@pindex supervise
+@pindex multilog
 @item
     Possibly long running @ref{nncp-daemon}, @ref{nncp-caller},
-    @ref{nncp-toss} daemons. As all software, they can fail and you
-    should place them under some supervisor control.
+    @ref{nncp-toss}, @ref{nncp-check} daemons. As all software, they can
+    fail and you should place them under some supervisor control.
 
     For example you can use @url{http://cr.yp.to/daemontools.html,
     daemontools} for that task to run them under probably existing
     @verb{|uucp|} user:
 
 @example
-# mkdir -p /var/service/nncp-toss/log
-# chmod 755 /var/service/nncp-toss/log /var/service/nncp-toss
-# cd /var/service/nncp-toss
+# mkdir -p /var/service/.nncp-toss/log
+# cd /var/service/.nncp-toss
 
-# cat > run_ <<EOF
+# cat > run <<EOF
 #!/bin/sh -e
 exec 2>&1
 exec setuidgid uucp /usr/local/bin/nncp-toss -cycle 10
 EOF
-# chmod 755 run_
 
-# cat > log/run_ <<EOF
+# cat > log/run <<EOF
 #!/bin/sh -e
 exec setuidgid uucp multilog t ./main
 EOF
-# chmod 755 log/run_
 
-# mv log/run_ log/run ; mv run_ run
+# chmod -R 755 /var/service/.nncp-toss
+# mv /var/service/.nncp-toss /var/service/nncp-toss
 @end example
 
+@pindex inetd
 @item
     @ref{nncp-daemon} can also be run as
     @url{https://en.wikipedia.org/wiki/Inetd, inetd} service on UUCP's port:
 
 @example
-uucp   stream  tcp6    nowait  nncpuser        /usr/local/bin/nncp-daemon      nncp-daemon -quiet -inetd
+uucp   stream  tcp6    nowait  nncpuser        /usr/local/bin/nncp-daemon      nncp-daemon -quiet -ucspi
+@end example
+
+@cindex UCSPI
+@pindex tcpserver
+@item
+    Or it can be also run as a @command{daemontools} daemon under
+    @url{http://cr.yp.to/ucspi-tcp.html, UCSPI-TCP}. In the example
+    below it uses native daemontools's logging capability:
+
+@example
+# mkdir -p /var/service/.nncp-daemon/log
+# cd /var/service/.nncp-daemon
+
+# cat > run <<EOF
+#!/bin/sh -e
+NNCPLOG=FD:4 exec envuidgid nncpuser tcpserver -DHRU -l 0 ::0 uucp \
+       /usr/local/bin/nncp-daemon -quiet -ucspi 4>&1
+EOF
+
+# cat > log/run <<EOF
+#!/bin/sh -e
+exec setuidgid uucp multilog ./main
+EOF
+
+# chmod -R 755 /var/service/.nncp-daemon
+# mv /var/service/.nncp-daemon /var/service/nncp-daemon
 @end example
 
 @end itemize