Gestion onduleur eaton 3s

Bonjour à tous🙂,
j’ai suivi ce tuto, pour gérer mon onduleur eaton 3s.
Je suis bloqué à ce niveau:

# systemctl enable nut-driver
Failed to enable unit: Unit file nut-driver.service does not exist.
# 

“nut-driver” est introuvable. Voici les paquets “nut” installés:

$ rpm -qa | grep nut-
nut-client-2.8.0-13.fc39.x86_64
nut-xml-2.8.0-13.fc39.x86_64
nut-2.8.0-13.fc39.x86_64
nut-cgi-2.8.0-13.fc39.x86_64
nut-devel-2.8.0-13.fc39.x86_64
$ 

Je n’arrive pas à trouver le “rpm” qui fournirait “nut-driver”.
Merci pour votre aide.
pll

Edit Nicosss : Correction balises Markdown + Séparation des blocs code pour la lisibilité -> Voir FAQ

  • Nicosss a répondu à ça.
  • Il fallait faire:

    # systemctl enable --now nut.target
    Created symlink /etc/systemd/system/multi-user.target.wants/nut.target → /usr/lib/systemd/system/nut.target.
    #

    Après redémarrage, j’obtiens ceci:

    # systemctl status nut*
    ● nut-monitor.service - Network UPS Tools - power device monitor and shutdown c>
         Loaded: loaded (/usr/lib/systemd/system/nut-monitor.service; enabled; pres>
        Drop-In: /usr/lib/systemd/system/service.d
                 └─10-timeout-abort.conf
         Active: active (running) since Wed 2023-11-15 21:07:20 CET; 11min ago
        Process: 1374 ExecStartPre=/usr/bin/systemd-tmpfiles --create /usr/lib/tmpf>
       Main PID: 1376 (upsmon)
          Tasks: 2 (limit: 18865)
         Memory: 1.4M
            CPU: 32ms
         CGroup: /system.slice/nut-monitor.service
                 ├─1376 /usr/sbin/upsmon -F
                 └─1379 /usr/sbin/upsmon -F
    
    nov. 15 21:07:20 fedora.home systemd[1]: Starting nut-monitor.service - Network>
    nov. 15 21:07:20 fedora.home systemd[1]: Started nut-monitor.service - Network >
    nov. 15 21:07:20 fedora.home nut-monitor[1376]: fopen /run/nut/upsmon.pid: No s>
    nov. 15 21:07:20 fedora.home nut-monitor[1376]: Could not find PID file to see >
    nov. 15 21:07:20 fedora.home nut-monitor[1376]: UPS: eaton3s@localhost (primary>
    nov. 15 21:07:20 fedora.home nut-monitor[1376]: Using power down flag file /etc>
    nov. 15 21:07:20 fedora.home nut-monitor[1379]: Login on UPS [eaton3s@localhost>
    
    ● nut-driver - Network UPS Tools - device driver for NUT device>
    lines 1-23...skipping...
    ● nut-monitor.service - Network UPS Tools - power device monitor and shutdown c>
         Loaded: loaded (/usr/lib/systemd/system/nut-monitor.service; enabled; pres>
        Drop-In: /usr/lib/systemd/system/service.d
                 └─10-timeout-abort.conf
         Active: active (running) since Wed 2023-11-15 21:07:20 CET; 11min ago
        Process: 1374 ExecStartPre=/usr/bin/systemd-tmpfiles --create /usr/lib/tmpf>
       Main PID: 1376 (upsmon)
          Tasks: 2 (limit: 18865)
         Memory: 1.4M
            CPU: 32ms
         CGroup: /system.slice/nut-monitor.service
                 ├─1376 /usr/sbin/upsmon -F
                 └─1379 /usr/sbin/upsmon -F
    
    nov. 15 21:07:20 fedora.home systemd[1]: Starting nut-monitor.service - Network>
    nov. 15 21:07:20 fedora.home systemd[1]: Started nut-monitor.service - Network >
    nov. 15 21:07:20 fedora.home nut-monitor[1376]: fopen /run/nut/upsmon.pid: No s>
    nov. 15 21:07:20 fedora.home nut-monitor[1376]: Could not find PID file to see >
    nov. 15 21:07:20 fedora.home nut-monitor[1376]: UPS: eaton3s@localhost (primary>
    nov. 15 21:07:20 fedora.home nut-monitor[1376]: Using power down flag file /etc>
    nov. 15 21:07:20 fedora.home nut-monitor[1379]: Login on UPS [eaton3s@localhost>

    Je reviendrai pour affiner…
    Bonne nuit à tous.
    pll

    pierrotlalune J’ai corrigé ton message concernant l’utilisation du bloc code en Markdown.

    Je t’invite vivement à lire les Conditions d’utilisation dont le lien est aussi en bas de page ainsi que plus particulièrement la FAQ du Forum. Merci par avance afin de faciliter la lisibilité.

    Que retourne
    $ systemctl status nut*

      Nicosss
      Bonjour Nicoss,
      merci pour ta réponse. J’ai effectivement du mal à m’adapter à la nouvelle présentation du forum😙. Je ne trouve pas l’option “visualiser avant d’envoyer” !

      $ systemctl status nut*
      $

      Rien! Bizarre, j’avais pourtant bien lancé :

       # systemctl enable nut-driver nut-monitor nut-server

      a+
      pll

      Edit Nicosss : Correction balises Markdown -> Voir FAQ

        pierrotlalune Je ne trouve pas l’option “visualiser avant d’envoyer” !

        C’est automatique et en temps réel dans le fil de la discussion.

        pierrotlalune Tu as bien fait la commande suivante pour installer nut
        $ sudo dnf install nut

        pierrotlalune Tu n’as pas dû démarrer le serveur alors
        $ sudo systemctl start nut-server.service

        Si! Je l’ai redémarré pour voir et j’obtiens ceci:

         $ systemctl status nut*
        ● nut-server.service - Network UPS Tools - power devices information server
             Loaded: loaded (/usr/lib/systemd/system/nut-server.service; enabled; prese>
            Drop-In: /usr/lib/systemd/system/service.d
                     └─10-timeout-abort.conf
             Active: active (running) since Sun 2023-11-12 14:41:14 CET; 7min ago
           Main PID: 3157 (upsd)
              Tasks: 1 (limit: 18865)
             Memory: 1.1M
                CPU: 33ms
             CGroup: /system.slice/nut-server.service
                     └─3157 /usr/sbin/upsd -F
        
        nov. 12 14:41:14 fedora.home nut-server[3157]: listening on 127.0.0.1 port 3493
        nov. 12 14:41:14 fedora.home upsd[3157]: listening on 127.0.0.1 port 3493
        nov. 12 14:41:14 fedora.home upsd[3157]: listening on ::1 port 3493
        nov. 12 14:41:14 fedora.home nut-server[3157]: listening on ::1 port 3493
        nov. 12 14:41:14 fedora.home nut-server[3157]: Can't connect to UPS [eaton3s] (>
        nov. 12 14:41:14 fedora.home upsd[3157]: Can't connect to UPS [eaton3s] (usbhid>
        nov. 12 14:41:14 fedora.home nut-server[3157]: Running as foreground process, n>
        nov. 12 14:41:14 fedora.home upsd[3157]: Running as foreground process, not sav>
        nov. 12 14:46:14 fedora.home nut-server[3157]: Can't connect to UPS [eaton3s] (>
        nov. 12 14:46:14 fedora.home upsd[3157]: Can't connect to UPS [eaton3s] (usbhid>
        
        lines 1-23

        Voilà…
        a+
        pll

        Edit Nicosss : Correction balises Markdown -> Voir FAQ

          pierrotlalune J’ai corrigé ton message concernant l’utilisation du bloc code en Markdown.

          Je t’invite vivement à lire les Conditions d’utilisation dont le lien est aussi en bas de page ainsi que plus particulièrement la FAQ du Forum. Merci par avance afin de faciliter la lisibilité.

          Merci de faire l’effort de lire les informations dans les liens ci-dessus.

          Les informations sont tronquées du coup et perdent de leur intérêt.

          Je te propose de reprendre et t’assurer que tu as bien tout ce qui est dans ta documentation, donc quand ça ne correspond pas à l’attendu alors ne pas tenter d’aller plus loin. Idem dans la vérification des fichiers de configuration.
          L’onduleur est bien raccordé sur un port de la machine concernée ?
          $ lsusb

          Merci Nicosss pour ta patience.
          Tout me semble correct, sauf la variable “maxretry=3” qui ne figure pas sur la documentation. Dois je la retirer ?
          Voici les résultats:

          $ lsusb
          Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
          Bus 001 Device 002: ID 413c:2111 Dell Computer Corp. [unknown]
          Bus 001 Device 003: ID 046d:0824 Logitech, Inc. [unknown]
          Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
          Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
          Bus 003 Device 002: ID 0461:4e22 Primax Electronics, Ltd Dell Mouse, 2 Buttons, Modell: MS111-P
          Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
          Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
          Bus 005 Device 002: ID 0463:ffff MGE UPS Systems UPS
          Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
          # grep ^MODE /etc/ups/nut.conf
          MODE=standalone
          # grep -v '^#' /etc/ups/ups.conf
          
          maxretry = 3
          
          [eaton3s]
          driver = usbhid-ups
          port = auto
          # grep -v '^#' /etc/ups/upsmon.conf | egrep -v '^$'
          MONITOR eaton3s@localhost 1 monuser pass master  
          MINSUPPLIES 1
          SHUTDOWNCMD "/sbin/shutdown -h +0"
          POLLFREQ 5
          POLLFREQALERT 5
          HOSTSYNC 15
          DEADTIME 15
          POWERDOWNFLAG /etc/killpower
          NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC
          NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC
          NOTIFYCMD "/etc/ups/shutdown-script" 
          RBWARNTIME 43200
          NOCOMMWARNTIME 300
          FINALDELAY 5
          # grep -v '^#' /etc/ups/upsd.users | egrep -v '^$'
          [*******]
          password=******
          upsmon master
          # cat /etc/ups/shutdown-script
          \#!/bin/bash
          PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/sbin:/usr/local/bin
          
          trap "exit 0" SIGTERM
          
          notify() {
          notify-send -u $2 "$0: $1"
          }
          
          if [ "$NOTIFYTYPE" = "ONLINE" ]; then
          notify "power restored" critical
          killall -s SIGTERM `basename $0`
          fi
          
          if [ "$NOTIFYTYPE" = "ONBATT" ]; then
          notify "3 minutes until shutdown" critical
          let "n = 18"
          while [ $n -ne 0 ]
                  do
                          sleep 10
                          let "n--"
                          notify "$(( $n \* 10 )) seconds until to shutdown" low
          done
          notify "commencing shutdown" critical
          upsmon -c fsd
          fi
          #

          a+
          pll

          Edit Nicosss : Correction balises Markdown + Séparation blocs -> Voir FAQ

            En remplaçant “nut-driver” par “nut-driver.target”, j’arrive au résultat suivant après redémarrage:

            $ systemctl status nut-driver.target nut-monitor nut-server
            ○ nut-driver.target - Network UPS Tools - target for power device drivers on th>
                 Loaded: loaded (/usr/lib/systemd/system/nut-driver.target; enabled; preset>
                 Active: inactive (dead)
            
            ○ nut-monitor.service - Network UPS Tools - power device monitor and shutdown c>
                 Loaded: loaded (/usr/lib/systemd/system/nut-monitor.service; enabled; pres>
                Drop-In: /usr/lib/systemd/system/service.d
                         └─10-timeout-abort.conf
                 Active: inactive (dead)
            
            ○ nut-server.service - Network UPS Tools - power devices information server
                 Loaded: loaded (/usr/lib/systemd/system/nut-server.service; enabled; prese>
                Drop-In: /usr/lib/systemd/system/service.d
                         └─10-timeout-abort.conf
                 Active: inactive (dead)
            lines 1-15/15 (END)

            Tout est bien chargé, mais inactif😙.
            L’étape suivante donne ceci:

            # upsc eaton3s
            Error: Connection failure: Connection refused
            # 

            Je continue de chercher…
            a+
            pll

            pierrotlalune Bon, l’idée est quand même de savoir ce que tu fais.

            pierrotlalune Bus 005 Device 002: ID 0463:ffff MGE UPS Systems UPS

            Là on a ton onduleur qui est bien raccordé en USB.

            Dans /etc/ups/nut.conf , à voir s’il ne faut pas mettre plus tard pour essayer
            MODE=none

            Dans /etc/ups/ups.conf , pas de souci avec le maxretry = 3 mais j’ajouterai des paramètres pour identifier ton onduleur

            [eaton3s]
            driver = usbhid-ups
            port = auto
            vendorid = 0463
            desc = "Eaton 3S"

            Ensuite tu redémarres le service
            # systemctl restart nut-server.service

            Tu t’assures que ça fonctionne bien
            # systemctl status nut*

            Tu testes
            # upsc eaton3s

              Si je redémarre les services correspondant:

              # systemctl start nut-driver.target nut-monitor nut-server

              Alors le test:

              # upsmon -c fsd

              est concluant. Mais pas la commande:

              # upsc eaton3s

              A ce stade, j’aimerais trouver la solution pour que les services cités plus haut demeurent actifs après redémarrage.
              Une idée. Merci.
              pll

                Nicosss
                OK Nicosss, j’ai suivi tes consignes:

                # grep ^MODE /etc/ups/nut.conf
                MODE=none
                # grep -v '^#' /etc/ups/ups.conf
                  maxretry = 3
                 [eaton3s]
                   driver = usbhid-ups
                   port = auto
                   vendorid = 0463
                   desc = "Eaton 3S"
                # systemctl restart nut-server.service
                # systemctl status nut*
                ● nut-driver.target - Network UPS Tools - target for power device drivers on th>
                     Loaded: loaded (/usr/lib/systemd/system/nut-driver.target; enabled; preset>
                     Active: active since Sun 2023-11-12 18:39:59 CET; 20s ago
                
                nov. 12 18:39:59 fedora.home systemd[1]: Reached target nut-driver.target - Net>
                
                ● nut-server.service - Network UPS Tools - power devices information server
                     Loaded: loaded (/usr/lib/systemd/system/nut-server.service; enabled; prese>
                    Drop-In: /usr/lib/systemd/system/service.d
                             └─10-timeout-abort.conf
                     Active: active (running) since Sun 2023-11-12 18:39:59 CET; 20s ago
                   Main PID: 5312 (upsd)
                      Tasks: 1 (limit: 18865)
                     Memory: 940.0K
                        CPU: 5ms
                     CGroup: /system.slice/nut-server.service
                             └─5312 /usr/sbin/upsd -F
                
                nov. 12 18:39:59 fedora.home nut-server[5312]: fopen /run/nut/upsd.pid: No such>
                nov. 12 18:39:59 fedora.home nut-server[5312]: Could not find PID file '/run/nu>
                nov. 12 18:39:59 fedora.home nut-server[5312]: listening on 127.0.0.1 port 3493
                nov. 12 18:39:59 fedora.home upsd[5312]: listening on 127.0.0.1 port 3493
                nov. 12 18:39:59 fedora.home upsd[5312]: listening on ::1 port 3493
                lines 1-23
                # upsc eaton3s
                Error: Driver not connected

                Merci Nicosss
                a+
                pll

                  Nicosss Il faudrait connaitre leur état déjà !
                  # systemctl status nut*

                  Eh bien, après un redémarrage, rien !

                  # systemctl status nut*
                  # 

                  Edit Nicosss : Correction balises Markdown -> Voir FAQ

                    Oui mais start ou restart c’est pas pareil que enable.

                    pierrotlalune C’est normal, avant d’activer des services il faut s’assurer que ça fonctionne pour éviter de se mettre en difficulté pour rien.

                    Je te laisse consulter https://doc.fedora-fr.org/wiki/Systemd pour mieux comprendre ce que tu fais.
                    Mais pour le moment ça ne fonctionne pas.

                    pierrotlalune Les messages sont encore tronqués pour les status .

                    Que retournes la commande ci-après après avoir juste fait
                    # systemctl restart nut-server.service

                    # journalctl -u nut-server.service -b 0

                    Voici:

                    $ su -
                    Mot de passe : 
                    [root@fedora ~]# systemctl restart nut-server.service
                    [root@fedora ~]# journalctl -u nut-server.service -b 0
                    nov. 12 19:51:04 fedora.home systemd[1]: Started nut-server.service - Network U>
                    nov. 12 19:51:04 fedora.home nut-server[3448]: fopen /run/nut/upsd.pid: No such>
                    nov. 12 19:51:04 fedora.home nut-server[3448]: Could not find PID file '/run/nu>
                    nov. 12 19:51:04 fedora.home nut-server[3448]: listening on 127.0.0.1 port 3493
                    nov. 12 19:51:04 fedora.home upsd[3448]: listening on 127.0.0.1 port 3493
                    nov. 12 19:51:04 fedora.home upsd[3448]: listening on ::1 port 3493
                    nov. 12 19:51:04 fedora.home nut-server[3448]: listening on ::1 port 3493
                    nov. 12 19:51:04 fedora.home nut-server[3448]: Can't connect to UPS [eaton3s] (>
                    nov. 12 19:51:04 fedora.home upsd[3448]: Can't connect to UPS [eaton3s] (usbhid>
                    nov. 12 19:51:04 fedora.home nut-server[3448]: Running as foreground process, n>
                    nov. 12 19:51:04 fedora.home upsd[3448]: Running as foreground process, not sav>
                    lines 1-11/11 (END)

                      pierrotlalune Il manque toujours la suite des logs (présence de >) donc c’est encore inexploitable.

                      Dans ton terminal tu as la même chose ?

                      Sinon tente la commande suivante et donne le lien
                      # journalctl -u nut-server.service -b 0 | fpaste