diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2005-09-05 21:05:54 +0000 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2005-09-05 21:05:54 +0000 |
commit | 41bedfa217acb9cb199d073785f1c0f61ac1a14b (patch) | |
tree | a4740fdd4da01a27411de378e205eb7daf9c22cd /doc/gsc.texi | |
parent | ddd4093c04a1a545857c64c65bb9ab59140dbcff (diff) | |
download | gsc-41bedfa217acb9cb199d073785f1c0f61ac1a14b.tar.gz gsc-41bedfa217acb9cb199d073785f1c0f61ac1a14b.tar.bz2 |
Updated
git-svn-id: file:///svnroot/gsc/trunk@123 d2de0444-eb31-0410-8365-af798a554d48
Diffstat (limited to 'doc/gsc.texi')
-rw-r--r-- | doc/gsc.texi | 348 |
1 files changed, 329 insertions, 19 deletions
diff --git a/doc/gsc.texi b/doc/gsc.texi index 149cdf4..2d27fdb 100644 --- a/doc/gsc.texi +++ b/doc/gsc.texi @@ -6,6 +6,12 @@ @c %**end of header @setchapternewpage odd +@syncodeindex fn cp +@syncodeindex vr cp +@syncodeindex ky cp +@syncodeindex pg cp +@syncodeindex tp cp + @include version.texi @include rendition.texi @@ -149,7 +155,7 @@ is distributed under GFDL, @xref{Copying This Manual}. @node mksnapshot @section mksnapshot -@cindex mksnapshot +@pindex mksnapshot @cindex snapshots, creating for CVS @cindex CVS snapshots, creating @@ -173,12 +179,10 @@ file. This file should declare several environment variables that control @command{mksnapshot} behavior. @defvar CVSROOT -@cindex CVSROOT This variable specifies the @acronym{CVS} root directory name. @end defvar @defvar WD -@cindex WD A working directory for extracting @acronym{CVS} data. @end defvar @@ -207,7 +211,7 @@ participates. @node sv_logger @section sv_logger -@cindex sv_logger +@pindex sv_logger This program reads its standard input line by line and sends each line to the given @command{syslog} priority/facility. It could be used @@ -261,7 +265,7 @@ to the project public directory and perform @command{cvs update} @node sv_sync_www_schedule @subsection sv_sync_www_schedule -@cindex sv_sync_www_schedule +@pindex sv_sync_www_schedule @cindex Scheduling a CVS synchronization job @cindex CVS synchronization job, scheduling The program @command{sv_sync_www_schedule} schedules a @@ -293,7 +297,7 @@ channel @code{local1.error}. @node sv_sync_www_flush @subsection sv_sync_www_flush -@cindex sv_sync_www_flush +@pindex sv_sync_www_flush @command{sv_sync_www_flush} executes CVS synchronization jobs, scheduled by @command{sv_sync_www_schedule}. It does so by invoking @@ -313,7 +317,7 @@ arguments and reports its error diagnostics via @command{syslog} channel @node sv_sync_www @subsection sv_sync_www -@cindex sv_sync_www +@pindex sv_sync_www The program @command{sv_sync_www} is the main engine for @acronym{CVS} synchronization. It takes the @asis{loginfo} line @@ -502,7 +506,7 @@ ALL /usr/local/bin/sv_sync_www_schedule $@{USER@} $@{CVSROOT@} %s @node sv_www_loginfo @subsection sv_www_loginfo -@cindex sv_www_loginfo +@pindex sv_www_loginfo The program @command{sv_www_loginfo} scans @file{loginfo} files of all the projects in the repository and replace the default ones (i.e. the ones whose contents is entirely commented out) with the @@ -616,7 +620,7 @@ considered to be additional @command{make} arguments and are passed to @node fixnamespace @section fixnamespace -@cindex @command{fixnamespace} +@pindex fixnamespace @cindex Fixing a project namespace. @command{Fixnamespace} utility replaces all global identifiers in a project by prefixing them with a given string. This is useful for @@ -661,7 +665,7 @@ variable in @file{fixnamespace.el} near line 215. @node fsf-move @section fsf-move -@cindex fsf-move +@pindex fsf-move At the long of my activity as free software programmer, Free Software Foundation has twice changed its locations. Each such move implied a change of postal mail address, and, consequently, a need for @@ -738,7 +742,7 @@ cases, though not always. Such files should be inspected after @node ckaliases @section ckaliases -@cindex ckaliases +@pindex ckaliases @command{Ckaliases} checks one or several @command{sendmail}-style alias files for consistency. Following checks are performed: @@ -897,37 +901,312 @@ make cf @node rc.inet1 @section rc.inet1 -@UNREVISED{} + +@pindex rc.inet1 + The startup script @command{rc.inet1} sets up network +interfaces. It was thought as a replacement for @asis{Slackware} +startup script with the same name, which I find extremely +inconvenient. + + To use the script, copy it to the location where your startup +scripts reside (@file{/etc/rc.d} on @asis{Slackware}) and make sure it +is executed at startup. The script itself does not use any +configuration files. Instead, it consists of configurable and +immutable parts. Both parts are clearly separated with appropriate +comments. + + Configurable part contains a set of variable definitions. The +variables are: + +@defvar if_list + This variable contains a whitespace separated list of interface +names to be configured. For example: + +@smallexample +if_list="lo eth0" +@end smallexample + +@noindent +Each interface name must itself be a valid @command{shell} variable +name. Names of almost all existing interfaces meet this condition. The +common exception are ethernet aliases, which on GNU/Linux contain +colon. To list such an interface name, replace the colon with +underscore. For example to configure interfaces @code{lo}, @code{eth0} +and @code{eth0:0}, one would write: + +@smallexample +if_list="lo eth0 eth0_0" +@end smallexample + + One more note: it is advisable to always keep @code{lo} in this +list. +@end defvar + +@defvar if_@var{iface} +@cindex @code{if_@var{iface}} + For each interface name @var{iface} in @code{if_list}, there must +be defined a variable named @code{if_@var{iface}}. The value of this +variable must be an @command{ifconfig} command line initializing given +interface. The name of the interface itself should be omitted from the +command line. Given the previous example, one might write: + +@smallexample +# Configure three interfaces +if_list="lo eth0 eth0_0" + +# Set up loopback interface +if_lo="127.0.0.1" + +# Set up eth0 +if_eth0="inet 192.168.10.1 netmask 255.255.255.224\ + broadcast 192.168.10.31" + +# Set up eth0:0 +if_eth0_0="inet 192.168.10.2 netmask 255.255.255.224\ + broadcast 192.168.10.31" +@end smallexample +@end defvar + +@defvar route_@var{iface} + For each interface name @var{iface} in @code{if_list}, there can +be defined a variable @code{route_@var{iface}}. If it is defined, it +contains a @command{route} command line for setting up routing for +this interface. Completing our previous example, for loopback +interface one might write: + +@smallexample +if_lo"127.0.0.1" +route_lo="add -net 127.0.0.0 netmask 255.0.0.0 lo" +@end smallexample +@end defvar + +@defvar default_gw + This variable defines IP address of the default gateway. +@end defvar + +@defvar static_routes +@cindex @code{route_@var{id}}, @command{rc.inet1} configuration variable + The variable @code{static_routes} declares @dfn{route +identifiers} for each static route to be set up. A route identifier is +an arbitrary word consisting of alphanumeric characters and +underscores. For each identifier @var{id} in @code{static_routes} +there must be declared variable @code{route_@var{id}}, whose value is +@command{route} command line for setting up this route. For example: + +@smallexample +static_routes="1" +route_1="add -net 192.168.10.0 netmask 255.255.255.224 \ + gw 192.168.10.10 metric 216 reject" +@end smallexample +@end defvar + +@FIXME{As other configuration scripts, this one should probably take a +command line argument @{@code{start}|@code{stop}|@code{status}@}. For +the time being it always behaves as if invoked with @code{start}} @node rc.autofs @section rc.autofs -@UNREVISED{} +@cindex @command{rc.autofs} + The script @command{rc.autofs} controls GNU/Linux automounter +facility. It accepts a single mandatory command line argument: + +@table @code +@item start + Start automounter. + +@item stop + Stop automounter. + +@item status + List configured and active automounter instances and mount +points. Here is a sample output (long lines being split for readability): + +@smallexample +Configured Mount Points: +------------------------ +/usr/sbin/automount --timeout=1 \ + /auto file /etc/automount/auto.misc + +Active Mount Points: +-------------------- +1040 /usr/sbin/automount --timeout=1 \ + /auto file /etc/automount/auto.misc +@end smallexample + +@item reload + Reload current configuration, restarting @command{automount} +daemon if necessary. + +@item restart + Unconditionally restart @command{automount} daemon. +@end table + + The script assumes following full file names: + +@table @file +@item /usr/sbin/automount +@vindex DAEMON, @command{rc.autofs} configuration variable + The name of the @command{automount} binary. Adjust @code{DAEMON} +variable if it is located elsewhere. + +@item /etc/automount +@vindex CFGDIR, @command{rc.autofs} configuration variable + Configuration directory. Adjust @code{CFGDIR} if you need another +name. + +@item /etc/automount/master +@vindex CFGFILE, @command{rc.autofs} configuration variable + The name of the master configuration file. Adjust @code{CFGFILE} +variable if you need another name. + +@item /var/lock/subsys/autofs +@vindex LOCKFILE, @command{rc.autofs} configuration variable + The name of the lock directory. Adjust @code{LOCKFILE} variable +if necessary. +@end table @node rc.ntpd @section rc.ntpd -@UNREVISED{} +@pindex rc.ntpd + @command{Rc.ntpd} controls the @dfn{network time protocol} +daemon. It takes a single mandatory command line argument: + +@table @code +@item start +@vindex TIMEOUT, @command{rc.ntpd} configuration variable +@vindex MAXRETRY, @command{rc.ntpd} configuration variable + Start @command{ntpd}. Before starting it the script +attempts to synchronize current date with the master servers by +running @command{ntpdate}. If @command{ntpdate} fails, the script +sleeps for a specified number of seconds and attempts to synchronize +again. Such attempts are tried several times while increasing +proportionally the initial delay between the attempts, so that the +delay after @var{n}th attempt is @var{n} times the initial one. Two +configuration variables are provided to control this behavior: +@code{MAXRETRY} sets the maximum number of attempts, @code{TIMEOUT} +sets the initial delay in seconds. + If all attempts fail, @command{rc.ntpd} sends a mail to root and +exits without trying to launch @command{ntpd}. + +@item stop + Stop @command{ntpd}. + +@item status + List running @command{ntpd} instances and display current +date/time difference between the local machine and its servers. +points. Here is a sample output (long lines being split for readability): + +@smallexample +Running processes: +------------------ +1124 /usr/sbin/ntpd + +Current date diff: +------------------ +server 10.10.10.1, stratum 2, offset -0.008749, delay 0.13557 +@end smallexample + +@item reload +@itemx restart + Restart @command{ntpd} daemon. +@end table + + The script assumes following full file names: + +@table @file +@item /usr/sbin/ntpd +@vindex DAEMON, @command{rc.ntpd} configuration variable + Name of the @command{ntpd} daemon. Kept in @code{DAEMON} +variable. + +@item /etc/ntp.conf +@vindex CONFIG, @command{rc.ntpd} configuration variable + Main @command{ntpd} configuration file. Kept in @code{CONFIG} +variable. + +@end table + + The script searches @command{ntpdate}, @command{mail} and +@command{ps} binaries using usual path mechanism. You may need to +update @code{PATH} settings at the beginning of the script. @node rc.local @section rc.local -@UNREVISED{} +@pindex @command{rc.local} +@vindex MODLIST, @command{rc.local} configuration variable + The script @command{rc.local} starts or stops @dfn{local +services}. List of the services is kept in the variable +@code{MODLIST}. For each service @var{s} from that list, +@command{rc.local} attempts to execute script named +@file{/etc/rc.d/rc.@var{s}}. The argument to @command{rc.local}, if +available, is passed to that string verbatim. If @command{rc.local} is +started without argument, the word @asis{start} is used instead. + + If a service should be started from a non-root user account, +prepend its name with @asis{@var{user}@@}. For example, to start +@command{/etc/rc.d/rc.mailman} from user @asis{postmaster}, set: + +@smallexample +MODLIST="postmaster@@mailman" +@end smallexample + Finally, if the service name begins with a slash, it is taken as +absolute file name, without adding @file{/etc/rc.d/rc.} to +it. Although it might be necessary in some cases, such usage is not +recommended. + @node rc.firewall @section rc.firewall @UNREVISED{} @node rc.ipacct @section rc.ipacct -@UNREVISED{} +@pindex rc.ipacct + This script controls the @command{ipacct} daemon +(@FIXME-pxref{ipacct}). It takes a single mandatory command line +argument indicating what action to take: + +@table @asis +@item start + Start the daemon. + +@item stop + Stop the daemon. + +@item status + Display @acronym{PID} of the current instance of +@command{ipacct}. + +@item restart + Unconditionally restart the daemon. + +@item reload +@itemx reconfigure + Tell @command{ipacct} to re-read its configuration file. +@end table + + The script searches for @command{ipacct} binary in the current +@code{PATH}. Two variables defined at the beginning of the script +control its behavior: + +@defvar IFACE + Interface where to install @command{ipacct}. Default is +@asis{eth0}. +@end defvar + +@defvar PIDFILE + Location of @command{ipacct} @acronym{pid} file. Default is +@file{/var/run/ipacct-@code{IFACE}.pid}. +@end defvar @node rc.ppp @section Set up a @acronym{PPP} connection. -@cindex @command{rc.ppp} +@pindex rc.ppp This script sets up a set of @acronym{PPP} connections at start up. It reads configuration from the file @file{/etc/ppp.conf}. The configurations is expressed as a set of shell variables. @defvar ppp_list -@cindex @code{ppp_list}, @command{rc.ppp} configuration variable This variable contains a whitespace separated list of @dfn{identifiers} for @acronym{PPP} connections. Each identifier is an arbitrary word, such that it is a valid shell variable. For each identifier @var{id}, @@ -953,7 +1232,38 @@ ppp1_options="modem lock 192.168.0.1:192.168.0.3 /dev/ttyS1 57600" @node rc.tagr @section rc.tagr -@UNREVISED{} +@pindex rc.tagr + @command{Rc.tagr} controls @command{tagr} daemon +(@FIXME-pxref{tagr}). It takes a single mandatory command line +argument indicating what action to take: + +@table @asis +@item start + Start the daemon. + +@item stop + Stop the daemon. + +@item status + Display @acronym{PID} of the current instance of +@command{tagr}. + +@item restart + Unconditionally restart the daemon. + +@item reload +@itemx reconfigure + Tell @command{tagr} to re-read its configuration file. +@end table + +@vindex PIDFILE +@vindex PROGRAM +@vindex CMD + The script searches for @command{tagr} binary in +@file{/usr/local/sbin/tagr} and for its @acronym{PID} file in +@file{/var/run/tagr.pid}. This can be changed by editing variables +@code{PROGRAM}, @code{PIDFILE} and @code{CMD} at the beginning of the +script. @node User Tools, Reporting Bugs, Startup Scripts, Top @chapter User Tools |