Section: Administrator's Tools (8)Updated: 27 Mar 2005Local indexUp
NAME
and - auto nice daemon
SYNOPSIS
and
[-htvsxf]
[-iinterval]
[-c/path/to/and.conf]
[-d/path/to/and.priorities]
VERSION
This manual page documents
and
version 1.2.2.
DESCRIPTION
The auto nice daemon activates itself in certain intervals and renices and
even kills jobs according to their priority and CPU usage.
Renice levels and kill signals can be defined in terms of users, groups,
and commands. Wildcards can be specified for any of these. In addition,
commands can be specified using POSIX regular expressions. To allow for
network-wide configuration and priority files, a mechanism for hostname-based
evaluation is provided, again supporting regular expressions for specifying
host names.
Jobs owned by root are left alone. Jobs are never increased in their priority.
Here are some real-world examples:
A certain user is notorious for wasting CPU with next-to-irrelevant jobs.
One line is sufficient to renice all of his jobs to about 19.
This is a typical situation for a LART (Luser's Attitude Readjustment Tool)
like
and.
A CPU server is dedicated to a certain group, but others may also use
it when it's idle. Just define default nice levels of e.g. 18 and a lower
nice level for the privileged group, say nice level 12.
A certain web browser who shall remain unnamed tends to go berserk once
in a while. You can configure
and
to kill -9 it after e.g. 20 CPU minutes.
COMMAND-LINE OPTIONS
-c /path/to/and.conf
Specifies the configuration file. If this flag is omitted,
/etc/and.conf
is used instead.
-d /path/to/and.priorities
Specifies the priority database file. If this flag is omitted,
/etc/and.priorities
is used instead.
-h
Produces a short help text.
-i interval
Sets the interval between nice level checks. This flag overrides the
interval specified in the configuration file, if any. The default interval of
60
seconds is used if neither -i nor an interval directive in the configuration
file is given.
-s
Log to stdout. Without this switch, logging goes to syslog (normal
operations) or
./debug.and
(test mode). Useful for debugging config files.
-t
Run in test mode only, i.e. don't really renice or kill anything.
In this mode, logging goes into
./debug.and
instead of syslog.
-v
Increase verbosity. For maximum verbosity, this flag can be specified
multiple times. Be warned that this will blow up your log files, so
you should use it in test mode only.
-x
Run in full operational mode, i.e. really renice or kill things.
This is the default.
-f
Foreground mode. Don't daemonize.
SIGNALS
On
kill -HUP
the auto nice daemon will reload its configuration file and priority
database.
FILES
/etc/and.conf
General configuration file. Stores default nice level, default interval,
the "time zones" and the database lookup affinity.
/etc/and.priorities
The priority database (in plain text). Contains the (user, group, command,
nicelevels) tuples.
Both files have their own manual pages.
./debug.and
Contains logging and status information for debugging purposes.
Used in test mode only.