Imported Upstream version 2.6.0
This commit is contained in:
parent
26fb71b504
commit
459aaf9392
510 changed files with 40508 additions and 18859 deletions
149
docs/man/dummy-ups.txt
Normal file
149
docs/man/dummy-ups.txt
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
DUMMY-UPS(8)
|
||||
============
|
||||
|
||||
NAME
|
||||
----
|
||||
dummy-ups - Driver for multi-purpose UPS emulation
|
||||
|
||||
NOTE
|
||||
----
|
||||
This man page only documents the specific features of the
|
||||
dummy-ups driver. For information about the core driver, see
|
||||
linkman:nutupsdrv[8].
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
This program is a multi-purpose UPS emulation tool.
|
||||
Its behavior depends on the running mode:
|
||||
|
||||
Dummy Mode
|
||||
~~~~~~~~~~
|
||||
|
||||
*dummy-ups* looks like a standard device driver to linkman:upsd[8] and
|
||||
allows to change any value for testing purposes. It is both interactive,
|
||||
controllable through the linkman:upsrw[1] and linkman:upscmd[1] commands (or
|
||||
equivalent graphical tool), and batchable through script files. It can be
|
||||
configured, launched and used as any other real driver. This mode is mostly
|
||||
useful for development and testing purposes.
|
||||
|
||||
Repeater Mode
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
*dummy-ups* acts as a NUT client, simply forwarding data. This can be useful
|
||||
for supervision purposes. This can also allow some load sharing between several
|
||||
UPS instances, using a point-to-point communication with the UPS.
|
||||
|
||||
IMPLEMENTATION
|
||||
--------------
|
||||
|
||||
The port specification depends on the running mode, and allows the driver to
|
||||
select the right mode.
|
||||
|
||||
Dummy Mode
|
||||
~~~~~~~~~~
|
||||
|
||||
Port is a definition file name for *dummy-ups*. This can either
|
||||
be an absolute or a relative path name. In the latter case the NUT
|
||||
sysconfig directory (ie /etc/nut, /usr/local/ups/etc, ...) is prepended.
|
||||
|
||||
For instance:
|
||||
|
||||
[dummy]
|
||||
driver = dummy-ups
|
||||
port = evolution500.dev
|
||||
desc = "dummy-ups in dummy mode"
|
||||
|
||||
This file is generally named "something.dev". It contains a list of all
|
||||
valid data and associated values, and has the same format as an linkman:upsc[8]
|
||||
dump (<varname>: <value>). So you can easilly create definition
|
||||
files from an existing UPS using "upsc > file.dev".
|
||||
It can also be empty, in which case only a basic set of data is available:
|
||||
device.*, driver.*, ups.mfr, ups.model, ups.status
|
||||
|
||||
Samples definition files are available in the "data" directory of the nut source
|
||||
tree, and generally in the sysconfig directory of your system distribution.
|
||||
|
||||
Since *dummy-ups* will loop on reading this file, you can dynamically modify
|
||||
it to interact with the driver. This will avoid message spam into your
|
||||
system log files, if you are using NUT default configuration.
|
||||
|
||||
You can also use the "TIMER <seconds>" instruction to create scheduled events
|
||||
sequences. For example, the following sequence will loop on switching ups.status
|
||||
between "OL", "OB" and "OB LB" every minute:
|
||||
|
||||
ups.status: OL
|
||||
TIMER 60
|
||||
ups.status: OB
|
||||
TIMER 60
|
||||
ups.status: LB
|
||||
TIMER 60
|
||||
|
||||
It is wise to end the script with a TIMER. Otherwise dummy-ups will directly
|
||||
go back to the beginning of the file.
|
||||
|
||||
Repeater Mode
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
Port is the name of a remote UPS, using the NUT form, ie:
|
||||
|
||||
<upsname>[@<hostname>[:<port>]]
|
||||
|
||||
For instance:
|
||||
|
||||
[repeater]
|
||||
driver = dummy-ups
|
||||
port = ups@hostname
|
||||
desc = "dummy-ups in repeater mode"
|
||||
|
||||
INTERACTION
|
||||
-----------
|
||||
|
||||
Once the driver is loaded in dummy mode, you can change any variables, except
|
||||
those of the driver.* and server.* collections.
|
||||
You can do this by either editing the definition file, or use the
|
||||
linkman:upsrw[1] and linkman:upscmd[1] commands.
|
||||
|
||||
Note that in simulation mode, new variables can be added on the fly, by
|
||||
adding these to the definition file. Conversely, if you need to remove
|
||||
variable (such as transient ones, like ups.alarm), simply update these
|
||||
by setting an empty value. As a result, they will get removed from the data.
|
||||
|
||||
In repeater mode, the driver acts according to the capabilities of the UPS, and
|
||||
so support the same instant commands and settable values.
|
||||
|
||||
BACKGROUND
|
||||
----------
|
||||
|
||||
This driver was written in one evening to replace the previous dummycons
|
||||
testing driver. It was too limited and required to work from a terminal to
|
||||
interact.
|
||||
|
||||
*dummy-ups* is useful for NUT client development, and other testing purpose.
|
||||
|
||||
It also helps the NUT Quality Assurance effort, by automating some tests on the
|
||||
NUT framework.
|
||||
|
||||
It now offers a repeater mode. This will help in building the Meta UPS approach,
|
||||
which allows to build a virtual device, composed of several other devices
|
||||
(either UPS, PDUs).
|
||||
|
||||
BUGS
|
||||
----
|
||||
Instant commands are not yet supported in Dummy Mode, and data need name/value
|
||||
checking enforcement, as well as boundaries or enumeration definition.
|
||||
|
||||
AUTHOR
|
||||
------
|
||||
Arnaud Quette
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
|
||||
linkman:upscmd[1],
|
||||
linkman:upsrw[1],
|
||||
linkman:ups.conf[5],
|
||||
linkman:nutupsdrv[8]
|
||||
|
||||
Internet Resources:
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
|
||||
Loading…
Add table
Add a link
Reference in a new issue