initial commit of file from CVS for e-smith-nutUPS on Wed 12 Jul 09:01:20 BST 2023
This commit is contained in:
		
							
								
								
									
										29
									
								
								additional/config/hosts.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								additional/config/hosts.conf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,29 @@ | ||||
| # Network UPS Tools: example hosts.conf | ||||
| # | ||||
| # This file is used to control the CGI programs.  If you have not | ||||
| # installed them, you may safely ignore or delete this file. | ||||
| # | ||||
| # ----------------------------------------------------------------------- | ||||
| # | ||||
| # upsstats will use the list of MONITOR entries when displaying the | ||||
| # default template (upsstats.html).  The "FOREACHUPS" directive in the | ||||
| # template will use this file to find systems running upsd. | ||||
| # | ||||
| # upsstats and upsimage also use this file to determine if a host may be | ||||
| # monitored.  This keeps evil people from using your system to annoy | ||||
| # others with unintended queries. | ||||
| # | ||||
| # upsset presents a list of systems that may be viewed and controlled | ||||
| # using this file. | ||||
| # | ||||
| # ----------------------------------------------------------------------- | ||||
| # | ||||
| # Usage: list systems running upsd that you want to monitor | ||||
| # | ||||
| # MONITOR <system> "<host description>" | ||||
| # | ||||
| # Examples:  | ||||
| # | ||||
| # MONITOR myups@localhost "Local UPS" | ||||
| # MONITOR su2200@10.64.1.1 "Finance department" | ||||
| # MONITOR matrix@shs-server.example.edu "Sierra High School data room #1" | ||||
							
								
								
									
										93
									
								
								additional/config/ups.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								additional/config/ups.conf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,93 @@ | ||||
| # Network UPS Tools: example ups.conf | ||||
| # | ||||
| # This is where you configure all the UPSes that this system will be | ||||
| # monitoring directly.  These are usually attached to serial ports, but | ||||
| # USB devices and SNMP devices are also supported. | ||||
| # | ||||
| # This file is used by upsdrvctl to start and stop your driver(s), and | ||||
| # is also used by upsd to determine which drivers to monitor.  The  | ||||
| # drivers themselves also read this file for configuration directives. | ||||
| # | ||||
| # The general form is: | ||||
| #  | ||||
| # [upsname] | ||||
| #       driver = <drivername> | ||||
| #         port = <portname> | ||||
| #	< any other directives here > | ||||
| # | ||||
| # The section header ([upsname]) can be just about anything as long as | ||||
| # it is a single word inside brackets.  upsd uses this to uniquely  | ||||
| # identify a UPS on this system. | ||||
| # | ||||
| # If you have a UPS called snoopy, your section header would be "[snoopy]". | ||||
| # On a system called "doghouse", the line in your upsmon.conf to monitor | ||||
| # it would look something like this: | ||||
| # | ||||
| # 	MONITOR snoopy@doghouse 1 upsmonuser mypassword master | ||||
| # | ||||
| # It might look like this if monitoring in slave mode: | ||||
| # | ||||
| # 	MONITOR snoopy@doghouse 1 upsmonuser mypassword slave | ||||
| # | ||||
| # Configuration directives | ||||
| # ------------------------ | ||||
| #  | ||||
| # These directives are common to all drivers that support ups.conf: | ||||
| # | ||||
| #  driver: REQUIRED.  Specify the program to run to talk to this UPS.   | ||||
| #          apcsmart, fentonups, bestups, and sec are some examples. | ||||
| # | ||||
| #    port: REQUIRED.  The serial port where your UPS is connected.   | ||||
| #          /dev/ttyS0 is usually the first port on Linux boxes, for example. | ||||
| # | ||||
| # sdorder: optional.  When you have multiple UPSes on your system, you | ||||
| #          usually need to turn them off in a certain order.  upsdrvctl | ||||
| #          shuts down all the 0s, then the 1s, 2s, and so on.  To exclude | ||||
| #          a UPS from the shutdown sequence, set this to -1. | ||||
| # | ||||
| #          The default value for this parameter is 0. | ||||
| # | ||||
| #  nolock: optional, and not recommended for use in this file. | ||||
| # | ||||
| #          If you put nolock in here, the driver will not lock the | ||||
| #          serial port every time it starts.  This may allow other  | ||||
| #          processes to seize the port if you start more than one by  | ||||
| #          mistake. | ||||
| # | ||||
| #          This is only intended to be used on systems where locking | ||||
| #          absolutely must be disabled for the software to work. | ||||
| # | ||||
| # maxstartdelay: optional.  This can be set as a global variable | ||||
| #                above your first UPS definition and it can also be | ||||
| #                set in a UPS section.  This value controls how long | ||||
| #                upsdrvctl will wait for the driver to finish starting. | ||||
| #                This keeps your system from getting stuck due to a | ||||
| #                broken driver or UPS. | ||||
| # | ||||
| #                The default is 45 seconds. | ||||
| # | ||||
| # | ||||
| # Anything else is passed through to the hardware-specific part of | ||||
| # the driver. | ||||
| #  | ||||
| # Examples | ||||
| # -------- | ||||
| # | ||||
| # A simple example for a UPS called "powerpal" that uses the fentonups | ||||
| # driver on /dev/ttyS0 is: | ||||
| # | ||||
| # [powerpal] | ||||
| #	driver = fentonups | ||||
| #	port = /dev/ttyS0 | ||||
| # | ||||
| # If your UPS driver requires additional settings, you can specify them | ||||
| # here.  For example, if it supports a setting of "1234" for the | ||||
| # variable "cable", it would look like this: | ||||
| #  | ||||
| # [myups] | ||||
| # 	driver = mydriver | ||||
| #	port = /dev/ttyS1 | ||||
| #	cable = 1234 | ||||
| # | ||||
| # To find out if your driver supports any extra settings, start it with | ||||
| # with the -h option and/or read the driver's documentation. | ||||
							
								
								
									
										43
									
								
								additional/config/upsd.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								additional/config/upsd.conf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,43 @@ | ||||
| # Network UPS Tools: example upsd configuration file | ||||
| # | ||||
| # This file contains passwords, so you should keep it secure. | ||||
| #  | ||||
| # At the very least it should be owned by root, with mode 0600. | ||||
| # | ||||
| # If you want upsd to be able to reload the configuration files, this | ||||
| # file must be readable by whatever user upsd becomes.  See the FAQ. | ||||
|  | ||||
| # ======================================================================= | ||||
| # Access Control Lists (ACLs) | ||||
| # | ||||
| # ACL <name> <ipblock> | ||||
| # ACL myhost 10.0.0.1/32 | ||||
| # | ||||
| # ACCESS <action> <level> <aclname> [<password>] | ||||
| # ACCESS grant login myhost mypass | ||||
| #  | ||||
| # Use these to define blocks of addresses.  See the upsd.conf(5) man page | ||||
| # for more information. | ||||
| # | ||||
| # This default configuration allows localhost to monitor things and denies | ||||
| # access to the rest of the world.  To allow more, see the docs and  | ||||
| # change these lines. | ||||
|  | ||||
| ACL all 0.0.0.0/0 | ||||
| ACL localhost 127.0.0.1/32 | ||||
|  | ||||
| ACCESS grant monitor localhost | ||||
| ACCESS deny all all | ||||
|  | ||||
| # ======================================================================= | ||||
| # MAXAGE <seconds> | ||||
| # MAXAGE 15 | ||||
| # | ||||
| # This defaults to 15 seconds.  After a UPS driver has stopped updating | ||||
| # the data for this many seconds, upsd marks it stale and stops making | ||||
| # that information available to clients.  After all, the only thing worse | ||||
| # than no data is bad data. | ||||
| # | ||||
| # You should only use this if your driver has difficulties keeping | ||||
| # the data fresh within the normal 15 second interval.  Watch the syslog | ||||
| # for notifications from upsd about staleness. | ||||
							
								
								
									
										74
									
								
								additional/config/upsd.users
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								additional/config/upsd.users
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,74 @@ | ||||
| # Network UPS Tools: Example upsd.users | ||||
| # | ||||
| # This file sets the permissions for upsd - the UPS network daemon. | ||||
| # Users are defined here, are given passwords, and their privileges are | ||||
| # controlled here too.  Since this file will contain passwords, keep it | ||||
| # secure, with only enough permissions for upsd to read it. | ||||
| # | ||||
| # At the very least it should be owned by root, with mode 0600. | ||||
| # | ||||
| # If you want upsd to be able to reload the configuration files, this | ||||
| # file must be readable by whatever user upsd becomes.  See the FAQ. | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
|  | ||||
| # Each user gets a section.  To start a section, put the username in | ||||
| # brackets on a line by itself.  To set something for that user, specify | ||||
| # it under that section heading.  The username is case-sensitive, so | ||||
| # admin and AdMiN are two different users. | ||||
| # | ||||
| # Possible settings: | ||||
| # | ||||
| # password: The user's password.  This is case-sensitive. | ||||
| # | ||||
| # -------------------------------------------------------------------------- | ||||
| # | ||||
| # allowfrom: ACL names that this user may connect from.  ACLs are | ||||
| #            defined in upsd.conf. | ||||
| # | ||||
| # -------------------------------------------------------------------------- | ||||
| # | ||||
| # actions: Let the user do certain things with upsd.   | ||||
| #  | ||||
| # Valid actions are: | ||||
| # | ||||
| # SET	- change the value of certain variables in the UPS | ||||
| # FSD   - set the "forced shutdown" flag in the UPS | ||||
| #  | ||||
| # -------------------------------------------------------------------------- | ||||
| # | ||||
| # instcmds: Let the user initiate specific instant commands.  Use "ALL" | ||||
| # to grant all commands automatically.  Here are a few instant | ||||
| # commands.  For the full list, see include/shared-tables.h.   | ||||
| # | ||||
| # FPTEST	- Front panel test | ||||
| # BTEST0	- Stop battery test | ||||
| # BTEST1	- Start battery test | ||||
| # CAL0		- Stop calibration | ||||
| # CAL1		- Start calibration | ||||
| # | ||||
| # -------------------------------------------------------------------------- | ||||
| # | ||||
| # Example: | ||||
| # | ||||
| #	[admin] | ||||
| #		password = mypass | ||||
| #		allowfrom = admworkstation admhome | ||||
| #		actions = SET | ||||
| #		instcmds = ALL | ||||
| # | ||||
|  | ||||
| # | ||||
| # --- Configuring for upsmon | ||||
| # | ||||
| # To add a user for your upsmon, use this example: | ||||
| # | ||||
| #	[monuser] | ||||
| #		password  = pass | ||||
| #		allowfrom = bigserver | ||||
| # | ||||
| #		upsmon master			(or upsmon slave) | ||||
| # | ||||
| # The matching MONITOR line in your upsmon.conf would look like this: | ||||
| # | ||||
| # MONITOR myups@myhost 1 monuser pass slave | ||||
							
								
								
									
										287
									
								
								additional/config/upsmon.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										287
									
								
								additional/config/upsmon.conf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,287 @@ | ||||
| # Network UPS Tools: example upsmon configuration | ||||
| # | ||||
| # This file contains passwords, so keep it secure. | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # RUN_AS_USER <userid> | ||||
| # | ||||
| # By default, upsmon splits into two processes.  One stays as root and | ||||
| # waits to run the SHUTDOWNCMD.  The other one switches to another userid | ||||
| # and does everything else. | ||||
| # | ||||
| # The default nonprivileged user is set at compile-time with | ||||
| # 	'configure --with-user=...'.   | ||||
| #  | ||||
| # You can override it with '-u <user>' when starting upsmon, or just | ||||
| # define it here for convenience. | ||||
| # | ||||
| # Note: if you plan to use the reload feature, this file (upsmon.conf) | ||||
| # must be readable by this user!  Since it contains passwords, DO NOT | ||||
| # make it world-readable.  Also, do not make it writable by the upsmon | ||||
| # user, since it creates an opportunity for an attack by changing the | ||||
| # SHUTDOWNCMD to something malicious. | ||||
| # | ||||
| # For best results, you should create a new normal user like "nutmon",  | ||||
| # then specify it here and make it the owner of your upsmon.conf, then | ||||
| # set the mode on upsmon.conf to 0400. | ||||
| # | ||||
| # RUN_AS_USER nutmon | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # MONITOR <system> <powervalue> <username> <password> ("master"|"slave") | ||||
| # | ||||
| # List systems you want to monitor.  Not all of these may supply power | ||||
| # to the system running upsmon, but if you want to watch it, it has to | ||||
| # be in this section. | ||||
| #  | ||||
| # You must have at least one of these declared. | ||||
| # | ||||
| # <system> is a UPS identifier in the form [<upsname>@]<hostname>[:<port>] | ||||
| # like localhost, su700@mybox, etc. | ||||
| #  | ||||
| #  Simple entry: | ||||
| # | ||||
| #  - "localhost" refers to the first UPS on the local system. | ||||
| # | ||||
| #  Other possibilities: | ||||
| #  | ||||
| #  - "su700@mybox" means a UPS called "su700" on a system called "mybox" | ||||
| # | ||||
| #  - "elvis:1234" means the first UPS on a system called "elvis", port 1234. | ||||
| # | ||||
| #  Finally, to use all of these options: | ||||
| # | ||||
| #  - "fenton@bigbox:5678" is a UPS called "fenton" on a system called | ||||
| #    "bigbox" which runs upsd on port "5678".  Phew! | ||||
| # | ||||
| # The UPS names like "su700" and "fenton" are set in your ups.conf | ||||
| # in [brackets] which identify a section for a particular driver. | ||||
| # | ||||
| # If the ups.conf on host "doghouse" has a section called "snoopy", the | ||||
| # identifier for it would be "snoopy@doghouse". | ||||
| # | ||||
| # <powervalue> is an integer - the number of power supplies that this UPS  | ||||
| # feeds on this system.  Most computers only have one power supply, so this  | ||||
| # is normally set to 1.  You need a pretty big or special box to have any  | ||||
| # other value here. | ||||
| # | ||||
| # You can also set this to 0 for a system that doesn't supply any power, | ||||
| # but you still want to monitor.  Use this when you want to hear about | ||||
| # changes for a given UPS without shutting down when it goes critical. | ||||
| # | ||||
| # <username> and <password> must match an entry in that system's | ||||
| # upsd.users.  If your username is "monmaster" and your password is  | ||||
| # "blah", the upsd.users would look like this: | ||||
| # | ||||
| #	[monmaster] | ||||
| #		password  = blah | ||||
| #		allowfrom = 	(whatever applies to this host) | ||||
| #		upsmon master 	(or slave) | ||||
| #  | ||||
| # "master" means this system will shutdown last, allowing the slaves | ||||
| # time to shutdown first. | ||||
| # | ||||
| # "slave" means this system shuts down immediately when power goes critical. | ||||
| # | ||||
| # Examples:  | ||||
| # | ||||
| # MONITOR myups@bigserver 1 monmaster blah master | ||||
| # MONITOR su700@server.example.com 1 upsmon secretpass slave | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # MINSUPPLIES <num> | ||||
| # | ||||
| # Give the number of power supplies that must be receiving power to keep | ||||
| # this system running.  Most systems have one power supply, so you would | ||||
| # put "1" in this field. | ||||
| # | ||||
| # Large/expensive server type systems usually have more, and can run with | ||||
| # a few missing.  The HP NetServer LH4 can run with 2 out of 4, for example, | ||||
| # so you'd set that to 2.  The idea is to keep the box running as long | ||||
| # as possible, right? | ||||
| # | ||||
| # Obviously you have to put the redundant supplies on different UPS circuits | ||||
| # for this to make sense!  See big-servers.txt in the docs subdirectory | ||||
| # for more information and ideas on how to use this feature. | ||||
|  | ||||
| MINSUPPLIES 1 | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # SHUTDOWNCMD "<command>" | ||||
| # | ||||
| # upsmon runs this command when the system needs to be brought down. | ||||
| # | ||||
| # This should work just about everywhere ... if it doesn't, well, change it. | ||||
|  | ||||
| SHUTDOWNCMD "/sbin/shutdown -h +0" | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # NOTIFYCMD <command> | ||||
| # | ||||
| # upsmon calls this to send messages when things happen | ||||
| # | ||||
| # This command is called with the full text of the message as one argument. | ||||
| # The environment string NOTIFYTYPE will contain the type string of | ||||
| # whatever caused this event to happen. | ||||
| # | ||||
| # Note that this is only called for NOTIFY events that have EXEC set with | ||||
| # NOTIFYFLAG.  See NOTIFYFLAG below for more details. | ||||
| # | ||||
| # Making this some sort of shell script might not be a bad idea.  For more | ||||
| # information and ideas, see pager.txt in the docs directory. | ||||
| # | ||||
| # Example: | ||||
| # NOTIFYCMD /usr/local/ups/bin/notifyme | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # POLLFREQ <n>  | ||||
| # | ||||
| # Polling frequency for normal activities, measured in seconds. | ||||
| # | ||||
| # Adjust this to keep upsmon from flooding your network, but don't make  | ||||
| # it too high or it may miss certain short-lived power events. | ||||
|  | ||||
| POLLFREQ 5 | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # POLLFREQALERT <n> | ||||
| # | ||||
| # Polling frequency in seconds while UPS on battery. | ||||
| # | ||||
| # You can make this number lower than POLLFREQ, which will make updates | ||||
| # faster when any UPS is running on battery.  This is a good way to tune  | ||||
| # network load if you have a lot of these things running.   | ||||
| # | ||||
| # The default is 5 seconds for both this and POLLFREQ. | ||||
|  | ||||
| POLLFREQALERT 5 | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # HOSTSYNC - How long upsmon will wait before giving up on another upsmon | ||||
| # | ||||
| # The master upsmon process uses this number when waiting for slaves to | ||||
| # disconnect once it has set the forced shutdown (FSD) flag.  If they | ||||
| # don't disconnect after this many seconds, it goes on without them. | ||||
| # | ||||
| # Similarly, upsmon slave processes wait up to this interval for the  | ||||
| # master upsmon to set FSD when a UPS they are monitoring goes critical - | ||||
| # that is, on battery and low battery.  If the master doesn't do its job, | ||||
| # the slaves will shut down anyway to avoid damage to the file systems. | ||||
| # | ||||
| # This "wait for FSD" is done to avoid races where the status changes | ||||
| # to critical and back between polls by the master. | ||||
|  | ||||
| HOSTSYNC 15 | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # DEADTIME - Interval to wait before declaring a stale ups "dead" | ||||
| # | ||||
| # upsmon requires a UPS to provide status information every few seconds | ||||
| # (see POLLFREQ and POLLFREQALERT) to keep things updated.  If the status | ||||
| # fetch fails, the UPS is marked stale.  If it stays stale for more than | ||||
| # DEADTIME seconds, the UPS is marked dead. | ||||
| # | ||||
| # A dead UPS that was last known to be on battery is assumed to have gone | ||||
| # to a low battery condition.  This may force a shutdown if it is providing | ||||
| # a critical amount of power to your system. | ||||
| # | ||||
| # Note: DEADTIME should be a multiple of POLLFREQ and POLLFREQALERT. | ||||
| # Otherwise you'll have "dead" UPSes simply because upsmon isn't polling | ||||
| # them quickly enough.  Rule of thumb: take the larger of the two | ||||
| # POLLFREQ values, and multiply by 3. | ||||
|  | ||||
| DEADTIME 15 | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # POWERDOWNFLAG - Flag file for forcing UPS shutdown on the master system | ||||
| # | ||||
| # upsmon will create a file with this name in master mode when it's time | ||||
| # to shut down the load.  You should check for this file's existence in | ||||
| # your shutdown scripts and run 'upsdrvctl shutdown' if it exists. | ||||
| # | ||||
| # See the shutdown.txt file in the docs subdirectory for more information. | ||||
|  | ||||
| POWERDOWNFLAG /etc/killpower | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # NOTIFYMSG - change messages sent by upsmon when certain events occur | ||||
| # | ||||
| # You can change the stock messages to something else if you like. | ||||
| # | ||||
| # NOTIFYMSG <notify type> "message" | ||||
| # | ||||
| # NOTIFYMSG ONLINE "UPS %s is getting line power" | ||||
| # NOTIFYMSG ONBATT "Someone pulled the plug on %s" | ||||
| # | ||||
| # Note that %s is replaced with the identifier of the UPS in question. | ||||
| # | ||||
| # Possible values for <notify type>: | ||||
| # | ||||
| # ONLINE   : UPS is back online | ||||
| # ONBATT   : UPS is on battery | ||||
| # LOWBATT  : UPS has a low battery (if also on battery, it's "critical") | ||||
| # FSD      : UPS is being shutdown by the master (FSD = "Forced Shutdown") | ||||
| # COMMOK   : Communications established with the UPS | ||||
| # COMMBAD  : Communications lost to the UPS | ||||
| # SHUTDOWN : The system is being shutdown | ||||
| # REPLBATT : The UPS battery is bad and needs to be replaced | ||||
| # NOCOMM   : A UPS is unavailable (can't be contacted for monitoring) | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # NOTIFYFLAG - change behavior of upsmon when NOTIFY events occur | ||||
| # | ||||
| # By default, upsmon sends walls (global messages to all logged in users) | ||||
| # and writes to the syslog when things happen.  You can change this. | ||||
| # | ||||
| # NOTIFYFLAG <notify type> <flag>[+<flag>][+<flag>] ... | ||||
| # | ||||
| # NOTIFYFLAG ONLINE SYSLOG | ||||
| # NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC | ||||
| # | ||||
| # Possible values for the flags: | ||||
| # | ||||
| # SYSLOG - Write the message in the syslog  | ||||
| # WALL   - Write the message to all users on the system | ||||
| # EXEC   - Execute NOTIFYCMD (see above) with the message | ||||
| # IGNORE - Don't do anything | ||||
| # | ||||
| # If you use IGNORE, don't use any other flags on the same line. | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # RBWARNTIME - replace battery warning time in seconds | ||||
| # | ||||
| # upsmon will normally warn you about a battery that needs to be replaced | ||||
| # every 43200 seconds, which is 12 hours.  It does this by triggering a | ||||
| # NOTIFY_REPLBATT which is then handled by the usual notify structure | ||||
| # you've defined above. | ||||
| #  | ||||
| # If this number is not to your liking, override it here. | ||||
|  | ||||
| RBWARNTIME 43200 | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # NOCOMMWARNTIME - no communications warning time in seconds | ||||
| # | ||||
| # upsmon will let you know through the usual notify system if it can't | ||||
| # talk to any of the UPS entries that are defined in this file.  It will | ||||
| # trigger a NOTIFY_NOCOMM by default every 300 seconds unless you  | ||||
| # change the interval with this directive. | ||||
|  | ||||
| NOCOMMWARNTIME 300 | ||||
|  | ||||
| # -------------------------------------------------------------------------- | ||||
| # FINALDELAY - last sleep interval before shutting down the system | ||||
| # | ||||
| # On a master, upsmon will wait this long after sending the NOTIFY_SHUTDOWN | ||||
| # before executing your SHUTDOWNCMD.  If you need to do something in between | ||||
| # those events, increase this number.  Remember, at this point your UPS is  | ||||
| # almost depleted, so don't make this too high. | ||||
| # | ||||
| # Alternatively, you can set this very low so you don't wait around when | ||||
| # it's time to shut down.  Some UPSes don't give much warning for low | ||||
| # battery and will require a value of 0 here for a safe shutdown. | ||||
| # | ||||
| # Note: If FINALDELAY on the slave is greater than HOSTSYNC on the master, | ||||
| # the master will give up waiting for the slave to disconnect. | ||||
|  | ||||
| FINALDELAY 5 | ||||
							
								
								
									
										95
									
								
								additional/config/upssched.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										95
									
								
								additional/config/upssched.conf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,95 @@ | ||||
| # Network UPS Tools - upssched.conf sample file | ||||
| # | ||||
| # ============================================================================ | ||||
| # | ||||
| # CMDSCRIPT <scriptname> | ||||
| # | ||||
| # This script gets called to invoke commands for timers that trigger. | ||||
| # It is given a single argument - the <timername> in your | ||||
| # AT ... START-TIMER defines. | ||||
| # | ||||
| # *** This must be defined *before* the first AT line.  Otherwise the | ||||
| #     program will complain and exit without doing anything. | ||||
| # | ||||
| # A shell script with a big case..esac construct should work nicely for this. | ||||
| # An example has been provided to help you get started. | ||||
|  | ||||
| CMDSCRIPT /usr/sbin/upssched-cmd | ||||
|  | ||||
| # ============================================================================ | ||||
| # | ||||
| # PIPEFN <filename> | ||||
| # | ||||
| # This sets the file name of the FIFO that will pass communications between | ||||
| # processes to start and stop timers.  This should be set to some path where | ||||
| # normal users can't create the file, due to the possibility of symlinking | ||||
| # and other evil. | ||||
| # | ||||
| # NOTE: if you are running Solaris or similar, the permissions that upssched | ||||
| # sets on this file *are not enough* to keep you safe.  If your OS ignores | ||||
| # the permissions on a FIFO, then you MUST put this in a protected directory! | ||||
| # | ||||
| # Another thing to think about: upsmon doesn't run the NOTIFYCMD as root | ||||
| # unless you run it with -p.  So, upssched will probably run as nobody | ||||
| # or similar unless you give upsmon another user with -u.  Either way, | ||||
| # you have to set PIPEFN to something that ONLY the resulting upsmon  | ||||
| # user can access. | ||||
| # | ||||
| # This is commented out by default to make you visit this file and think | ||||
| # about how your system works before potentially opening a hole. | ||||
| # | ||||
| # PIPEFN /var/run/upssched.pipe | ||||
|  | ||||
| # ============================================================================ | ||||
| # | ||||
| # AT <notifytype> <upsname> <command> | ||||
| # | ||||
| # Define a handler for a specific event <notifytype> on UPS <upsname>. | ||||
| # | ||||
| # <upsname> can be the special value * to apply this handler to every | ||||
| # possible value of <upsname>. | ||||
| # | ||||
| # Run the command <command> via your CMDSCRIPT when it happens.  | ||||
| # | ||||
| # Note that any AT that matches both the <notifytype> and the <upsname>  | ||||
| # for the current event will be used. | ||||
|  | ||||
| # ============================================================================ | ||||
| # | ||||
| # Possible AT commands | ||||
| # | ||||
| # - START-TIMER <timername> <interval> | ||||
| # | ||||
| #   Start a timer called <timername> that will trigger after <interval> | ||||
| #   seconds, calling your CMDSCRIPT with <timername> as the first | ||||
| #   argument. | ||||
| # | ||||
| #   Example: | ||||
| #   Start a timer that'll execute when any UPS (*) has been gone 10 seconds | ||||
| # | ||||
| #   AT COMMBAD * START-TIMER upsgone 10 | ||||
|  | ||||
| #   ----------------------------------------------------------------------- | ||||
| # | ||||
| # - CANCEL-TIMER <timername> [cmd] | ||||
| # | ||||
| #   Cancel a running timer called <timername>, if possible. If the timer | ||||
| #   has passed then pass the optional argument <cmd> to CMDSCRIPT. | ||||
| # | ||||
| #   Example: | ||||
| #   If a specific UPS (myups@localhost) comes back online, then stop the  | ||||
| #   timer before it triggers | ||||
| #  | ||||
| #   AT COMMOK myups@localhost CANCEL-TIMER upsgone | ||||
|  | ||||
| #   ----------------------------------------------------------------------- | ||||
| # | ||||
| # - EXECUTE <command> | ||||
| # | ||||
| #   Immediately pass <command> as an argument to CMDSCRIPT. | ||||
| # | ||||
| #   Example: | ||||
| #   If any UPS (*) reverts to utility power, then execute | ||||
| #   'ups-back-on-line' via CMDSCRIPT. | ||||
| # | ||||
| #   AT ONLINE * EXECUTE ups-back-on-line | ||||
							
								
								
									
										36
									
								
								additional/config/upsset.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								additional/config/upsset.conf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| # Network UPS Tools - upsset.conf sample file | ||||
| # | ||||
| # This file is provided to ensure that you do not expose your upsd server | ||||
| # to the world upon installing the CGI programs.  Specifically, it keeps | ||||
| # the upsset.cgi program from running until you have assured it that you  | ||||
| # have secured your web server's CGI directory. | ||||
| # | ||||
| # By default, your web server will probably let anyone access upsset.cgi | ||||
| # once it is installed.  This means that anyone could attempt to crack | ||||
| # upsd logins since they would appear to be coming from your web server,  | ||||
| # rather than the outside world, slipping through any ACL/ACCESS definitions. | ||||
| # | ||||
| # For this reason, you *MUST* first secure your CGI programs before | ||||
| # enabling upsset in this configuration file.  If you can't do this in | ||||
| # your web server, then you should *not* run this program. | ||||
| # | ||||
| # For Apache, the .htaccess file can be used in the directory with the | ||||
| # programs.  You'll need something like this: | ||||
| # | ||||
| # 	<Files upsset.cgi> | ||||
| #	deny from all | ||||
| #	allow from your.network.addresses | ||||
| #	</Files> | ||||
| # | ||||
| # You will probably have to set "AllowOverride Limit" for this directory in | ||||
| # your server-level configuration file as well. | ||||
| # | ||||
| # If this doesn't make sense, then stop reading and leave this program alone. | ||||
| # | ||||
| # Assuming you have all this done (and it works), then you may uncomment  | ||||
| # the line below and start using upsset.cgi through your web browser. | ||||
| # | ||||
|  | ||||
| ### | ||||
| ### I_HAVE_SECURED_MY_CGI_DIRECTORY | ||||
| ### | ||||
		Reference in New Issue
	
	Block a user
	 Brian Read
					Brian Read