pduclient(1) program to automate power control of a device


pduclient --daemon daemonhostname --hostname pduhostname --port pduportnumber --command pducommand
pduclient [{-h | --help}]


This manual page documents briefly the pduclient command.

pduclient is the frontend for lavapdu to issue commands to a Power Distribution Unit (PDU). Commands include on, off and reboot.

A particular device will be connected to a particular port on a PDU. The lavapdu-runner is able to control multiple PDUs, specified by hostname. pduclient connects to the lavapdu-listen daemon which stores the command until the lavapdu-runner daemon is able to connect to the specified PDU and execute the command on the specified port.

Typically, pduclient will be used from the device configuration file of a LAVA instance, using lava-dispatcher.


pduclient needs the hostname of the calling machine to match a DNS reverse lookup. This means that not only does hostname -f need to resolve to an IP address but that IP address must resolve to that hostname:

        $ dig myhostname.domain

        $ dig -x

If the second call does not work, you will need to fix the local DNS resolution before pduclient will operate. Error messages will look something like:

            Unknown error sending command! control replied: nack


--daemon daemonhostname

Determines the hostname of the hostname which is running lavapdu-listen to which the client can connect and add the command to the queue.

--hostname pduhostname

The PDU which will run the command.

--port pduportnumber

The port on the specified PDU to which the device is connected.

--command pducommand

The command to run on the specified port of the specified PDU.

-h, --help

Show a summary of the required commands.


Matthew Hart <[email protected]>

Wrote this manpage for the Debian system.


Copyright © 2014 Matthew Hart

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.