Uninterruptible power supply: Difference between revisions

Tie-ling (talk | contribs)
update
Delay UPS Shutdown: remove redundant section, as similar code is already present in NixOS
 
(16 intermediate revisions by 4 users not shown)
Line 50: Line 50:
* upsd.conf, control access to upsd, power.ups.upsd option
* upsd.conf, control access to upsd, power.ups.upsd option
* upsd.users, add user with access to upsd, power.ups.users option
* upsd.users, add user with access to upsd, power.ups.users option
* upsmon.conf, connect to upsd, power.ups.upsmon.monitor section;
* upsmon.conf, connect upsmon to upsd, power.ups.upsmon.monitor section;
* upsmon.conf, set how upsmon should react to status changes, power.ups.upsmon.settings section
* upsmon.conf, set how upsmon should react to status changes, power.ups.upsmon.settings section
* delayed UPS shutdown systemd unit, to make Restore Power on AC Return BIOS option functional, systemd.services.nut-delayed-ups-shutdown section
* delayed UPS shutdown systemd unit, to make Restore Power on AC Return BIOS option functional, systemd.services.nut-delayed-ups-shutdown section
Line 63: Line 63:
     # this UPS device is named UPS-1.
     # this UPS device is named UPS-1.
     ups."UPS-1" = {
     ups."UPS-1" = {
       description = "Eaton Ellipse ECO 650 with 12V 7Ah Batt";
       description = "Eaton Ellipse ECO 650 with 12V 7Ah lead-acid Batt";


       # driver name from https://networkupstools.org/stable-hcl.html
       # driver name from https://networkupstools.org/stable-hcl.html
Line 78: Line 78:
         # after offdelay seconds, the UPS power must be cut, even if
         # after offdelay seconds, the UPS power must be cut, even if
         # wall power returns.
         # wall power returns.
        # There is a danger that the system will take longer than the default 20 seconds to shut down.
        # If that were to happen, the UPS shutdown would provoke a brutal system crash.
        # We adjust offdelay, to solve this issue.
         "offdelay = 60"
         "offdelay = 60"


Line 84: Line 88:
         # "Restore power on AC" should now power on the system.
         # "Restore power on AC" should now power on the system.
         # For reasons described above, ondelay value must be larger than offdelay value.
         # For reasons described above, ondelay value must be larger than offdelay value.
        # We adjust ondelay, to ensure Restore power on AC option returns to Power Disconnected state.
         "ondelay = 70"
         "ondelay = 70"


Line 89: Line 94:
         # upsmon initiate shutdown once this threshold is reached.
         # upsmon initiate shutdown once this threshold is reached.
         "lowbatt = 40"
         "lowbatt = 40"
        # ignore it if the UPS reports a low battery condition
        # without this, system will shutdown only when ups reports lb,
        # not respecting lowbatt option
        "ignorelb"
       ];
       ];
     };
     };
Line 122: Line 132:
     # declarations. upsd.users
     # declarations. upsd.users
     users."nut-admin" = {
     users."nut-admin" = {
       passwordFile = ../resources/ups-passwd.txt;
      # A file that contains just the password.
       passwordFile = "/etc/nixos/ups-passwd.txt";
       upsmon = "primary";
       upsmon = "primary";
     };
     };
Line 137: Line 148:
       powerValue = 1;
       powerValue = 1;
       user = "nut-admin";
       user = "nut-admin";
       passwordFile = ../resources/ups-passwd.txt;
       passwordFile = "/etc/nixos/ups-passwd.txt";
       type = "primary";
       type = "primary";
     };
     };
Line 194: Line 205:
   };
   };
</syntaxhighlight>
</syntaxhighlight>
[[Category:Hardware]]