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 can use ssh.

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.

-A, --address server_address

Use
server_address
for the network connection.

-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.

--pidfile path

Create a PID file for the running gkrellmd. Typically,
path
would be
/var/run/gkrellmd.pid.
Default is no PID file.

--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 can use ssh.
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.

--mbmon-port port_number

If the mbmon daemon is running when gkrellmd is started, gkrellmd will
connect to mbmon using the given port_number and send mbmon sensor data to
connected gkrellm clients. The mbmon daemon should have been started
using the same port number like so:
mbmon -r -P port_number

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
gkrellmdport
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 gkrelltopd

With the exception of
--allow-host,
command line args will override options in gkrellmd.conf files.