Differences
This shows you the differences between the selected revision and the current version of the page.
howto:nut_ups 2008/08/11 02:40 | howto:nut_ups 2023/09/07 21:19 current | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | Install instruction for Network UPS Tools (NUT) version 2.2.2 with fun_plug 0.5 | + | ====== NUT (Network UPS Tool) ====== |
+ | Instruction for installation of Network UPS Tools (NUT) on fun_plug v 0.5. These instructions are based on information found at the Network UPS Tool website ([[http://networkupstools.org/doc/2.2.0/INSTALL.html]]). | ||
- | ---- | + | ====== Summary ====== |
+ | The primary goal of the Network UPS Tools (NUT) project is to provide reliable monitoring of UPS and PDU hardware and ensure safe shutdowns of the systems which are connected. | ||
+ | We attempt to monitor every kind of UPS and PDU, given sufficient interest. Summary from [[http://networkupstools.org|NUT project page]]. | ||
- | Successful installation of NUT requires three packages. They are; | ||
- | * neon-0.25.5-1.tgz | ||
- | * libusb-0.1.12-1.tgz | ||
- | * nut-2.2.2-2.tgz | ||
- | --- | + | ===== Getting Started ===== |
- | Obtain the packages and store them in the /mnt/HD_a2/ffp/var/packages directory using the commands that follow; | ||
- | cd /mnt/HD_a2/ffp/var/packages | ||
- | wget http://www.inreto.de/dns323/fun-plug/0.5/packages/neon-0.25.5-1.tgz | ||
- | wget http://www.inreto.de/dns323/fun-plug/0.5/packages/libusb-0.1.12-1.tgz | ||
- | wget http://www.inreto.de/dns323/fun-plug/0.5/packages/nut-2.2.2-2.tgz | ||
- | Install the packages using the commands that follow | + | ==== What's Needed ==== |
+ | Successful installation of NUT requires three packages from fonz's website ([[http://www.inreto.de/dns323/fun-plug/0.5/packages/]]). They are; | ||
+ | * libusb-0.1.12-1.tgz; | ||
+ | * neon-0.25.5-1.tgz and; | ||
+ | * nut-2.2.2-3.tgz | ||
+ | |||
+ | |||
+ | === Assumptions === | ||
+ | DNS323 is operating with Firmware version 1.05 or 1.06 (Installation has not been tested with other firmware versions). | ||
+ | |||
+ | Fun_Plug 0.5 installed and operable. | ||
+ | |||
+ | A functional telnet connection. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== How To Get The Packages ==== | ||
+ | For this example the three packages will be saved to the /mnt/HD_a2/packages directory. Change to this directory by issuing the following command at a telnet prompt; | ||
+ | |||
+ | cd /mnt/HD_a2/packages | ||
+ | |||
+ | Use rsync to obtain the three packages and store them in the /mnt/HD_a2/packages directory on your DNS323. Obtain the files by issuing the following commands; | ||
+ | |||
+ | rsync -av inreto.de::dns323/fun-plug/0.5/packages/neon-0.25.5-1.tgz . | ||
+ | rsync -av inreto.de::dns323/fun-plug/0.5/packages/libusb-0.1.12-1.tgz . | ||
+ | rsync -av inreto.de::dns323/fun-plug/0.5/packages/nut-2.2.2-3.tgz . | ||
+ | |||
+ | |||
+ | |||
+ | ==== How To Install The Packages ==== | ||
+ | The packages can be installed from the /mnt/HD_a2/packages directory using the following commands; | ||
funpkg -i neon-0.25.5-1.tgz | funpkg -i neon-0.25.5-1.tgz | ||
funpkg -i libusb-0.1.12-1.tgz | funpkg -i libusb-0.1.12-1.tgz | ||
- | funpkg -i nut-2.2.2-2.tgz'' | + | funpkg -i nut-2.2.2-3.tgz |
- | --- | ||
- | Preparation Process ----- | + | ===== Prepare the Environment ===== |
+ | Once the packages are downloaded and installed the NUT environment will need to be configured before you'll be able to access and control your UPS. Or should I say your UPS will be able to control your DNS323! Instruction found at the Network UPS Tool website ([[http://networkupstools.org/doc/2.2.0/INSTALL.html]]) advised creation of a Group and a user named ''nutmon''. Creating such allows one to establish a higher level of security on configuration files. | ||
- | Create user group. For the purposes of this exercise the group will be named nut | ||
- | groupadd nut | + | ==== Create User Group ==== |
+ | For the purposes of this exercise a group named ''nut''will be added. At the prompt enter the following command; | ||
+ | groupadd nut | ||
- | Create user and add to existing group. For the purposes of this exercise the user will be named ups | ||
- | adduser -s /bin/false -G nut -H -D ups | + | ==== Create User ==== |
+ | For the purposes of this exercise a user named ''nutmon'' will be created and added to the group named ''nut''. The user is created and added to the existing group by entering the following command; | ||
- | set password Fi8H7m11lb | + | adduser -s /bin/false -G nut -H nutmon |
- | Copy sample ups configuration file to the /ffp/etc directory. | + | The system will respond with: |
- | cp /ffp/etc/ups.conf.sample /ffp/etc/ups.conf | + | Changing password for ups |
+ | Enter the new password (minimum of 5, maximum of 8 characters) | ||
+ | Please use a combination of upper and lower case letters and numbers. | ||
- | Change ownership of /ffp/etc/ups.conf | + | Selected a password for ''nutmon'' then enter it at the New password: and again at the Re-enter new password: prompts. |
- | chown root:nut /ffp/etc/ups.conf | + | |
+ | **Note** | ||
+ | * In this example NUTMonPW is used as the password for a user named ''nutmon''. If you use a different password be sure to include it when configuring the upsd.users file. | ||
- | Use favourite editor (I use Notepad++) to establish ups.conf settings. | + | ==== Preserve the Users Password ==== |
+ | Each time the DNS323 is booted key files are copied from NVRAM to the /etc directory. When this occurs information pertaining to those Groups and Users added as shown above will be lost. Loss can be prevented by writing group and user information to NVRAM using the store-passwd.sh script. | ||
- | An APC Back-UPS RS 900 is connected to the USB port on my DNS323. Settings for this device would be; | + | store-passwd.sh |
- | [APC_UPS] | + | ===== Configure and Start NUT Driver ===== |
- | driver = usbhid-ups | + | |
- | port = USB | + | |
- | desc = "Back-UPS RS 900" | + | |
- | A UPS hardware compatibility list is located at http://networkupstools.org/compat/stable.html | + | ==== Create ups.conf File ==== |
- | + | During NUT installation sample configuration files were copied to the /ffp/etc directory. These files are identifiable by their ''.sample'' suffix. During this step of the configuration process a ups.conf file will be created from the ups.conf.sample file. This is achieved by copying the sample ups configuration file to the /ffp/etc directory. The command to do so follows; | |
- | + | ||
- | Change ownership of /ffp/var/state/ups directory | + | |
- | chmod 0770 /ffp/var/state/ups | + | cp /ffp/etc/examples/nut/ups.conf.sample /ffp/etc/ups.conf |
- | chown root:nut /ffp/var/state/ups | + | |
- | ----- Startup ----- | ||
- | Start the driver for your hardware. | + | ==== Add Driver Configuration Detail ==== |
+ | Prior to modifying the ups.conf file you'll need to determine which driver is used with your specific UPS. A UPS hardware compatibility list is located on the [[https://networkupstools.org/stable-hcl.html]] website. Review this list to determine which driver is required for your specific application. Please note these instructions pertain specifically to USB connected UPS. | ||
- | # /ffp/bin/upsdrvctl -t -u ups start | + | Use your favourite editor (I use Notepad++) to open the ups.conf file, enter and subsequently save your specific settings. |
- | Make sure the driver doesn't report any errors. It should show a few details about the hardware and then enter the background. You should get back to the command prompt a few seconds later. For reference, a successful start of the usbhid-ups driver looks like this: | + | An APC Back-UPS RS 900 is connected to the USB port on my DNS323. Settings for this device would be; |
+ | [APC_UPS] | ||
+ | driver = usbhid-ups | ||
+ | port = USB | ||
+ | desc = "Back-UPS RS 900" | ||
+ | |||
+ | ==== Driver Startup ==== | ||
+ | Start the NUT driver. This is accomplished by issuing the following command; | ||
+ | |||
+ | upsdrvctl start | ||
+ | |||
+ | Make sure the driver doesn't report any errors. It should show a few details about the hardware and then enter the background. You should get back to the command prompt a few seconds later. For reference, a successful start of the usbhid-ups driver looks like this: | ||
- | Network UPS Tools - UPS driver controller 2.2.2 | + | Network UPS Tools - UPS driver controller 2.2.2 |
- | Network UPS Tools: 0.29 USB communication driver - core 0.33 (2.2.2) | + | Network UPS Tools: 0.29 USB communication driver - core 0.33 (2.2.2) |
- | Using subdriver: APC HID 0.92 | + | Using subdriver: APC HID 0.92 |
- | If the driver doesn't start cleanly, make sure you have picked the right one for your hardware. You might need to try other drivers by changing the "driver=" value in ups.conf. | + | If the driver doesn't start cleanly, make sure you have picked the right one for your hardware. You might need to try other drivers by changing the "driver=" value in ups.conf file. |
Be sure to check the driver's man page to see if it needs any extra settings in ups.conf to detect your hardware. | Be sure to check the driver's man page to see if it needs any extra settings in ups.conf to detect your hardware. | ||
Line 85: | Line 122: | ||
If it says "can't bind /var/state/ups/..." or similar, then your state path probably isn't writable by the driver. Check the permissions and mode on that directory. | If it says "can't bind /var/state/ups/..." or similar, then your state path probably isn't writable by the driver. Check the permissions and mode on that directory. | ||
+ | ===== Configure and Start Network Server ===== | ||
+ | ==== Configure Host Access List ==== | ||
+ | === Create upsd.conf File === | ||
+ | During this step of the configuration process a upsd.conf file will be created from the upsd.conf.sample file. This is achieved by copying the sample upsd configuration file to the /ffp/etc directory. The command to do so follows; | ||
- | ----- Configuration Process ----- | + | cp /ffp/etc/examples/nut/upsd.conf.sample /ffp/etc/upsd.conf |
- | Basic configuration of upsd requires copying the sample configuration file to the /ffp/etc directory. | + | === Configuring Specific Host Settings === |
+ | Configuring access by a specific host requires modification of the upsd.conf file. For this example it will be necessary to add a host named DNS323 on IP 192.168.1.50 to the server configuration file. Doing so will permit optimum configuration of the monitor tool. Use your favourite editor to open the upsd.conf file, enter and subsequently save the following lines; | ||
- | cp /ffp/etc/upsd.conf.sample /ffp/etc/upsd.conf | + | ACL DNS323 192.168.1.50/32 |
+ | |||
+ | ACCEPT DNS323 | ||
- | Configuring a specific host requires modification of the upsd.conf file. For example, to add a host named DNS323_NAS on IP 192.168.1.50 the following lines need to be added to the upsd.conf file; | + | ==== Configuration User Access List ==== |
+ | === Create upsd.users File === | ||
+ | During this step of the configuration process a upsd.users file will be created from the upsd.users.sample file. This is achieved by copying the sample upsd configuration file to the /ffp/etc directory. The command to do so follows; | ||
- | ACL DNS323_NAS 192.168.1.50/32 | + | cp /ffp/etc/examples/nut/upsd.users.sample /ffp/etc/upsd.users |
- | ACCEPT DNS323_NAS | + | === Configuring an Administrative User === |
+ | Use your favourite editor to open the upsd.users file, enter and subsequently save your specific settings. | ||
+ | [nutmon] | ||
+ | password = NUTMonPW | ||
+ | allowfrom = localhost | ||
+ | actions = SET | ||
+ | instcmds = ALL | ||
+ | While we're at it let's create an entry for monitoring tool. | ||
- | Copy sample user configuration file to the /ffp/etc directory. | + | [monuser] |
+ | password = MonUserPW | ||
+ | allowfrom = DNS323 | ||
+ | upsmon master | ||
- | cp /ffp/etc/upsd.users.sample /ffp/etc/upsd.users | + | ==== Network Server Startup ==== |
+ | Start the network server. This is accomplished by issuing the following command; | ||
+ | upsd | ||
- | Use favourite editor (I use Notepad++) to establish upsd.users settings. | + | The Network Server can be stopped by issuing an ''upsd -c stop'' command. |
- | [ups] | ||
- | password = | ||
- | allowfrom = localhost DNS323_NAS | ||
- | actions = SET | ||
- | instcmds = ALL | ||
- | |||
- | |||
- | Do not make either of the upsd files (upsd.conf or upsd.users) world-readable. Since they both hold access control data and passwords they just need to be readable by the user you created in the preparation process. | ||
- | The suggested configuration is to chown it to root, chgrp it to the group you created, then make it readable by the group. | + | ==== UPS and Server Status Check ==== |
+ | Make sure that the UPS is providing good status data by issuing the following command; | ||
- | cd /ffp/etc | + | upsc APC_UPS@localhost ups.status |
- | chown root:nut upsd.conf upsd.users | + | |
- | chmod 0640 upsd.conf upsd.users | + | |
- | + | If all is okay then ''OL'' (On-line) should appear after the upsc command is issued. If the unit running is On-Battery you would see ''OB'' and if charging you would see ''OC''. | |
- | + | ||
- | Start the network server. | + | |
- | # /ffp/sbin/upsd -u ups | ||
- | (To stop the network server use /ffp/sbin/upsd -u ups -c stop) | + | The upsc command is also used to look at all status that is being monitored. Look at all of the status data by issuing the following command; |
+ | upsc APC_UPS@localhost | ||
- | Make sure that the UPS is providing good status data. | + | What happens now depends on the kind of UPS and driver you have. In the list that follows is sample data from an APC Back-UPS RS 900. |
- | # /ffp/bin/upsc APC_UPS@localhost ups.status or | + | battery.charge: 100 |
+ | battery.charge.low: 10 | ||
+ | battery.charge.warning: 50 | ||
+ | battery.date: 2001/09/25 | ||
+ | battery.mfr.date: 2008/06/05 | ||
+ | battery.runtime: 2535 | ||
+ | battery.runtime.low: 120 | ||
+ | battery.temperature: 29.2 | ||
+ | battery.type: PbAc | ||
+ | battery.voltage: 27.8 | ||
+ | battery.voltage.nominal: 24.0 | ||
+ | device.mfr: American Power Conversion | ||
+ | device.model: Back-UPS RS 900 | ||
+ | device.serial: 5B0743U08220 | ||
+ | device.type: ups | ||
+ | driver.name: usbhid-ups | ||
+ | driver.parameter.pollfreq: 30 | ||
+ | driver.parameter.pollinterval: 2 | ||
+ | driver.parameter.port: AUTO | ||
+ | driver.version: 2.4.1 | ||
+ | driver.version.data: APC HID 0.93 | ||
+ | driver.version.internal: 0.34 | ||
+ | input.voltage: 122.0 | ||
+ | input.voltage.nominal: 120 | ||
+ | output.voltage: 120.0 | ||
+ | output.voltage.nominal: 120.0 | ||
+ | ups.beeper.status: enabled | ||
+ | ups.delay.shutdown: 20 | ||
+ | ups.firmware: 9.o2 .D | ||
+ | ups.firmware.aux: o2 | ||
+ | ups.load: 18.0 | ||
+ | ups.mfr: American Power Conversion | ||
+ | ups.mfr.date: 2007/10/24 | ||
+ | ups.model: Back-UPS RS 900 | ||
+ | ups.productid: 0002 | ||
+ | ups.serial: 5B0743U08220 | ||
+ | ups.status: OL | ||
+ | ups.test.result: No test initiated | ||
+ | ups.timer.reboot: 0 | ||
+ | ups.timer.shutdown: -1 | ||
+ | ups.vendorid: 051d | ||
- | Look at all of the status data which is being monitored. | + | ===== Configure and Start Monitor ===== |
+ | ==== Create upsmon.conf File ==== | ||
+ | During this step of the configuration process a upsmon.conf file will be created from the upsmon.conf.sample file. This is achieved by copying the sample upsmon configuration file to the /ffp/etc directory. The command to do so follows; | ||
- | /ffp/bin/upsc APC_UPS@localhost | + | cp /ffp/etc/examples/nut/upsmon.conf.sample /ffp/etc/upsmon.conf |
- | What happens now depends on the kind of UPS and driver you have.In the list, you should see ups.status with the same value you got above. A sample run on an APC Back-UPS RS 900 looks like this: | + | ==== Configure a RUN_AS_USER ==== |
+ | Use your favourite editor to open the upsmon.conf file and edit line 30 so that it reads; | ||
- | battery.charge: 100 | + | RUN_AS_USER nutmon |
- | battery.charge.low: 10 | + | |
- | battery.charge.warning: 50 | + | |
- | battery.date: 2001/09/25 | + | |
- | battery.mfr.date: 2008/06/05 | + | |
- | battery.runtime: 2025 | + | |
- | battery.runtime.low: 120 | + | |
- | battery.temperature: 3022999999999998800 | + | |
- | battery.type: PbAc | + | |
- | battery.voltage: 27.8 | + | |
- | battery.voltage.nominal: 24.0 | + | |
- | driver.name: usbhid-ups | + | |
- | driver.parameter.pollfreq: 30 | + | |
- | driver.parameter.pollinterval: 2 | + | |
- | driver.parameter.port: auto | + | |
- | driver.version: 2.2.2 | + | |
- | driver.version.data: APC HID 0.92 | + | |
- | driver.version.internal: 0.33 | + | |
- | input.voltage: 122.0 | + | |
- | input.voltage.nominal: 120 | + | |
- | output.voltage: 120.0 | + | |
- | output.voltage.nominal: 120.0 | + | |
- | ups.beeper.status: enabled | + | |
- | ups.delay.shutdown: 20 | + | |
- | ups.delay.start: 30 | + | |
- | ups.firmware: 9.o2 .D | + | |
- | ups.firmware.aux: o2 | + | |
- | ups.load: 229999999999999940000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | + | |
- | ups.mfr: American Power Conversion | + | |
- | ups.mfr.date: 2007/10/24 | + | |
- | ups.model: Back-UPS RS 900 | + | |
- | ups.productid: 0002 | + | |
- | ups.serial: 5B0743U08220 | + | |
- | ups.status: OL | + | |
- | ups.test.result: No test initiated | + | |
- | ups.timer.reboot: 0 | + | |
- | ups.timer.shutdown: -1 | + | |
- | ups.vendorid: 051d | + | |
+ | instead of; | ||
- | ----- Confiure Monitor ----- | + | # RUN_AS_USER nutmon |
- | Create user and add to existing group. For the purposes of this exercise the user will be named nutmon | ||
- | adduser -s /bin/false -G nut -H -D nutmon | + | ==== Configure a MONITOR User ==== |
+ | With the the upsmon.conf file still open in your editor add the following at line 85; | ||
+ | MONITOR APC_UPS@DNS323 1 monuser MonUserPW master | ||
+ | **Note** | ||
+ | * APC_UPS is the name of the UPS as it was set in the ups.conf file. | ||
+ | * MonUserPW is the password that was established when ''monuser'' was added to the upsd.users file. If you used a different password, which you should, be sure to replace MonUserPW with the password that you set in the upsd.users file. | ||
+ | * DNS323 is the host name that was established when configuring the upsd.conf file. | ||
- | Create a user for the monitor | + | ==== Monitor Startup ==== |
+ | Start the upsmon Monitor. This is accomplished by issuing the following command; | ||
- | adduser -s /bin/false -G nut -H monuser | + | upsmon |
- | The system will respond with: | ||
- | Changing password for monuser | ||
- | Enter the new password (minimum of 5, maximum of 8 characters) | ||
- | Please use a combination of upper and lower case letters and numbers. | ||
- | The selected password for monuser is 8htPm3Tayc. Enter this value at the New password: and Re-enter new password: prompts | + | ====== Increase File and Directory Security ====== |
+ | Many of NUT's configuration files contain sensitive data; user names and passwords. To guard against inappropriate access of this information restricting access to users belonging to the ''nut'' group is recommended. This is achieved through the following commands; | ||
+ | chown root:nut /ffp/etc/ups.conf /ffp/etc/upsd.conf /ffp/etc/upsd.users /ffp/etc/upsmon.conf | ||
+ | chmod 0640 /ffp/etc/ups.conf /ffp/etc/upsd.conf /ffp/etc/upsd.users /ffp/etc/upsmon.conf | ||
+ | It will also be necessary to change ownership of /ffp/var/state/ups directory. This is achieved through the following commands; | ||
- | Copy sample monitor configuration file to the /ffp/etc directory. | + | chown root:nut /ffp/var/state/ups |
+ | chmod 0770 /ffp/var/state/ups | ||
- | cp /ffp/etc/upsmon.conf.sample /ffp/etc/upsmon.conf | ||
- | Use favourite editor (I use Notepad++) to establish upsmon.conf settings. | ||
- | Do not make the upsmon.conf files world-readable. Since this file holds access control data and passwords it just needs to be readable by the user you created in the preparation process. | ||
- | The suggested configuration is to chown it to root, chgrp it to the group you created, then make it readable by the group. | ||
- | chmod 0640 upsmon.conf | + | ====== Automating the Startup Process ====== |
- | chown root:nut upsmon.conf | + | You can Telnet to the DNS323 each time you want to start NUT or use a startup script. The following can be added to a nut.sh script file and stored in the /ffp/start directory by copying the content of the code box into your favourite editor then saving the resultant file as /ffp/start/nut.sh. |
+ | Use this script for DNS323 firmware versions prior to 1.07. | ||
- | Configure upsd to recognize upsmon. | + | #!/ffp/bin/sh |
+ | |||
+ | # PROVIDE: nut | ||
+ | |||
+ | . /ffp/etc/ffp.subr | ||
+ | |||
+ | name="nut" | ||
+ | start_cmd="nut_start" | ||
+ | stop_cmd="nut_stop" | ||
+ | |||
+ | nut_start() | ||
+ | { | ||
+ | # Start NUT driver for UPS hardware. | ||
+ | /ffp/bin/upsdrvctl start | ||
+ | |||
+ | # Start NUT Network Server | ||
+ | /ffp/sbin/upsd | ||
+ | |||
+ | # Start NUT monitor agent | ||
+ | /ffp/sbin/upsmon -u monuser | ||
+ | } | ||
+ | |||
+ | nut_stop() | ||
+ | { | ||
+ | # Stop NUT monitor agent | ||
+ | /ffp/sbin/upsmon -c stop | ||
+ | |||
+ | # Stop NUT Network Server | ||
+ | /ffp/sbin/upsd -c stop | ||
+ | |||
+ | # Stop NUT driver for UPS hardware. | ||
+ | /ffp/bin/upsdrvctl stop | ||
+ | } | ||
+ | |||
+ | run_rc_command "$1" | ||
- | First create an ACL in upsd.conf for the host that will be running upsmon. Then use it in an ACCEPT line to allow that host to monitor the UPS. This will let upsmon connect to upsd. | ||
- | Assuming a host called DNS323_NAS with the IP address of 192.168.1.50, the additional configuration items would look like this: | + | Use this script for DNS323 firmware version 1.07. |
- | ACL mybox 192.168.1.50/32 | + | #!/ffp/bin/sh |
- | ACCEPT DNS323_NAS | + | |
+ | # PROVIDE: nut | ||
+ | |||
+ | . /ffp/etc/ffp.subr | ||
+ | |||
+ | name="nut" | ||
+ | start_cmd="nut_start" | ||
+ | stop_cmd="nut_stop" | ||
+ | |||
+ | nut_start() | ||
+ | { | ||
+ | ##################### | ||
+ | # We're using NUT UPS from ffp; # | ||
+ | ##################### | ||
+ | |||
+ | ############################################ | ||
+ | # Stop built in NUT UPS deamons in preparation for starting ffp NUT UPS # | ||
+ | ############################################ | ||
+ | if ps | grep /usr/local/ups/bin/usbhid-ups | grep -v grep | ||
+ | then | ||
+ | echo "* Stopping Default UPS Services" | ||
+ | # Stop NUT Network Server | ||
+ | /sys/crfs/sbin/upsd -c stop | ||
+ | |||
+ | # Stop NUT driver for UPS hardware. | ||
+ | /sys/crfs/sbin/upsdrvctl stop | ||
+ | fi | ||
+ | |||
+ | sleep 2 | ||
+ | |||
+ | ############## | ||
+ | # Start ffp NUT UPS # | ||
+ | ############## | ||
+ | # Start NUT driver for UPS hardware. | ||
+ | /ffp/bin/upsdrvctl start | ||
+ | |||
+ | # Start NUT Network Server | ||
+ | /ffp/sbin/upsd | ||
+ | |||
+ | # Start NUT monitor agent | ||
+ | /ffp/sbin/upsmon -u monuser | ||
+ | } | ||
+ | |||
+ | nut_stop() | ||
+ | { | ||
+ | # Stop NUT monitor agent | ||
+ | /ffp/sbin/upsmon -c stop | ||
+ | |||
+ | # Stop NUT Network Server | ||
+ | /ffp/sbin/upsd -c stop | ||
+ | |||
+ | # Stop NUT driver for UPS hardware. | ||
+ | /ffp/bin/upsdrvctl stop | ||
+ | } | ||
+ | |||
+ | run_rc_command "$1" | ||
- | Start the upsmon monitor. | + | Don't forget to make it runnable: |
- | # /ffp/sbin/upsmon -u monuser | + | chmod a+x /ffp/start/nut.sh |
+ | ====== Add UPS Monitoring and Shut Down Capability to A Remote Windows Machine ====== | ||
+ | If you have a Windows PC connected to the same UPS then a Windows Application named WinNUT may be of interest to you. See [[http://csociety.ecn.purdue.edu/~delpha/winnut/|WinNUT]] for details. | ||
+ | ==== Configuring the NUT Environment for Use With WinNUT ==== | ||
+ | For WinNUT to run successfully it will be necessary to add user information to the upsd.users and host information to the upsd.conf files located on the DNS323. | ||
- | ----- Installing WinNUT ----- | + | === Add a Remote Monitoring User === |
+ | Use your favourite editor to open the upsd.users file, enter and subsequently save your specific settings. | ||
- | Create a user for WinNUT Monitoring Tool | + | [winmonuser] |
+ | password = WinMonUserPW | ||
+ | allowfrom = Remote-PC | ||
+ | upsmon slave | ||
- | adduser -s /bin/false -G nut -H winnmonuser | + | === Configuring Remote Host Settings === |
+ | Configuring access for the remote host requires modification of the upsd.conf file. For this example it will be necessary to add a host named Remote-PC on IP 192.168.1.200 to the server configuration file. Use your favourite editor to open the upsd.conf file, enter and subsequently save the following lines; | ||
- | The system will respond with: | + | ACL DNS323 192.168.1.200/32 |
+ | |||
+ | ACCEPT Remote-PC | ||
- | Changing password for winnmonuser | + | If the NUT Server is running when this change is made it will be necessary to reload the configuration file. This can be done by issuing the following command; |
- | Enter the new password (minimum of 5, maximum of 8 characters) | + | |
- | Please use a combination of upper and lower case letters and numbers. | + | |
- | The selected password for winmonuser is Lh63Dfli21. Enter this value at the New password: and Re-enter new password: prompts | + | upsd -reload |