Eaton USV Beeper lässt sich nicht mit NUT USB deaktivieren

Aus Laub-Home Wiki

Bei einer via USB angeschlossenen Eaton 3S USV/UPS kann es Probleme mit den NUT cmd's geben, u.a. lässt sich der Beeper trotz "OK"-Meldung nicht deaktivieren:

upsc <upsname> ups.beeper.status
  Init SSL without certificate database
  enabled


upscmd -u <user> -p <password> <upsname> beeper.disable
  OK
  
  
upsc <upsname> ups.beeper.status
  Init SSL without certificate database
  enabled

Das ist ein bekannter Bug im NUT USB Treiber (https://github.com/networkupstools/nut/issues/801), für welchen es zwar einen Fix gibt (https://github.com/networkupstools/nut/issues/9), dieser allerdings bisher nur im GIT vorliegt und daher der NUT Treiber manuell aus dem Code kompiliert werden muss.


________________________

Although there are recent versions of NUT in the Debian, Raspbian and Ubuntu archives, you may need to compile a newer version of a driver to test a specific patch. These instructions are intended to help you build a copy of NUT that will partially install over the official .debs, and use the same pathnames.

  1. make sure you have uncommented "deb-src" lines to match the "deb" lines in /etc/apt/sources*
  2. run sudo apt-get update if you had to change any sources
  3. run sudo apt-get build-dep nut
  4. optional: remove asciidoc (or install the build-deps manually, and omit asciidoc) to save a bit of build time
  5. run sudo apt-get -y install git if you do not already have Git installed
  6. clone the source to your working directory: git clone https://github.com/networkupstools/nut.git
  7. cd nut and run ./autogen.sh
  8. run this mega-command:
    1. ./configure --includedir=/usr/include --mandir=/usr/share/man \
      --infodir=/usr/share/info --sysconfdir=/etc/nut --localstatedir=/var \
      --libexecdir=/usr/lib/nut --srcdir=. --enable-maintainer-mode \
      --disable-silent-rules --libdir=/usr/lib/`gcc -print-multiarch` \
      --with-ssl --with-nss --with-cgi --with-dev --enable-static \
      --with-statepath=/var/run/nut --with-altpidpath=/var/run/nut \
      --with-drvpath=/lib/nut --with-cgipath=/usr/lib/cgi-bin/nut \
      --with-htmlpath=/usr/share/nut/www --with-pidpath=/var/run/nut \
      --datadir=/usr/share/nut --with-pkgconfig-dir=/usr/lib/`gcc -print-multiarch`/pkgconfig \
      --with-user=nut --with-group=nut --with-udev-dir=/lib/udev \
      --with-systemdsystemunitdir=/lib/systemd/system
      
  9. run make
  10. You can either run the drivers from the source tree, or run sudo make install from the drivers directory to partially overwrite the contents of the NUT .deb files.


Installing everything this way may not be the best plan: the NUT systemd files are not necessarily the same as the Debian/Ubuntu ones. However, by configuring the same pathnames and then installing the drivers, the new drivers should be able to be launched by the existing .deb init/systemd scripts.

Reinstalling the .deb files should revert most of the changes, although newly-added NUT drivers will be left behind in /lib/nut.


Quelle: https://github.com/networkupstools/nut/wiki/Building-NUT-on-Debian,-Raspbian-and-Ubuntu