1=head1 NAME 2 3inncheck - Check INN configuration and database files 4 5=head1 SYNOPSIS 6 7B<inncheck> [B<-afqv>] [B<--noperm> | B<--perm>] [B<--pedantic>] 8[I<file> | I<file>B<=>I<path> ...] 9 10=head1 DESCRIPTION 11 12B<inncheck> examines various configuration files and databases and verifies 13things about them. Things verified depend on the file being checked, 14but generally are things like permissions, ownership, syntax errors in 15config files, etc. 16 17B<inncheck> does not make changes to any files S<-- it> just reports what 18it thinks may be wrong, and it is up to the operator to fix the problem 19 20The set of files checked may be restricted by using I<file> or 21I<file>B<=>I<path> arguments. For example, putting C<incoming.conf> 22causes only the F<incoming.conf> file to be checked. Using 23C<incoming.conf=/tmp/incoming.conf> on the command line will cause 24B<inncheck> to only verify the F<incoming.conf> file, and it will perform 25the checks on the F</tmp/incoming.conf> file instead of the default one. 26Setting a file path to an empty value like C<incoming.conf=> will skip 27the check for that file (this only makes sense with B<-a>, or no files 28will be checked at all). 29 30Valid values for I<file> are: 31 32 active 33 control.ctl 34 control.ctl.local 35 expire.ctl 36 incoming.conf 37 inn.conf 38 innfeed.conf 39 moderators 40 newsfeeds 41 nntpsend.ctl 42 passwd.nntp 43 readers.conf 44 storage.conf 45 46=head1 OPTIONS 47 48=over 4 49 50=item B<-a>, B<--all> 51 52If any I<file> value or I<file>B<=>I<path> pairs (see below) are given, 53then normally only the files they refer to are checked. Use the B<-a> (or 54B<--all>) flag to specify that I<all> files should be checked regardless. 55In this case the form I<file>B<=>I<path> will be the more useful. 56 57=item B<-f>, B<--fix> 58 59Use the B<-f> flag (or B<--fix>) to have B<inncheck> print the appropriate 60B<chown>/B<chgrp>/B<chmod> command necessary to fix a problem that it 61reports. Any other output lines will be prefixed with a hash sign (C<#>) 62to make the output be valid input for a shell. Note that the B<--perm> 63flag must be used as well when using this flag. 64 65=item B<--noperm> 66 67To avoid doing any checking of file permissions or ownership, use the 68B<--noperm> option. 69 70=item B<--pedantic> 71 72Use the B<--pedantic> option to get reports on things that are not necessarily 73wrong, but may indicate a bad configuration, such as F<inn.conf> missing 74a key. 75 76=item B<--perm> 77 78B<inncheck> checks all files for permission problems. If the B<--perm> 79flag is used, then I<only> the files specified by the I<file> or 80I<file>B<=>I<path> command line arguments will be checked for problems 81other than permission problems. 82 83=item B<-q>, B<--quiet> 84 85Use the B<-q> option (or B<--quiet>) to get less output. 86 87=item B<-v>, B<--verbose> 88 89Use the B<-v> option (or B<--verbose>) to get more verbose output. 90 91=back 92 93=head1 EXAMPLES 94 95To have B<inncheck> check all files for syntax and permission problems 96simply run: 97 98 inncheck 99 100It is recommended to run the following command to be aware of all the 101potential problems B<inncheck> can detect: 102 103 inncheck -a --perm --pedantic 104 105To have B<inncheck> check all files for permission problems and to verify 106the syntax of the F<active> and F<incoming.conf> files, do: 107 108 inncheck --perm active incoming.conf 109 110To fix the permissions problems noted in the output of the above command, 111modify it as follows: 112 113 inncheck -f --perm | sh 114 115(Note that it is useless to mention the name of the two files since 116permission problems are checked on all files.) 117 118To have B<inncheck> check the test F<newsfeeds> file in 119F</var/tmp/newsfeeds.testing>, do: 120 121 inncheck newsfeeds=/var/tmp/newsfeeds.testing 122 123To have B<inncheck> check all the files as it normally does, but to specify 124a different location for the F<newsfeeds> file and omit checking of the 125F<innfeed.conf> file, do: 126 127 inncheck -a newsfeeds=/var/tmp/newsfeeds.testing innfeed.conf= 128 129=head1 BUGS 130 131If the B<-f> and B<--perm> options are used together, along with B<-a> or 132some I<file> or I<file>B<=>I<path> arguments that refer to a file with 133a syntax problem, then the output will no longer be valid input for a shell. 134 135In most cases, B<inncheck> currently does not correctly understand option 136values spanning multiple lines. If you get error messages about runaway 137quotes, you either have to ignore them and check the correctness of the 138relevant lines yourself, or merge the value into a single line. 139 140=head1 HISTORY 141 142Written by Brendan Kehoe <brendan@cygnus.com> and Rich Salz 143<rsalz@uunet.uu.net> for InterNetNews. Converted to POD by Julien Elie. 144 145=head1 SEE ALSO 146 147active(5), control.ctl(5), expire.ctl(5), history(5), incoming.conf(5), 148inn.conf(5), innfeed.conf(5), moderators(5), newsfeeds(5), nntpsend.ctl(5), 149passwd.nntp(5), readers.conf(5), storage.conf(5). 150 151=cut 152