Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [HowTo] USV: NUT Server auf SBC installieren

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    535

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

[HowTo] USV: NUT Server auf SBC installieren

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
nut usv ups
233 Beiträge 29 Kommentatoren 48.5k Aufrufe 37 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • J Josh

    @yunakato Wieso SNMP-Server? Bei mir läuft's unter "Synology USV-Server". Dann noch die IP des NUT-Servers rein und gut ist's.

    Wenn was nicht funktioniert, kannst du wertvolle Infos [hier]https://www.synology-forum.de/threads/usv-mit-serieller-schnittstelle-moeglich.114545/page-2#post-988107) bekommen.

    Wenn immer noch nicht läuft musst Du mal Deine NUT-Config-Dateien zeigen.

    YunaKatoY Offline
    YunaKatoY Offline
    YunaKato
    schrieb am zuletzt editiert von
    #202

    @josh sagte in [HowTo] USV: NUT Server auf SBC installieren:

    Wieso SNMP-Server? Bei mir läuft's unter "Synology USV-Server".

    so, vielen Dank - leider komme ich erst jetzt zum antworten - Corona hatte sich relativ heftig festgesetzt.

    Der Begriff Synology USV-Server hatte mich auf die falsche Bahn geführt. Aber damit funktioniert es auf Anhieb.

    vielen Dank !

    1 Antwort Letzte Antwort
    1
    • K klassisch

      Was macht NUT?
      Mit NUT (Network UPS Tools) kann man eine unterbrechungsfreie Stromversorgung (USV, UPS) mit Computern verbinden und Daten von den UPS bekommen.
      Für ioBroker gibt es den nut Adapter von @Apollon77, Github und ioBrokerForum . Dieser Adapter stellt einen NUT-Cient bereit und legt eine Datenstruktur im Objektbereich an.
      Ich nutze den Adapter hauptsächlich zum mitloggen der Daten wie verbleibende Akuulaufzeit und zur Detektion von Netzspannungsausfällen.

      Geeignete UPS (USV)
      Die meisten UPS unterstützen diesen Datenaustausch. Entweder per serieller Schnittstelle (nur noch selten anzutreffen), meist per USB oder die edleren direkt über Ethernet.
      Luxus: UPS mit eingebauter Netzwerkkarte
      Die Luxuslösung sieht dann so aus:
      Nut-integratef-in-UPS.jpg
      Man kann dann z.B. den NAS einige Minuten nach einem Spannungsausfall herunterfahren und die anderen Geräte wie ioBroker, Router, Switches, Homematic weiter betreiben.
      Im ioBroker nut-Adapter trägt man die IP-Adresse der Netzwerkkarte der UPS, deren Port (i.d.R 3493), den Namen der UPS sowie Benutzernamen und Passwort, die auf der Netzwerkkarte der UPS festgelegt sind.
      Ein konkretes Beispiel kann ich hier leider nicht geben, da ich leider eine andere Lösung habe.

      Einfache Lösung mit Haken: NAS als NUT-Server
      Wer über ein geeignetes NAS-Gerät verfügt - in meinem Beispiel Synology - kann das USB-Kabel der UPS direkt dort einstecken und den eingebauten NAS-Server nutzen.
      Nut-via-NAS-1.jpg
      In diesem Fall detektiert die Synology die angeschlossene UPS. Im Menue Hardware & Energie, Tab USV kann man den NUT Server aktivieren und die IP-Adressen der Clients - also auch des ioBroker-Rechners - einstellen.
      Im ioBroker Adapter gibt man die IP Adresse der Synology an, sowie wieder Port 3493. Bei Synology muß der Name der UPS sowie dessen Benutzername ups lauten und das password secret .
      Das funktioniert recht problemlos und stabil, hat aber einen Haken. Wenn die Synology bei einem Stromausfall heruntergefahren wird, stellt auch deren NUT Server den Dienst ein und der ioBroker wird nicht mehr mit den Daten der UPS versorgt. Also gerade dann, wenn es eigentlich am interessantesten ist.
      Um das zu vermeiden, kann man den NUT-Server auf einem (eigenen) Kleinrechner betreiben. Alle anderen Geräte werden dann als Cient betrieben.

      NUT-Server auf einem Kleinrechner (SBC)
      In meinem Fall ist der SBC ein Orange Pi Plus 2e, der für diese Aufgabe zwar viel zu groß ist, aber durch Migration von ioBoker auf einen Windows Rechner frei wurde.
      Nut-via-SBC1.jpg
      Das Aufsetzen des NUT-Server erfolgt auf den Spuren von Haus-Automatisierung und Wiki Ubuntuusers
      Zuerst System aktualisieren bzw. neu aufsetzen mit µSD Karte

      apt update
      apt upgrade
      

      Edit: Den NUT-Rechner mit der USV per USB verbinden. Darauf hat @Homoran hingewiesen.
      Nut installation:

      sudo apt install nut usbutils
      

      Bei älteren Systemen sudo apt-get install nut usbutils

      sudo nano /etc/nut/ups.conf
      

      Einfügen:

      [ups]
      	driver = "usbhid-ups"
      	port = "auto"
      	desc = "CyberPower"
      	pollinterval = 30
      

      Bei Verwendung einer Synology muß [ups] verwendet werden.

      Sudo reboot
      
      sudo upsdrvctl start
      sudo cp /lib/udev/rules.d/62-nut-usbups.rules /etc/udev/rules.d/
      sudo reboot
      
      sudo upsdrvctl start
      sudo nano /etc/nut/nut.conf
      

      Eintragen:

      MODE=netserver
      

      Danach den Dienst starten:

      sudo upsd
      

      Wenn alles funktioniert hat, kann man jetzt Daten ausgeben:

      sudo upsc ups@localhost
      

      Hier muss eine sinnvolle Liste gelistet werden: Beispiel:

      root@opi2e_reserve:~# sudo upsc ups@localhost
      Init SSL without certificate database
      battery.charge: 100
      battery.charge.low: 10
      battery.charge.warning: 20
      battery.mfr.date: CPS
      battery.runtime: 6690
      battery.runtime.low: 300
      battery.type: PbAcid
      battery.voltage: 24.0
      battery.voltage.nominal: 24
      device.mfr: CPS
      device.model: CP1500EPFCLCD
      device.serial: CRABCD12345678
      device.type: ups
      driver.name: usbhid-ups
      driver.parameter.pollfreq: 30
      driver.parameter.pollinterval: 30
      driver.parameter.port: auto
      driver.parameter.synchronous: no
      driver.version: 2.7.4
      driver.version.data: CyberPower HID 0.4
      driver.version.internal: 0.41
      input.transfer.high: 260
      input.transfer.low: 170
      input.voltage: 235.0
      input.voltage.nominal: 230
      output.voltage: 267.0
      ups.beeper.status: enabled
      ups.delay.shutdown: 20
      ups.delay.start: 30
      ups.load: 5
      ups.mfr: CPS
      ups.model: CP1500EPFCLCD
      ups.productid: 0501
      ups.realpower.nominal: 900
      ups.serial: CRABCD12345678
      ups.status: OL
      ups.test.result: No test initiated
      ups.timer.shutdown: -60
      ups.timer.start: -60
      ups.vendorid: 0764
      root@opi2e_reserve:~#
      

      Weiter gehts

      sudo nano /etc/nut/upsd.conf
      

      Eintragen:

      LISTEN 127.0.0.1 3493
      LISTEN 192.168.178.123 3493
      

      Also IP-Adresse der eigenen (Nut-Server) Eth Schnittstelle
      Starten und stoppen, damit das conf-file wieder eingelesen wird

      sudo upsd -c stop
      sudo upsd
      

      Jetzt werden Benutzerkonten angelegt, unter denen man von anderen Geräten auf den NUT-Server zugreifen kann. In meinem Beispiel:

      Drei user werden erstellt
      - upsmaster für den Administrator, der damit aber nichts macht
      - monuser für die Synology
      - upsmon_remote für den ioBroker

      Dazu:

      sudo nano /etc/nut/upsd.users
      

      Eintragen:

      [upsmaster]
              password = irgendwasabergutmerken
              actions = SET
              instcmds = ALL
              upsmon master
      
      [monuser]
      	password = secret
      	upsmon slave
      
      [upsmon_remote]
              password  = secret
              upsmon slave
      

      Wieder übernehmen

      sudo upsd -c stop
      sudo upsd
      

      Jetzt müssen wir das Ganze auch noch reboot-fest machen.

      Bei neueren Linux-Systemen geschieht das über systemd. @Thomas-Braun und @David-G haben diese Anpassung dankenswerterweise ausgearbeitet und getestet (siehe dort mit Nutzung dieser Fundstelle):
      Zuerst mit

      cat /etc/systemd/system/multi-user.target.wants/nut-server.service
      

      prüfen, ob diese Datei vorhanden ist und nut bereits die Vorkehrungen für systemd getroffen hat.
      Falls diese Datei existiert, Mit nano öffnen:

      sudo nano /etc/systemd/system/multi-user.target.wants/nut-server.service
      

      Diese Datei sieht dann erst mal so aus:

      [Unit]
      Description=Network UPS Tools - power devices information server
      After=local-fs.target network.target nut-driver.service
      # We don't Require drivers to be successfully started! This would be
      # a change of behavior compared to init SysV, and could prevent from
      # accessing successfully started, at least to audit a system.
      Wants=nut-driver.service
      Before=nut-monitor.service
      
      [Service]
      ExecStart=/sbin/upsd
      Type=forking
      
      [Install]
      WantedBy=multi-user.target
      
      

      Damit genügend Zeit zur Installation der USB Treiber bleibt, nach der Zeile [Service] noch die Verzögerung

      ExecStartPre=/bin/sleep 30
      

      eintragen und die geänderte Datei abspeichern.
      Die Datei sollte nun so aussehen

      [Unit]
      Description=Network UPS Tools - power devices information server
      After=local-fs.target network.target nut-driver.service
      # We don't Require drivers to be successfully started! This would be
      # a change of behavior compared to init SysV, and could prevent from
      # accessing successfully started, at least to audit a system.
      Wants=nut-driver.service
      Before=nut-monitor.service
      
      [Service]
      ExecStartPre=/bin/sleep 30
      ExecStart=/sbin/upsd
      Type=forking
      
      [Install]
      WantedBy=multi-user.target
      
      

      {
      Hier die Methode für alte Systeme, bei denen die Datei /etc/systemd/system/multi-user.target.wants/nut-server.service nicht existiert. Darf nicht verwendet werden, wenn diese Datei vorhanden ist und die vorherigen Schritte schon ausgeführt wurden

      sudo nano /etc/rc.local
      

      Hier VOR exit=0 einfügen

      #additions  for nut server
      upsdrvctl start
      upsd
      #end additions for nut server
      

      } Ende der Einstellungen für Altsysteme. Bei neueren Sytsemen nicht mehr verwenden]

      Jetzt wird noch der ioBroker Adapter eingestellt. Beispiel

      IP des NUT Servers: 192.168.178.123 #Beispiel
      Port des NUT Servers: 3493
      NUT Name der UPS: ups
      Aktualisierungsintervall 300s
      Username der UPS: upsmon_remote
      Passwort der UPS: secret
      

      Bei der Synology wird eingestellt (Hardware & Energie, Tab USV):
      Anhaken: USV-Unterstützung aktivieren
      Netzwerk-USV-Typ: Synology USV Server
      Netzwerk-USV-Server-IP: 192.168.178.123 #Beispiel

      Die Zeit einstellen, nach der die Synology heruntergefahren werden soll + anhaken.

      NUT-Server und ioBroker auf einem Rechner
      Diese Konfiguration hatte ich nie in Betrieb. Sie müßte aber mit den o.g. Installationsschritten möglich sein. Als IP-Adresse des NUT Servers kann innerhalb des Host Rechners dann localhost oder 127.0.0.1 verwendet werden.
      Nut-on-ioBroker-Computer.jpg

      Edit:
      Welcher Treiber passt zu meiner USV?
      Auswahltabelle Treiber auf der Seite des NUT-Projekts

      gelberlemmyG Offline
      gelberlemmyG Offline
      gelberlemmy
      schrieb am zuletzt editiert von
      #203

      @klassisch danke für diese super Anleitung. Kann ich diese auch nehmen, wenn meine USV direkt per USB angeschlossen ist ? ich sehe in der Anleitung, dass er auf IP Adressen hört. Ich bin jetzt nicht so der Profi in diesen Dingen.

      Danke

      K David G.D 2 Antworten Letzte Antwort
      0
      • gelberlemmyG gelberlemmy

        @klassisch danke für diese super Anleitung. Kann ich diese auch nehmen, wenn meine USV direkt per USB angeschlossen ist ? ich sehe in der Anleitung, dass er auf IP Adressen hört. Ich bin jetzt nicht so der Profi in diesen Dingen.

        Danke

        K Offline
        K Offline
        klassisch
        Most Active
        schrieb am zuletzt editiert von
        #204

        @gelberlemmy Ich habe die Version drittes Bild "NUT-Server auf einem Kleinrechner (SBC)" umgesetzt und noch immer so in Betrieb. Die USV ist über USB direkt an einen Kleinrechner (SBC) angeschlossen.

        gelberlemmyG 1 Antwort Letzte Antwort
        1
        • gelberlemmyG gelberlemmy

          @klassisch danke für diese super Anleitung. Kann ich diese auch nehmen, wenn meine USV direkt per USB angeschlossen ist ? ich sehe in der Anleitung, dass er auf IP Adressen hört. Ich bin jetzt nicht so der Profi in diesen Dingen.

          Danke

          David G.D Online
          David G.D Online
          David G.
          schrieb am zuletzt editiert von
          #205

          @gelberlemmy

          Die Anleitung ist wie ich es in Erinnerung habe (schon was her) ausschließlich für USB Geräte.

          Im Adapter am ioborker musst du die IP eingeben, wo du den nut Server installiert hast (was auch der Rechner mit iobroker sein kann).

          Zeigt eure Lovelace-Visualisierung klick
          (Auch ideal um sich Anregungen zu holen)

          Meine Tabellen für eure Visualisierung klick

          1 Antwort Letzte Antwort
          1
          • K klassisch

            @gelberlemmy Ich habe die Version drittes Bild "NUT-Server auf einem Kleinrechner (SBC)" umgesetzt und noch immer so in Betrieb. Die USV ist über USB direkt an einen Kleinrechner (SBC) angeschlossen.

            gelberlemmyG Offline
            gelberlemmyG Offline
            gelberlemmy
            schrieb am zuletzt editiert von
            #206

            @klassisch danke, läuft perfekt.....:+1:

            K 1 Antwort Letzte Antwort
            1
            • gelberlemmyG gelberlemmy

              @klassisch danke, läuft perfekt.....:+1:

              K Offline
              K Offline
              klassisch
              Most Active
              schrieb am zuletzt editiert von
              #207

              @gelberlemmy vielen Dank für die Rückmeldung

              1 Antwort Letzte Antwort
              0
              • K klassisch

                Was macht NUT?
                Mit NUT (Network UPS Tools) kann man eine unterbrechungsfreie Stromversorgung (USV, UPS) mit Computern verbinden und Daten von den UPS bekommen.
                Für ioBroker gibt es den nut Adapter von @Apollon77, Github und ioBrokerForum . Dieser Adapter stellt einen NUT-Cient bereit und legt eine Datenstruktur im Objektbereich an.
                Ich nutze den Adapter hauptsächlich zum mitloggen der Daten wie verbleibende Akuulaufzeit und zur Detektion von Netzspannungsausfällen.

                Geeignete UPS (USV)
                Die meisten UPS unterstützen diesen Datenaustausch. Entweder per serieller Schnittstelle (nur noch selten anzutreffen), meist per USB oder die edleren direkt über Ethernet.
                Luxus: UPS mit eingebauter Netzwerkkarte
                Die Luxuslösung sieht dann so aus:
                Nut-integratef-in-UPS.jpg
                Man kann dann z.B. den NAS einige Minuten nach einem Spannungsausfall herunterfahren und die anderen Geräte wie ioBroker, Router, Switches, Homematic weiter betreiben.
                Im ioBroker nut-Adapter trägt man die IP-Adresse der Netzwerkkarte der UPS, deren Port (i.d.R 3493), den Namen der UPS sowie Benutzernamen und Passwort, die auf der Netzwerkkarte der UPS festgelegt sind.
                Ein konkretes Beispiel kann ich hier leider nicht geben, da ich leider eine andere Lösung habe.

                Einfache Lösung mit Haken: NAS als NUT-Server
                Wer über ein geeignetes NAS-Gerät verfügt - in meinem Beispiel Synology - kann das USB-Kabel der UPS direkt dort einstecken und den eingebauten NAS-Server nutzen.
                Nut-via-NAS-1.jpg
                In diesem Fall detektiert die Synology die angeschlossene UPS. Im Menue Hardware & Energie, Tab USV kann man den NUT Server aktivieren und die IP-Adressen der Clients - also auch des ioBroker-Rechners - einstellen.
                Im ioBroker Adapter gibt man die IP Adresse der Synology an, sowie wieder Port 3493. Bei Synology muß der Name der UPS sowie dessen Benutzername ups lauten und das password secret .
                Das funktioniert recht problemlos und stabil, hat aber einen Haken. Wenn die Synology bei einem Stromausfall heruntergefahren wird, stellt auch deren NUT Server den Dienst ein und der ioBroker wird nicht mehr mit den Daten der UPS versorgt. Also gerade dann, wenn es eigentlich am interessantesten ist.
                Um das zu vermeiden, kann man den NUT-Server auf einem (eigenen) Kleinrechner betreiben. Alle anderen Geräte werden dann als Cient betrieben.

                NUT-Server auf einem Kleinrechner (SBC)
                In meinem Fall ist der SBC ein Orange Pi Plus 2e, der für diese Aufgabe zwar viel zu groß ist, aber durch Migration von ioBoker auf einen Windows Rechner frei wurde.
                Nut-via-SBC1.jpg
                Das Aufsetzen des NUT-Server erfolgt auf den Spuren von Haus-Automatisierung und Wiki Ubuntuusers
                Zuerst System aktualisieren bzw. neu aufsetzen mit µSD Karte

                apt update
                apt upgrade
                

                Edit: Den NUT-Rechner mit der USV per USB verbinden. Darauf hat @Homoran hingewiesen.
                Nut installation:

                sudo apt install nut usbutils
                

                Bei älteren Systemen sudo apt-get install nut usbutils

                sudo nano /etc/nut/ups.conf
                

                Einfügen:

                [ups]
                	driver = "usbhid-ups"
                	port = "auto"
                	desc = "CyberPower"
                	pollinterval = 30
                

                Bei Verwendung einer Synology muß [ups] verwendet werden.

                Sudo reboot
                
                sudo upsdrvctl start
                sudo cp /lib/udev/rules.d/62-nut-usbups.rules /etc/udev/rules.d/
                sudo reboot
                
                sudo upsdrvctl start
                sudo nano /etc/nut/nut.conf
                

                Eintragen:

                MODE=netserver
                

                Danach den Dienst starten:

                sudo upsd
                

                Wenn alles funktioniert hat, kann man jetzt Daten ausgeben:

                sudo upsc ups@localhost
                

                Hier muss eine sinnvolle Liste gelistet werden: Beispiel:

                root@opi2e_reserve:~# sudo upsc ups@localhost
                Init SSL without certificate database
                battery.charge: 100
                battery.charge.low: 10
                battery.charge.warning: 20
                battery.mfr.date: CPS
                battery.runtime: 6690
                battery.runtime.low: 300
                battery.type: PbAcid
                battery.voltage: 24.0
                battery.voltage.nominal: 24
                device.mfr: CPS
                device.model: CP1500EPFCLCD
                device.serial: CRABCD12345678
                device.type: ups
                driver.name: usbhid-ups
                driver.parameter.pollfreq: 30
                driver.parameter.pollinterval: 30
                driver.parameter.port: auto
                driver.parameter.synchronous: no
                driver.version: 2.7.4
                driver.version.data: CyberPower HID 0.4
                driver.version.internal: 0.41
                input.transfer.high: 260
                input.transfer.low: 170
                input.voltage: 235.0
                input.voltage.nominal: 230
                output.voltage: 267.0
                ups.beeper.status: enabled
                ups.delay.shutdown: 20
                ups.delay.start: 30
                ups.load: 5
                ups.mfr: CPS
                ups.model: CP1500EPFCLCD
                ups.productid: 0501
                ups.realpower.nominal: 900
                ups.serial: CRABCD12345678
                ups.status: OL
                ups.test.result: No test initiated
                ups.timer.shutdown: -60
                ups.timer.start: -60
                ups.vendorid: 0764
                root@opi2e_reserve:~#
                

                Weiter gehts

                sudo nano /etc/nut/upsd.conf
                

                Eintragen:

                LISTEN 127.0.0.1 3493
                LISTEN 192.168.178.123 3493
                

                Also IP-Adresse der eigenen (Nut-Server) Eth Schnittstelle
                Starten und stoppen, damit das conf-file wieder eingelesen wird

                sudo upsd -c stop
                sudo upsd
                

                Jetzt werden Benutzerkonten angelegt, unter denen man von anderen Geräten auf den NUT-Server zugreifen kann. In meinem Beispiel:

                Drei user werden erstellt
                - upsmaster für den Administrator, der damit aber nichts macht
                - monuser für die Synology
                - upsmon_remote für den ioBroker

                Dazu:

                sudo nano /etc/nut/upsd.users
                

                Eintragen:

                [upsmaster]
                        password = irgendwasabergutmerken
                        actions = SET
                        instcmds = ALL
                        upsmon master
                
                [monuser]
                	password = secret
                	upsmon slave
                
                [upsmon_remote]
                        password  = secret
                        upsmon slave
                

                Wieder übernehmen

                sudo upsd -c stop
                sudo upsd
                

                Jetzt müssen wir das Ganze auch noch reboot-fest machen.

                Bei neueren Linux-Systemen geschieht das über systemd. @Thomas-Braun und @David-G haben diese Anpassung dankenswerterweise ausgearbeitet und getestet (siehe dort mit Nutzung dieser Fundstelle):
                Zuerst mit

                cat /etc/systemd/system/multi-user.target.wants/nut-server.service
                

                prüfen, ob diese Datei vorhanden ist und nut bereits die Vorkehrungen für systemd getroffen hat.
                Falls diese Datei existiert, Mit nano öffnen:

                sudo nano /etc/systemd/system/multi-user.target.wants/nut-server.service
                

                Diese Datei sieht dann erst mal so aus:

                [Unit]
                Description=Network UPS Tools - power devices information server
                After=local-fs.target network.target nut-driver.service
                # We don't Require drivers to be successfully started! This would be
                # a change of behavior compared to init SysV, and could prevent from
                # accessing successfully started, at least to audit a system.
                Wants=nut-driver.service
                Before=nut-monitor.service
                
                [Service]
                ExecStart=/sbin/upsd
                Type=forking
                
                [Install]
                WantedBy=multi-user.target
                
                

                Damit genügend Zeit zur Installation der USB Treiber bleibt, nach der Zeile [Service] noch die Verzögerung

                ExecStartPre=/bin/sleep 30
                

                eintragen und die geänderte Datei abspeichern.
                Die Datei sollte nun so aussehen

                [Unit]
                Description=Network UPS Tools - power devices information server
                After=local-fs.target network.target nut-driver.service
                # We don't Require drivers to be successfully started! This would be
                # a change of behavior compared to init SysV, and could prevent from
                # accessing successfully started, at least to audit a system.
                Wants=nut-driver.service
                Before=nut-monitor.service
                
                [Service]
                ExecStartPre=/bin/sleep 30
                ExecStart=/sbin/upsd
                Type=forking
                
                [Install]
                WantedBy=multi-user.target
                
                

                {
                Hier die Methode für alte Systeme, bei denen die Datei /etc/systemd/system/multi-user.target.wants/nut-server.service nicht existiert. Darf nicht verwendet werden, wenn diese Datei vorhanden ist und die vorherigen Schritte schon ausgeführt wurden

                sudo nano /etc/rc.local
                

                Hier VOR exit=0 einfügen

                #additions  for nut server
                upsdrvctl start
                upsd
                #end additions for nut server
                

                } Ende der Einstellungen für Altsysteme. Bei neueren Sytsemen nicht mehr verwenden]

                Jetzt wird noch der ioBroker Adapter eingestellt. Beispiel

                IP des NUT Servers: 192.168.178.123 #Beispiel
                Port des NUT Servers: 3493
                NUT Name der UPS: ups
                Aktualisierungsintervall 300s
                Username der UPS: upsmon_remote
                Passwort der UPS: secret
                

                Bei der Synology wird eingestellt (Hardware & Energie, Tab USV):
                Anhaken: USV-Unterstützung aktivieren
                Netzwerk-USV-Typ: Synology USV Server
                Netzwerk-USV-Server-IP: 192.168.178.123 #Beispiel

                Die Zeit einstellen, nach der die Synology heruntergefahren werden soll + anhaken.

                NUT-Server und ioBroker auf einem Rechner
                Diese Konfiguration hatte ich nie in Betrieb. Sie müßte aber mit den o.g. Installationsschritten möglich sein. Als IP-Adresse des NUT Servers kann innerhalb des Host Rechners dann localhost oder 127.0.0.1 verwendet werden.
                Nut-on-ioBroker-Computer.jpg

                Edit:
                Welcher Treiber passt zu meiner USV?
                Auswahltabelle Treiber auf der Seite des NUT-Projekts

                Marc_el_KM Offline
                Marc_el_KM Offline
                Marc_el_K
                schrieb am zuletzt editiert von
                #208

                Hallo zusammen, auch wenn Post 1 von 2019 ist, sehe ich hier noch Aktivitäten. Ich habe mir auhc die 200 Beiträge durchgelesen aber dennoch eine grundsätzliche Frage.

                Mein Setup ist sehr klein. Es läuft ein RPI4 mit iobroker und ein bisschen angeschlossene Peripherie um Smart Home Geräte einzubinden. Aufgrund einiger Stromausfälle geht es mir lediglich um das sichere Herunterfahren des Pi. EIn NAS habe ich nicht, nur eine Festplatte am Pi eingebunden.

                In Post 1 stand im HowTo

                @klassisch sagte in [HowTo] USV: NUT Server auf SBC installieren:

                NUT-Server und ioBroker auf einem Rechner
                Diese Konfiguration hatte ich nie in Betrieb.

                Beiträge konnte ich auch nicht dazu lesen. Daher meine Frage was würdet ihr mir denn empfehlen, als einfachste Lösung. Ich bin auch in Linux nicht bewandert und möchte daher meine ioBroker Konfiguration nicht crashen :-)

                Vielen Dank :-)

                Thomas BraunT 1 Antwort Letzte Antwort
                0
                • Marc_el_KM Marc_el_K

                  Hallo zusammen, auch wenn Post 1 von 2019 ist, sehe ich hier noch Aktivitäten. Ich habe mir auhc die 200 Beiträge durchgelesen aber dennoch eine grundsätzliche Frage.

                  Mein Setup ist sehr klein. Es läuft ein RPI4 mit iobroker und ein bisschen angeschlossene Peripherie um Smart Home Geräte einzubinden. Aufgrund einiger Stromausfälle geht es mir lediglich um das sichere Herunterfahren des Pi. EIn NAS habe ich nicht, nur eine Festplatte am Pi eingebunden.

                  In Post 1 stand im HowTo

                  @klassisch sagte in [HowTo] USV: NUT Server auf SBC installieren:

                  NUT-Server und ioBroker auf einem Rechner
                  Diese Konfiguration hatte ich nie in Betrieb.

                  Beiträge konnte ich auch nicht dazu lesen. Daher meine Frage was würdet ihr mir denn empfehlen, als einfachste Lösung. Ich bin auch in Linux nicht bewandert und möchte daher meine ioBroker Konfiguration nicht crashen :-)

                  Vielen Dank :-)

                  Thomas BraunT Online
                  Thomas BraunT Online
                  Thomas Braun
                  Most Active
                  schrieb am zuletzt editiert von
                  #209

                  @marc_el_k

                  Und was ist konkret die Frage?
                  nut kann man natürlich auch auf dem Pi betreiben. Hab ich so.

                  Linux-Werkzeugkasten:
                  https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                  NodeJS Fixer Skript:
                  https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                  iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                  Marc_el_KM 1 Antwort Letzte Antwort
                  0
                  • Thomas BraunT Thomas Braun

                    @marc_el_k

                    Und was ist konkret die Frage?
                    nut kann man natürlich auch auf dem Pi betreiben. Hab ich so.

                    Marc_el_KM Offline
                    Marc_el_KM Offline
                    Marc_el_K
                    schrieb am zuletzt editiert von
                    #210

                    @thomas-braun Ah, ja das war nicht eindeutig definiert. Hier daher meine Fragen:

                    1. Funktioniert die Anleitung aus Beitrag 1 noch immer?
                    2. Ist eine Neueinrichtung oder Neuinstallation des ioBroker erforderlich? (Ich habe in einem anderen Thema gelesen, dass es wohl erforderlich sei)
                    3. Gibt es für mein Minimal-Setup vielleicht noch eine andere Lösung?
                    4. Welche USV hast du im Einsatz?
                    HomoranH Thomas BraunT 2 Antworten Letzte Antwort
                    0
                    • Marc_el_KM Marc_el_K

                      @thomas-braun Ah, ja das war nicht eindeutig definiert. Hier daher meine Fragen:

                      1. Funktioniert die Anleitung aus Beitrag 1 noch immer?
                      2. Ist eine Neueinrichtung oder Neuinstallation des ioBroker erforderlich? (Ich habe in einem anderen Thema gelesen, dass es wohl erforderlich sei)
                      3. Gibt es für mein Minimal-Setup vielleicht noch eine andere Lösung?
                      4. Welche USV hast du im Einsatz?
                      HomoranH Nicht stören
                      HomoranH Nicht stören
                      Homoran
                      Global Moderator Administrators
                      schrieb am zuletzt editiert von
                      #211

                      @marc_el_k sagte in [HowTo] USV: NUT Server auf SBC installieren:

                      @thomas-braun Ah, ja das war nicht eindeutig definiert. Hier daher meine Fragen:

                      1. Funktioniert die Anleitung aus Beitrag 1 noch immer?
                      2. Ist eine Neueinrichtung oder Neuinstallation des ioBroker erforderlich? (Ich habe in einem anderen Thema gelesen, dass es wohl erforderlich sei)
                      3. Gibt es für mein Minimal-Setup vielleicht noch eine andere Lösung?
                      4. Welche USV hast du im Einsatz?
                      1. Ja, zumindest als ich es vor einem halben Jahr probiert hatte

                      2. nein, ich hab es auch auf einen Slave installiert

                      3. Was genau stellst du dir vor?

                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      1 Antwort Letzte Antwort
                      0
                      • Marc_el_KM Marc_el_K

                        @thomas-braun Ah, ja das war nicht eindeutig definiert. Hier daher meine Fragen:

                        1. Funktioniert die Anleitung aus Beitrag 1 noch immer?
                        2. Ist eine Neueinrichtung oder Neuinstallation des ioBroker erforderlich? (Ich habe in einem anderen Thema gelesen, dass es wohl erforderlich sei)
                        3. Gibt es für mein Minimal-Setup vielleicht noch eine andere Lösung?
                        4. Welche USV hast du im Einsatz?
                        Thomas BraunT Online
                        Thomas BraunT Online
                        Thomas Braun
                        Most Active
                        schrieb am zuletzt editiert von
                        #212

                        @marc_el_k

                        1 Ja
                        2 Nein
                        3 Gibt für den Pi auch HATs für die GPIO-Leiste, die funktionieren soweit ich weiß ohne nut.
                        4 Eine von Schneider/APC

                        Linux-Werkzeugkasten:
                        https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                        NodeJS Fixer Skript:
                        https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                        iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                        1 Antwort Letzte Antwort
                        1
                        • Marc_el_KM Offline
                          Marc_el_KM Offline
                          Marc_el_K
                          schrieb am zuletzt editiert von
                          #213

                          Hallo zusammen,

                          die Anleitung funktioniert super :) Vielen Dank dafür.

                          Der NUT Adapter ist grün und die Daten werden übertragen. :-)
                          Nun bekomme ich aber alle 5 Minuten bei Verbindung mit Putty noch folgende Nachricht. Vermutlich habe ich etwas falsch eingetragen. Wie bekomme ich das weg?

                          Broadcast message from nut@raspberrypi (somewhere) (Sun Mar 17 10:18:49 2024):
                          
                          UPS serverups@localhost is unavailable
                          
                          

                          Vielen Dank!

                          1 Antwort Letzte Antwort
                          0
                          • Marc_el_KM Offline
                            Marc_el_KM Offline
                            Marc_el_K
                            schrieb am zuletzt editiert von
                            #214

                            Hallo zusammen,

                            könnte ich bitte nochmal eure Erfahrung anfragen :-)

                            Ich weiß noch nicht wann genau es passiert, es kommt aber vor, dass der Adapter gelb bleibt. Wenn ich dann die beiden Befehle ausführe und den Adapter anschließend neustarte wird es wieder grün. Vielleicht liegt es an einem Neustart des Servers, sodass es noch nicht boot-sicher ist, ich habe aber das Gefühl, dass es auch im laufenden Betrieb vorkommt.

                            Habt ihr eine Idee?

                            XXX.:~ $ sudo upsdrvctl start
                            Network UPS Tools - UPS driver controller 2.7.4
                            Network UPS Tools - Generic HID driver 0.41 (2.7.4)
                            USB communication driver 0.33
                            Using subdriver: MGE HID 1.40
                            XXX.:~ $ sudo systemctl restart nut-server
                            
                            
                            
                            Thomas BraunT BananaJoeB Meister MopperM 3 Antworten Letzte Antwort
                            0
                            • Marc_el_KM Marc_el_K

                              Hallo zusammen,

                              könnte ich bitte nochmal eure Erfahrung anfragen :-)

                              Ich weiß noch nicht wann genau es passiert, es kommt aber vor, dass der Adapter gelb bleibt. Wenn ich dann die beiden Befehle ausführe und den Adapter anschließend neustarte wird es wieder grün. Vielleicht liegt es an einem Neustart des Servers, sodass es noch nicht boot-sicher ist, ich habe aber das Gefühl, dass es auch im laufenden Betrieb vorkommt.

                              Habt ihr eine Idee?

                              XXX.:~ $ sudo upsdrvctl start
                              Network UPS Tools - UPS driver controller 2.7.4
                              Network UPS Tools - Generic HID driver 0.41 (2.7.4)
                              USB communication driver 0.33
                              Using subdriver: MGE HID 1.40
                              XXX.:~ $ sudo systemctl restart nut-server
                              
                              
                              
                              Thomas BraunT Online
                              Thomas BraunT Online
                              Thomas Braun
                              Most Active
                              schrieb am zuletzt editiert von
                              #215

                              @marc_el_k

                              Ohne LogFile kann man dazu nichts sagen.

                              Linux-Werkzeugkasten:
                              https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                              NodeJS Fixer Skript:
                              https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                              iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                              Marc_el_KM 1 Antwort Letzte Antwort
                              0
                              • Marc_el_KM Marc_el_K

                                Hallo zusammen,

                                könnte ich bitte nochmal eure Erfahrung anfragen :-)

                                Ich weiß noch nicht wann genau es passiert, es kommt aber vor, dass der Adapter gelb bleibt. Wenn ich dann die beiden Befehle ausführe und den Adapter anschließend neustarte wird es wieder grün. Vielleicht liegt es an einem Neustart des Servers, sodass es noch nicht boot-sicher ist, ich habe aber das Gefühl, dass es auch im laufenden Betrieb vorkommt.

                                Habt ihr eine Idee?

                                XXX.:~ $ sudo upsdrvctl start
                                Network UPS Tools - UPS driver controller 2.7.4
                                Network UPS Tools - Generic HID driver 0.41 (2.7.4)
                                USB communication driver 0.33
                                Using subdriver: MGE HID 1.40
                                XXX.:~ $ sudo systemctl restart nut-server
                                
                                
                                
                                BananaJoeB Offline
                                BananaJoeB Offline
                                BananaJoe
                                Most Active
                                schrieb am zuletzt editiert von
                                #216

                                @marc_el_k ich meine in den Systemlogs könnte irgendwo stehen das er die Verbindung zu der USV verliert. Solange die nicht verbunden ist klappt die Abfrage des Adapters nicht.
                                Die erste Zeile bei dir startet ja eben diese USB-Treiber. Kommt die Meldung sofort (als Status) oder kannst du dabei zusehen wie er die nacheinander startet? Die müssten ja eigentlich schon laufen.

                                Ich nutze den NUT-Server unter Windows (jupp, gibt es auch) und habe auch dort das Neustart-Problem. Es gibt zwar einen Windows Dienst. Der meldet recht schnell gestartet, lädt dann aber in Wirklichkeit im Hintergrund den ganzen Rest. Das hatte einmal am Anfang geklappt, sein dem nicht mehr. Ich starte das inzwischen auch per Hand (per Skript). Zuerst stoppe ich die USB-Driver (falls die noch laufen) und starte dann nut.

                                Eventuell ist es ein ähnliches Timing-Problem, da müsste man mal schauen wann was wie startet.

                                ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                                1 Antwort Letzte Antwort
                                0
                                • Thomas BraunT Thomas Braun

                                  @marc_el_k

                                  Ohne LogFile kann man dazu nichts sagen.

                                  Marc_el_KM Offline
                                  Marc_el_KM Offline
                                  Marc_el_K
                                  schrieb am zuletzt editiert von
                                  #217

                                  @thomas-braun, @BananaJoe Vielen Dank euch. Wie kann ich denn das Log erfassen?

                                  Thomas BraunT 1 Antwort Letzte Antwort
                                  0
                                  • Marc_el_KM Marc_el_K

                                    @thomas-braun, @BananaJoe Vielen Dank euch. Wie kann ich denn das Log erfassen?

                                    Thomas BraunT Online
                                    Thomas BraunT Online
                                    Thomas Braun
                                    Most Active
                                    schrieb am zuletzt editiert von
                                    #218

                                    @marc_el_k

                                    Zum Beispiel mittels

                                    journalctl -u nut-server
                                    

                                    Linux-Werkzeugkasten:
                                    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                    NodeJS Fixer Skript:
                                    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                    Marc_el_KM 1 Antwort Letzte Antwort
                                    0
                                    • Marc_el_KM Marc_el_K

                                      Hallo zusammen,

                                      könnte ich bitte nochmal eure Erfahrung anfragen :-)

                                      Ich weiß noch nicht wann genau es passiert, es kommt aber vor, dass der Adapter gelb bleibt. Wenn ich dann die beiden Befehle ausführe und den Adapter anschließend neustarte wird es wieder grün. Vielleicht liegt es an einem Neustart des Servers, sodass es noch nicht boot-sicher ist, ich habe aber das Gefühl, dass es auch im laufenden Betrieb vorkommt.

                                      Habt ihr eine Idee?

                                      XXX.:~ $ sudo upsdrvctl start
                                      Network UPS Tools - UPS driver controller 2.7.4
                                      Network UPS Tools - Generic HID driver 0.41 (2.7.4)
                                      USB communication driver 0.33
                                      Using subdriver: MGE HID 1.40
                                      XXX.:~ $ sudo systemctl restart nut-server
                                      
                                      
                                      
                                      Meister MopperM Offline
                                      Meister MopperM Offline
                                      Meister Mopper
                                      schrieb am zuletzt editiert von
                                      #219

                                      @marc_el_k sagte in [HowTo] USV: NUT Server auf SBC installieren:

                                      Habt ihr eine Idee?

                                      Beschreibe doch mal grundsätzlich dein System.

                                      Proxmox und HA

                                      1 Antwort Letzte Antwort
                                      0
                                      • Thomas BraunT Thomas Braun

                                        @marc_el_k

                                        Zum Beispiel mittels

                                        journalctl -u nut-server
                                        
                                        Marc_el_KM Offline
                                        Marc_el_KM Offline
                                        Marc_el_K
                                        schrieb am zuletzt editiert von Marc_el_K
                                        #220

                                        @thomas-braun sagte in [HowTo] USV: NUT Server auf SBC installieren:

                                        @marc_el_k

                                        Zum Beispiel mittels

                                        journalctl -u nut-server
                                        

                                        Habe ich gemacht und mal das letzte geloggten Datum kopiert. Nur meine IP habe ich mit XXX versehen.

                                        Mär 30 14:41:15 raspberrypi systemd[1]: Stopping Network UPS Tools - power devices information server...
                                        Mär 30 14:41:15 raspberrypi upsd[1173]: mainloop: Interrupted system call
                                        Mär 30 14:41:15 raspberrypi upsd[1173]: Signal 15: exiting
                                        Mär 30 14:41:15 raspberrypi systemd[1]: nut-server.service: Succeeded.
                                        Mär 30 14:41:15 raspberrypi systemd[1]: Stopped Network UPS Tools - power devices information server.
                                        Mär 30 14:41:15 raspberrypi systemd[1]: nut-server.service: Consumed 22.050s CPU time.
                                        -- Boot 07970854bb1149ef992b8c5f23cc5836 --
                                        Mär 30 14:41:28 raspberrypi systemd[1]: Starting Network UPS Tools - power devices information server...
                                        Mär 30 14:41:58 raspberrypi upsd[1146]: fopen /run/nut/upsd.pid: No such file or directory
                                        Mär 30 14:41:58 raspberrypi upsd[1146]: not listening on XXX.XXX.XXX.XXX port 3493
                                        Mär 30 14:41:58 raspberrypi upsd[1146]: listening on 127.0.0.1 port 3493
                                        Mär 30 14:41:58 raspberrypi upsd[1146]: no listening interface available
                                        Mär 30 14:41:58 raspberrypi upsd[1146]: not listening on XXX.XXX.XXX.XXX port 3493
                                        Mär 30 14:41:58 raspberrypi upsd[1146]: listening on 127.0.0.1 port 3493
                                        Mär 30 14:41:58 raspberrypi upsd[1146]: no listening interface available
                                        Mär 30 14:41:58 raspberrypi upsd[1146]: Network UPS Tools upsd 2.7.4
                                        Mär 30 14:41:58 raspberrypi systemd[1]: nut-server.service: Control process exited, code=exited, status=1/FAILURE
                                        Mär 30 14:41:58 raspberrypi systemd[1]: nut-server.service: Failed with result 'exit-code'.
                                        Mär 30 14:41:58 raspberrypi systemd[1]: Failed to start Network UPS Tools - power devices information server.
                                        Mär 30 15:24:08 raspberrypi systemd[1]: Starting Network UPS Tools - power devices information server...
                                        Mär 30 15:24:38 raspberrypi upsd[24948]: fopen /run/nut/upsd.pid: No such file or directory
                                        Mär 30 15:24:38 raspberrypi upsd[24948]: listening on XXX.XXX.XXX.XXX port 3493
                                        Mär 30 15:24:38 raspberrypi upsd[24948]: listening on 127.0.0.1 port 3493
                                        Mär 30 15:24:38 raspberrypi upsd[24948]: listening on XXX.XXX.XXX.XXX port 3493
                                        Mär 30 15:24:38 raspberrypi upsd[24948]: Connected to UPS [ups]: usbhid-ups-ups
                                        Mär 30 15:24:38 raspberrypi upsd[24948]: listening on 127.0.0.1 port 3493
                                        Mär 30 15:24:38 raspberrypi upsd[24948]: Connected to UPS [ups]: usbhid-ups-ups
                                        Mär 30 15:24:38 raspberrypi upsd[24949]: Startup successful
                                        Mär 30 15:24:38 raspberrypi systemd[1]: Started Network UPS Tools - power devices information server.
                                        
                                        

                                        Der Adapter ist momentan grün.

                                        @Meister-Mopper Das System ist ein Raspberry Pi 4 mit iobroker und der Nut Server Installtion. Die USV ist Eaton.

                                        1 Antwort Letzte Antwort
                                        0
                                        • K klassisch

                                          Was macht NUT?
                                          Mit NUT (Network UPS Tools) kann man eine unterbrechungsfreie Stromversorgung (USV, UPS) mit Computern verbinden und Daten von den UPS bekommen.
                                          Für ioBroker gibt es den nut Adapter von @Apollon77, Github und ioBrokerForum . Dieser Adapter stellt einen NUT-Cient bereit und legt eine Datenstruktur im Objektbereich an.
                                          Ich nutze den Adapter hauptsächlich zum mitloggen der Daten wie verbleibende Akuulaufzeit und zur Detektion von Netzspannungsausfällen.

                                          Geeignete UPS (USV)
                                          Die meisten UPS unterstützen diesen Datenaustausch. Entweder per serieller Schnittstelle (nur noch selten anzutreffen), meist per USB oder die edleren direkt über Ethernet.
                                          Luxus: UPS mit eingebauter Netzwerkkarte
                                          Die Luxuslösung sieht dann so aus:
                                          Nut-integratef-in-UPS.jpg
                                          Man kann dann z.B. den NAS einige Minuten nach einem Spannungsausfall herunterfahren und die anderen Geräte wie ioBroker, Router, Switches, Homematic weiter betreiben.
                                          Im ioBroker nut-Adapter trägt man die IP-Adresse der Netzwerkkarte der UPS, deren Port (i.d.R 3493), den Namen der UPS sowie Benutzernamen und Passwort, die auf der Netzwerkkarte der UPS festgelegt sind.
                                          Ein konkretes Beispiel kann ich hier leider nicht geben, da ich leider eine andere Lösung habe.

                                          Einfache Lösung mit Haken: NAS als NUT-Server
                                          Wer über ein geeignetes NAS-Gerät verfügt - in meinem Beispiel Synology - kann das USB-Kabel der UPS direkt dort einstecken und den eingebauten NAS-Server nutzen.
                                          Nut-via-NAS-1.jpg
                                          In diesem Fall detektiert die Synology die angeschlossene UPS. Im Menue Hardware & Energie, Tab USV kann man den NUT Server aktivieren und die IP-Adressen der Clients - also auch des ioBroker-Rechners - einstellen.
                                          Im ioBroker Adapter gibt man die IP Adresse der Synology an, sowie wieder Port 3493. Bei Synology muß der Name der UPS sowie dessen Benutzername ups lauten und das password secret .
                                          Das funktioniert recht problemlos und stabil, hat aber einen Haken. Wenn die Synology bei einem Stromausfall heruntergefahren wird, stellt auch deren NUT Server den Dienst ein und der ioBroker wird nicht mehr mit den Daten der UPS versorgt. Also gerade dann, wenn es eigentlich am interessantesten ist.
                                          Um das zu vermeiden, kann man den NUT-Server auf einem (eigenen) Kleinrechner betreiben. Alle anderen Geräte werden dann als Cient betrieben.

                                          NUT-Server auf einem Kleinrechner (SBC)
                                          In meinem Fall ist der SBC ein Orange Pi Plus 2e, der für diese Aufgabe zwar viel zu groß ist, aber durch Migration von ioBoker auf einen Windows Rechner frei wurde.
                                          Nut-via-SBC1.jpg
                                          Das Aufsetzen des NUT-Server erfolgt auf den Spuren von Haus-Automatisierung und Wiki Ubuntuusers
                                          Zuerst System aktualisieren bzw. neu aufsetzen mit µSD Karte

                                          apt update
                                          apt upgrade
                                          

                                          Edit: Den NUT-Rechner mit der USV per USB verbinden. Darauf hat @Homoran hingewiesen.
                                          Nut installation:

                                          sudo apt install nut usbutils
                                          

                                          Bei älteren Systemen sudo apt-get install nut usbutils

                                          sudo nano /etc/nut/ups.conf
                                          

                                          Einfügen:

                                          [ups]
                                          	driver = "usbhid-ups"
                                          	port = "auto"
                                          	desc = "CyberPower"
                                          	pollinterval = 30
                                          

                                          Bei Verwendung einer Synology muß [ups] verwendet werden.

                                          Sudo reboot
                                          
                                          sudo upsdrvctl start
                                          sudo cp /lib/udev/rules.d/62-nut-usbups.rules /etc/udev/rules.d/
                                          sudo reboot
                                          
                                          sudo upsdrvctl start
                                          sudo nano /etc/nut/nut.conf
                                          

                                          Eintragen:

                                          MODE=netserver
                                          

                                          Danach den Dienst starten:

                                          sudo upsd
                                          

                                          Wenn alles funktioniert hat, kann man jetzt Daten ausgeben:

                                          sudo upsc ups@localhost
                                          

                                          Hier muss eine sinnvolle Liste gelistet werden: Beispiel:

                                          root@opi2e_reserve:~# sudo upsc ups@localhost
                                          Init SSL without certificate database
                                          battery.charge: 100
                                          battery.charge.low: 10
                                          battery.charge.warning: 20
                                          battery.mfr.date: CPS
                                          battery.runtime: 6690
                                          battery.runtime.low: 300
                                          battery.type: PbAcid
                                          battery.voltage: 24.0
                                          battery.voltage.nominal: 24
                                          device.mfr: CPS
                                          device.model: CP1500EPFCLCD
                                          device.serial: CRABCD12345678
                                          device.type: ups
                                          driver.name: usbhid-ups
                                          driver.parameter.pollfreq: 30
                                          driver.parameter.pollinterval: 30
                                          driver.parameter.port: auto
                                          driver.parameter.synchronous: no
                                          driver.version: 2.7.4
                                          driver.version.data: CyberPower HID 0.4
                                          driver.version.internal: 0.41
                                          input.transfer.high: 260
                                          input.transfer.low: 170
                                          input.voltage: 235.0
                                          input.voltage.nominal: 230
                                          output.voltage: 267.0
                                          ups.beeper.status: enabled
                                          ups.delay.shutdown: 20
                                          ups.delay.start: 30
                                          ups.load: 5
                                          ups.mfr: CPS
                                          ups.model: CP1500EPFCLCD
                                          ups.productid: 0501
                                          ups.realpower.nominal: 900
                                          ups.serial: CRABCD12345678
                                          ups.status: OL
                                          ups.test.result: No test initiated
                                          ups.timer.shutdown: -60
                                          ups.timer.start: -60
                                          ups.vendorid: 0764
                                          root@opi2e_reserve:~#
                                          

                                          Weiter gehts

                                          sudo nano /etc/nut/upsd.conf
                                          

                                          Eintragen:

                                          LISTEN 127.0.0.1 3493
                                          LISTEN 192.168.178.123 3493
                                          

                                          Also IP-Adresse der eigenen (Nut-Server) Eth Schnittstelle
                                          Starten und stoppen, damit das conf-file wieder eingelesen wird

                                          sudo upsd -c stop
                                          sudo upsd
                                          

                                          Jetzt werden Benutzerkonten angelegt, unter denen man von anderen Geräten auf den NUT-Server zugreifen kann. In meinem Beispiel:

                                          Drei user werden erstellt
                                          - upsmaster für den Administrator, der damit aber nichts macht
                                          - monuser für die Synology
                                          - upsmon_remote für den ioBroker

                                          Dazu:

                                          sudo nano /etc/nut/upsd.users
                                          

                                          Eintragen:

                                          [upsmaster]
                                                  password = irgendwasabergutmerken
                                                  actions = SET
                                                  instcmds = ALL
                                                  upsmon master
                                          
                                          [monuser]
                                          	password = secret
                                          	upsmon slave
                                          
                                          [upsmon_remote]
                                                  password  = secret
                                                  upsmon slave
                                          

                                          Wieder übernehmen

                                          sudo upsd -c stop
                                          sudo upsd
                                          

                                          Jetzt müssen wir das Ganze auch noch reboot-fest machen.

                                          Bei neueren Linux-Systemen geschieht das über systemd. @Thomas-Braun und @David-G haben diese Anpassung dankenswerterweise ausgearbeitet und getestet (siehe dort mit Nutzung dieser Fundstelle):
                                          Zuerst mit

                                          cat /etc/systemd/system/multi-user.target.wants/nut-server.service
                                          

                                          prüfen, ob diese Datei vorhanden ist und nut bereits die Vorkehrungen für systemd getroffen hat.
                                          Falls diese Datei existiert, Mit nano öffnen:

                                          sudo nano /etc/systemd/system/multi-user.target.wants/nut-server.service
                                          

                                          Diese Datei sieht dann erst mal so aus:

                                          [Unit]
                                          Description=Network UPS Tools - power devices information server
                                          After=local-fs.target network.target nut-driver.service
                                          # We don't Require drivers to be successfully started! This would be
                                          # a change of behavior compared to init SysV, and could prevent from
                                          # accessing successfully started, at least to audit a system.
                                          Wants=nut-driver.service
                                          Before=nut-monitor.service
                                          
                                          [Service]
                                          ExecStart=/sbin/upsd
                                          Type=forking
                                          
                                          [Install]
                                          WantedBy=multi-user.target
                                          
                                          

                                          Damit genügend Zeit zur Installation der USB Treiber bleibt, nach der Zeile [Service] noch die Verzögerung

                                          ExecStartPre=/bin/sleep 30
                                          

                                          eintragen und die geänderte Datei abspeichern.
                                          Die Datei sollte nun so aussehen

                                          [Unit]
                                          Description=Network UPS Tools - power devices information server
                                          After=local-fs.target network.target nut-driver.service
                                          # We don't Require drivers to be successfully started! This would be
                                          # a change of behavior compared to init SysV, and could prevent from
                                          # accessing successfully started, at least to audit a system.
                                          Wants=nut-driver.service
                                          Before=nut-monitor.service
                                          
                                          [Service]
                                          ExecStartPre=/bin/sleep 30
                                          ExecStart=/sbin/upsd
                                          Type=forking
                                          
                                          [Install]
                                          WantedBy=multi-user.target
                                          
                                          

                                          {
                                          Hier die Methode für alte Systeme, bei denen die Datei /etc/systemd/system/multi-user.target.wants/nut-server.service nicht existiert. Darf nicht verwendet werden, wenn diese Datei vorhanden ist und die vorherigen Schritte schon ausgeführt wurden

                                          sudo nano /etc/rc.local
                                          

                                          Hier VOR exit=0 einfügen

                                          #additions  for nut server
                                          upsdrvctl start
                                          upsd
                                          #end additions for nut server
                                          

                                          } Ende der Einstellungen für Altsysteme. Bei neueren Sytsemen nicht mehr verwenden]

                                          Jetzt wird noch der ioBroker Adapter eingestellt. Beispiel

                                          IP des NUT Servers: 192.168.178.123 #Beispiel
                                          Port des NUT Servers: 3493
                                          NUT Name der UPS: ups
                                          Aktualisierungsintervall 300s
                                          Username der UPS: upsmon_remote
                                          Passwort der UPS: secret
                                          

                                          Bei der Synology wird eingestellt (Hardware & Energie, Tab USV):
                                          Anhaken: USV-Unterstützung aktivieren
                                          Netzwerk-USV-Typ: Synology USV Server
                                          Netzwerk-USV-Server-IP: 192.168.178.123 #Beispiel

                                          Die Zeit einstellen, nach der die Synology heruntergefahren werden soll + anhaken.

                                          NUT-Server und ioBroker auf einem Rechner
                                          Diese Konfiguration hatte ich nie in Betrieb. Sie müßte aber mit den o.g. Installationsschritten möglich sein. Als IP-Adresse des NUT Servers kann innerhalb des Host Rechners dann localhost oder 127.0.0.1 verwendet werden.
                                          Nut-on-ioBroker-Computer.jpg

                                          Edit:
                                          Welcher Treiber passt zu meiner USV?
                                          Auswahltabelle Treiber auf der Seite des NUT-Projekts

                                          qqolliQ Offline
                                          qqolliQ Offline
                                          qqolli
                                          schrieb am zuletzt editiert von qqolli
                                          #221

                                          @klassisch

                                          ERLEDIGT *** Problem gelöst und ja, wer lesen kann ... :-)

                                          Hallo,

                                          ich habe den Server schon lange auf meinem Raspi erfolgreich laufen. Aber nach einem Update/Upgrade hat es den etwas zerschossen. Auf dem Raspi angezeigt bekomme ich nun folgendes:

                                          pi@NUT-Server:~ $ systemctl status nut-monitor.service
                                          ● nut-monitor.service - Network UPS Tools - power device monitor and shutdown controller
                                               Loaded: loaded (/lib/systemd/system/nut-monitor.service; enabled; vendor preset: enabled)
                                               Active: active (running) since Thu 2024-04-25 19:36:29 CEST; 10min ago
                                              Process: 462 ExecStart=/sbin/upsmon (code=exited, status=0/SUCCESS)
                                             Main PID: 465 (upsmon)
                                                Tasks: 2 (limit: 1597)
                                                  CPU: 289ms
                                               CGroup: /system.slice/nut-monitor.service
                                                       ├─464 /lib/nut/upsmon
                                                       └─465 /lib/nut/upsmon
                                          
                                          Apr 25 19:46:06 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          Apr 25 19:46:11 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          Apr 25 19:46:16 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          Apr 25 19:46:21 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          Apr 25 19:46:26 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          Apr 25 19:46:31 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          Apr 25 19:46:36 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          Apr 25 19:46:36 NUT-Server upsmon[465]: UPS ups@localhost is unavailable
                                          Apr 25 19:46:41 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          Apr 25 19:46:46 NUT-Server upsmon[465]: UPS [ups@localhost]: connect failed: Connection failure: Connection refused
                                          

                                          Im Moment kann ich diese Fehlermeldung nicht ganz zuordnen. Hab ihr vielleicht eine Idee dazu?

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          430

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe