gkrellmd(1)
π gkrellmd β The GNU Krell Monitors Server π
bestie, this is the gkrellmd page from the User's Manual (section 1, if you're keeping score). It's the server half of the gkrellm situation, and it's genuinely iconic. Let's get into it π«Ά
πΈ SYNOPSIS πΈ
gkrellmd [ --help ] [ --verbose ] [ -u | --update-hz f ] [ -m | --max-
clients N ] [ -A | --address server_address ] [ -P | --port server_port
] [ -a | --allow-host hostname ] [ -d | --detach ] [ -p | --plugin name
] [ -pe | --plugin-enable name ] [ --plist ] [ --plog ] | --logfile path
] | --syslog ] [ -U | --user username ] [ -G | --group groupname ] [
--pidfile path ] [ --inet-interval seconds ] [ --io-timeout seconds ] [
--reconnect-timeout seconds ] [ --mailbox mbox_path ] [ --net-timer
net_interface ] [ --mbmon-port number ]
β¨ DESCRIPTION β¨
So. gkrellmd sits there and listens for connections from gkrellm clients. The whole vibe is: when a gkrellm client connects to a gkrellmd server, all the builtin monitors collect their data from the server. periodt. π
But here's the plot twist π β the gkrellm process itself is running on the local machine, so plugins enabled in gkrellm will collect data from the local context, unless that plugin is client/server capable and has a gkrellmd plugin counterpart which is installed and enabled on the server. And enabling a gkrellmd plugin that's installed on a server? That requires adding a plugin-enable line to a gkrellmd.conf file. iykyk.
Also: any command launching from a gkrellm client will run commands on the local machine. If you actually want to execute commands on the server, the client side commands can use ssh. no cap.
And there is no support for file system mounting on the machine where the gkrellmd server is running. just so we're clear bestie π
π OPTIONS π
-h --helpβ Displays usage information and exits. bye π-v --versionβ Printsgkrellmdversion and exits.-V --verboseβ Prints connection progress. we love a status update β¨-u,--update-hzf β Sets the data update frequency in samples per second for the server. This is independent of and should be less than thegkrellmclient update rate. The rate can be from1to10and should be lower to minimize network traffic. A value of not much more than1/2the client update rate is best where it is not important to minimize network traffic.-m,--max-clientsN β Sets the maximum number of simultaneous clients allowed to connect to the server.-A,--addressserver_address β Use server_address for the network connection.-P,--portserver_port β Use server_port for the network connection.-a,--allow-hosthostname β Specify hosts which are allowed to connect. Multipleallow-hostarguments may be given. If no hosts are specified on the command line or in agkrellmd.conffile, then all hosts are allowed to connect. The hostname argument may be a text name or an IPv4 or IPv6 dotted notation. For IPv4, the simple subnet patternx.y.z.*may be used. Also, if hostname is the keywordALLthen all hosts are allowed. This option is additive and specified hosts will be added to the hostnames listed ingkrellmd.conffiles unless the--clear-hostsoption is given first.-p,--pluginname β For plugin development convenience, load and enable the command line specified plugin to avoid repeated install steps in the development cycle. See theREADMEfrom thegkrellm demo5for more information ongkrellmdplugin development. Requires at leastgkrellmdversion2.2.0.-pe,--plugin-enablename β Specify an installed plugin to enable (this is probably more convenient to specify in agkrellmd.conffile). Requires at leastgkrellmdversion2.2.0.-plistβ Output a list of plugins which are installed and available to enable and exit. Requires at leastgkrellmdversion2.2.0.-plogβ Output a log of the plugin install process. When requesting a log, the--detachoption will have no effect. Requires at leastgkrellmdversion2.2.0.-l,--logfilepath β Enable sending error and debugging messages to a log file.--syslogβ Enable sending logging messages to the syslog file.-c,--clear-hostsβ Clears the current list of allowed hosts. Use this before any--allow-hostarguments if you want command line allowed hosts to override and not be additive to those specified ingkrellmd.conffiles.-d,--detachβ Runsgkrellmdin the background and detaches from the terminal.-U,--userusername β Changes user to username after startup. Useful if you want to rungkrellmdasroot, but set it to run with another privileges; typically as thenobodyuser.-G,--groupgroupname β Changes group to groupname after startup.--pidfilepath β Create a PID file for the runninggkrellmd. Typically, path would be/var/run/gkrellmd.pid. Default is no PID file.--inet-intervalseconds β The Internet monitor defaults to reading TCP connections once per second. However, for Linux SMP kernels where reading/proc/net/tcpcauses high cpu usage, theinet-intervalmay be set to1-20seconds to slow down/proc/net/tcpreads. Or set it to0to totally disable the Internet monitor. Requires at leastgkrellmdversion2.1.8.--io-timeoutseconds β Configuregkrellmclients to disconnect from agkrellmdserver if there is anio-timeoutinterval where the client receives no input from the server. Use this for conditions wheregkrellmdmay be ungracefully terminated such that socket connections are not closed. Minimum is2(less than2for no I/O disconnecting and is the default). Requires at least2.1.8versions of bothgkrellmdandgkrellm.--reconnect-timeoutseconds β Configuregkrellmclients to attempt automatic reconnects to agkrellmdserver every reconnect-timeout seconds after a disconnected state is detected. Disconnected states are created by normalgkrellmdshutdowns or by an expiringio-timeout. Minimum is2(less than2for no automatic reconnecting and is the default). Requires at least2.1.8versions of bothgkrellmdandgkrellm.--mailboxmbox_path β Check the server side mailbox mbox_path and send mail counts to connectedgkrellmclients. Mailbox types may bembox,Maildir, andMHmail. Requires at least2.1.11versions of bothgkrellmdandgkrellm.--net-timernet_interface β Configuregkrellmdto send the connect time for a network interface to all clients to be displayed in the clientgkrellmtimer button monitor display. If this is done, the clientgkrellmtimer 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 usessh. So set this if your server box has say appp0orippp0connection and you want to monitor its connect time. Requires at least2.2.7versions of bothgkrellmdandgkrellm.--mbmon-portport_number β If thembmondaemon is running whengkrellmdis started,gkrellmdwill connect tombmonusing the given port_number and sendmbmonsensor data to connectedgkrellmclients. Thembmondaemon should have been started using the same port number like so:mbmon -r -P port_number
π¦ EXAMPLE π¦
okay so, 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. Then 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 gkrelltopd
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 π
This manual page was written by Bill Wilson. https://gkrellm.srcbox.net/
and that's the whole thing bestie, you ate that πβ¨ this beauty is dated Jan 07, 2025, from the gkrellmd(1) page in the User's Manual β go forth and monitor some servers, main character ππ¦
π¦ where this page comes from
- nixos 26.05: gkrellm 2.5.1
- ubuntu resolute: gkrellmd 2.5.1-1 Β· GPL-3.0-only
- ubuntu stonking: gkrellmd 2.5.1-2 Β· GPL-3.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms