NAME
gkrellmd - The GNU Krell Monitors Server
SYNOPSIS
gkrellmd [ --help ] [
--verbose ] [ -u | --update-hz N ] [ -m
| --max-clients N ] [ -P | --port N ] [
-a | --allow-host hostname ] [ -d |
--detach ] [ -p | --plugin name ] [ -pe
| --plugin-enable name ] [ --plist ] [ --plog
] [ -U | --user username ] [ -G |
--group groupname ] [ --inet-interval seconds ] [
--io-timeout seconds ] [ --reconnect-timeout seconds
] [ --mailbox mbox_path ] [ --net-timer net_interface
]
DESCRIPTION
gkrellmd Listens for connections from gkrellm
clients. When a gkrellm client connects to a gkrellmd
server all builtin monitors collect their data from the server.
However, the gkrellm process is running on the local
machine, so plugins enabled in gkrellm will collect data
from the local context unless the plugin is client/server capable
and has a gkrellmd plugin counterpart which is installed and
enabled on the server. Enabling a gkrellmd plugin installed
on a server requires adding a plugin-enable line to a
gkrellmd.conf file.
Any command launching from a gkrellm client will run commands on
the local machine. If you want to execute commands on the server,
the client side commands will have to use sudo.
There is no support for file system mounting on the machine
where the gkrellmd server is running.
OPTIONS
- -h --help
- Displays usage information and exits.
- -v --version
- Prints gkrellmd version and exits.
- -V --verbose
- Prints connection progress.
- -u, --update-hz f
- Sets the data update frequency in samples per second for the
server. This is independent of and should be less than the
gkrellm client update rate. The rate can be from 1 to 10 and
should be lower to minimize network traffic. A value of not much
more than 1/2 the client update rate is best where it is not
important to minimize network traffic.
- -m, --max-clients N
- Sets the maximum number of simultaneous clients allowed to
connect to the server.
- -P, --port server_port
- Use server_port for the network connection.
- -a, --allow-host hostname
- Specify hosts which are allowed to connect. Multiple
allow-host arguments may be given. If no hosts are specified
on the command line or in a gkrellmd.conf file, then all hosts are
allowed to connect. The hostname argument may be a text name
or a IPv4 or IPv6 dotted notation. For IPv4, the simple subnet
pattern x.y.z.* may be used. Also, if hostname is the
keyword ALL then all hosts are allowed. This option is
additive and specified hosts will be added to the hostnames listed
in gkrellmd.conf files unless the --clear-hosts option is
given first.
- -p, --plugin name
- For plugin development convenience, load and enable the command
line specified plugin to avoid repeated install steps in the
development cycle. See the README from the gkrellm demo5 for
more information on gkrellmd plugin development. Requires at least
gkrellmd version 2.2.0.
- -pe, --plugin-enable name
- Specify an installed plugin to enable (this is probably more
convenient to specify in a gkrellmd.conf file). Requires at least
gkrellmd version 2.2.0.
- -plist
- Output a list of plugins which are installed and available to
enable and exit. Requires at least gkrellmd version 2.2.0.
- -plog
- Output a log of the plugin install process. When requesting a
log, the --detach option will have no effect. Requires at
least gkrellmd version 2.2.0.
- -c, --clear-hosts
- Clears the current list of allowed hosts. Use this before any
--allow-host arguments if you want command line allowed
hosts to override and not be additive to those specified in
gkrellmd.conf files.
- -d, --detach
- Runs gkrellmd in the background and detaches from the terminal.
- -U, --user username
- Changes user to username after startup. Useful if you
want to run gkrellmd as root, but set it to run with another
privileges; typically as the nobody user.
- -G, --group groupname
- Changes group to groupname after startup.
- --inet-interval seconds
- The Internet monitor defaults to reading TCP connections once
per second. However, for Linux SMP kernels where reading
/proc/net/tcp causes high cpu usage, the inet-interval may
be set to 1-20 seconds to slow down /proc/net/tcp reads. Or set it
to 0 to totally disable the Internet monitor. Requires at least
gkrellmd version 2.1.8.
- --io-timeout seconds
- Configure gkrellm clients to disconnect from a gkrellmd server
if there is an io-timeout interval where the client receives
no input from the server. Use this for conditions where gkrellmd
may be ungracefully terminated such that socket connections are not
closed. Minimum is 2 (less than 2 for no I/O disconnecting and is
the default). Requires at least 2.1.8 versions of both gkrellmd and
gkrellm.
- --reconnect-timeout seconds
- Configure gkrellm clients to attempt automatic reconnects to a
gkrellmd server every reconnect-timeout seconds after a
disconnected state is detected. Disconnected states are created by
normal gkrellmd shutdowns or by an expiring io-timeout.
Minimum is 2 (less than 2 for no automatic reconnecting and is the
default). Requires at least 2.1.8 versions of both gkrellmd and
gkrellm.
- --mailbox mbox_path
- Check the server side mailbox mbox_path and send mail
counts to connected gkrellm clients. Mailbox types may be mbox,
Maildir, and MH mail. Requires at least 2.1.11 versions of both
gkrellmd and gkrellm.
- --net-timer net_interface
- Configure gkrellmd to send the connect time for a network
interface to all clients to be displayed in the client gkrellm
timer button monitor display. If this is done, the client gkrellm
timer button can still execute commands on the client, but the
button will not affect the timer display. If you want the client
timer button to execute commands on the server, your timer button
commands will have to use sudo. So set this if your server box has
say a ppp0 or ippp0 connection and you want to monitor its connect
time. Requires at least 2.2.7 versions of both gkrellmd and
gkrellm.
EXAMPLE
On the server machine where gkrellmd is installed, copy the
sample gkrellmd.conf file from the server
subdirectory of the gkrellm source tarball to one of the
gkrellmd.conf locations listed in the FILES section
and edit it to set your preferences or to enable plugins. Probably
don't set the detached option until you are happy with the
configuration. Run: gkrellmd
On a client machine, run: gkrellm -s server-machine-name
Configure the client gkrellm in its graphical configuration
window as you wish, and that's all there is to it. Of course, if
you don't use the default gkrellmd port number you
will have to supply an appropriate port argument to the
client gkrellm.
Available plugins will be installed in the
plugins-gkrellmd directory locations listed in the
FILES section. You may test enable any of these plugins with
the -pe option, but for permanent enabling you should add a
plugin-enable line to any gkrellmd.conf file listed
in the FILES section. Run gkrellmd -plist to see a
list of all installed plugins and run gkrellmd -plog to see
a log of the plugin install process.
FILES
- /etc/gkrellmd.conf
- System server config which is read first. The config file may
contain lines similar to the command line args. For example:
-
- allow-host localhost
- allow-host 127.0.0.1
- allow-host 192.168.0.*
- port 19150
- max-clients 2
- update-hz 2
- detach
- io-timeout 5
- reconnect-timeout 5
- plugin-enable gkrelltop
With the exception of --allow-host, command line args
will override options in gkrellmd.conf files.
- /usr/local/etc/gkrellmd.conf
- Local server config file which is read second.
- ~/.gkrellmd.conf
- User server config file which is read last.
- ~/.gkrellm2/plugins-gkrellmd
- User server plugin directory.
- /usr/lib/gkrellm2/plugins-gkrellmd
- System wide server plugin directory.
- /usr/local/lib/gkrellm2/plugins-gkrellmd
- Local server plugin directory.
AUTHOR
Bill Wilson <http://www.gkrellm.net/