Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: UPS  (Přečteno 6951 krát)

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
UPS
« kdy: 14 Srpna 2025, 22:06:53 »
Zdravím, mám nainstalovaný Ubuntu Server 25.04 čistě jen terminál bez GUI. A potřebovala bych nastavit UPS, aby se to v případě přepnutí na baterii vypnulo buď po předem nastavené době nebo lépe po poklesu kapacity baterie na nějakou hodnotu, třeba 20%. UPS je značky Cyberpower a komunikuje přes USB. Synology NAS s ní umí pracovat perfektně, takže to musí zvládnout jakýkoliv Linux (DSM je taky Linux). Ale Google moc neradí. Poradíte? Díky.

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #1 kdy: 14 Srpna 2025, 22:25:50 »
Podle tohohle https://github.com/bjonnh/cyberpower-usb-watcher by to mela byt trivialita. Vypadá to, ze se ta UPSka chova podle standardu USB HID. Jaky konkretni typ mas? Treba by se dalo dohledat vice.
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #2 kdy: 14 Srpna 2025, 22:38:36 »
Konkrétně mám tuhle: https://www.alza.cz/cyberpower-vp1000elcd-fr-d6251440.htm

A právě Synology NAS ji vidí bez problémů a podle nastavení funguje správně, vypne se buď po nastavené době nebo při dosažené kapacity baterie. A na Macu funguje bez nutnosti jakékoliv instalace SW, stejně jako APC, takže nejspíš používá nějaký standardní komunikační protokol.

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #3 kdy: 14 Srpna 2025, 23:16:21 »
Tak podle google to komunikuje standardem USB HID. Takze muzes pouzit to prve co jsem ti odkazal nebo NUT https://github.com/networkupstools/nut
Ja bych sel do toho prvniho, protoze mensi footprint. Dyk vis, ja jsem minimalsta.
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #4 kdy: 15 Srpna 2025, 11:22:05 »
Tak jsem nainstalovala požadovaný balíček libhidapi-libusb0 a zadala jsem tohle:

Kód: [Vybrat]
virtualenv --python=python3 venv
source venv/bin/activate
pip install -r requirements.txt
./server.py


a vyhodilo mi to tohle:

Kód: [Vybrat]
virtualenv --python=python3 venv
source venv/bin/activate
pip install -r requirements.txt
./server.py
virtualenv: command not found
-bash: venv/bin/activate: No such file or directory
Command 'pip' not found, did you mean:
  command 'wip' from snap wip (1.5.0)
  command 'rip' from deb exult-studio (1.10.1-3)
  command 'pic' from deb groff-base (1.23.0-7)
  command 'zip' from deb zip (3.0-14ubuntu2)
  command 'ip' from deb iproute2 (6.13.0-1ubuntu1)
  command 'php' from deb php-cli (2:8.4+96ubuntu1)
  command 'php' from deb php8.4-cli (8.4.5-1ubuntu1)
See 'snap info <snapname>' for additional versions.
-bash: ./server.py: No such file or directory

A jsem v koncích, protože vůbec netuším, co to po mě chce...

edit: jestli by možná nebylo lepší použít SW přímo od výrobce https://www.cyberpower.com/global/en/product/sku/powerpanel_for_linux , ale otázka zní, jak to tam dostat, jsem připojená přes SSH a mám tam jenom terminál, žádné GUI.
« Poslední změna: 15 Srpna 2025, 11:25:57 od Abby »

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #5 kdy: 18 Srpna 2025, 18:17:01 »
Tak jsem si přečetl něco o tom. Pro Tebe asi bude nejjednodušší nainstalovat nut
Kód: [Vybrat]
sudo apt update
sudo apt install nut nut-client nut-server
A pak editovat pět souborů:
  • /etc/nut/ups.conf
Kód: [Vybrat]
[cyberpower]
    driver = usbhid-ups
    port = auto
    desc = "CyberPower VP1000ELCD-FR"
  • /etc/nut/upsd.conf
Kód: [Vybrat]
LISTEN 127.0.0.1 3493
LISTEN IPadresaServeruKterouMuPřidělilRouter 3493
MAXAGE 15
  • /etc/nut/upsd.users
Kód: [Vybrat]
[upsmon]
    password = monitor_heslo_který_si_vymyslíš
    upsmon master
  • /etc/nut/upsmon.conf
Kód: [Vybrat]
MONITOR cyberpower@localhost 1 upsmon monitor_heslo_který_si_vymyslíš master

SHUTDOWNCMD "/sbin/shutdown -h now"

MINSUPPLIES 1
FINALDELAY 5

NOTIFYFLAG ONBATT SYSLOG+WALL
NOTIFYFLAG LOWBATT SYSLOG+WALL
NOTIFYFLAG ONLINE SYSLOG+WALL
  • /etc/nut/nut.conf
Kód: [Vybrat]
MODE=standalone
Pak už jen start a kontrola služeb:
Kód: [Vybrat]
sudo systemctl enable --now nut-driver
sudo systemctl enable --now nut-server
sudo systemctl enable --now nut-monitor

systemctl status nut-driver nut-server nut-monitor
journalctl -u nut-driver -u nut-server -u nut-monitor -e

upsc cyberpower@localhost ups.status
Tohle nastavení by ti mělo fungovat tak nějak v základu podle toho co je nastaveno na UPSce. Samozřejmě jde to UPS nastavení i přepsat v těch konfigurákách. Takhle bys mohla z jakéhokoliv zařízení v domácí síti vidět textový výstup stavu UPSky. Pokud o těch pár textových řádků nestojíš, vynech v /etc/nut/upsd.conf tento řádek "LISTEN IPadresaServeruKterouMuPřidělilRouter 3493"
Pokud to chceš sledovat i pěkně v grafice na jakémkoliv zařízení na síti, bude třeba ještě něco doinstalovat a pohrát si s dalšíma konfigurákama.
« Poslední změna: 18 Srpna 2025, 18:57:55 od ramael »
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #6 kdy: 18 Srpna 2025, 20:48:00 »
Tak jsem se dostala až ke spuštění služeb a tvrdí mi to toto:

Kód: [Vybrat]
sudo systemctl enable --now nut-driver
Failed to enable unit: Unit nut-driver.service does not exist

A určitě jsem nic nevynechala a udělala jsem všechno podle tvého návodu...

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #7 kdy: 18 Srpna 2025, 20:51:56 »
Tak tuhle radku zkus vynechat. Dulezite je co bude psat ten posledni prikaz.
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #8 kdy: 18 Srpna 2025, 20:53:56 »
Jasný. Tak poslední příkaz píše toto:

Kód: [Vybrat]
upsc cyberpower@localhost ups.status
Init SSL without certificate database
Error: Driver not connected

A předtím příkaz:

Kód: [Vybrat]
systemctl status nut-driver nut-server nut-monitor
Unit nut-driver.service could not be found.
● nut-server.service - Network UPS Tools - power devices information server
     Loaded: loaded (/usr/lib/systemd/system/nut-server.service; enabled; preset: enabled)
     Active: active (running) since Mon 2025-08-18 18:51:24 UTC; 3min 46s ago
 Invocation: eefa87cd8c304b93ac614097cd49701e
   Main PID: 1083 (upsd)
      Tasks: 1 (limit: 3824)
     Memory: 1M (peak: 1.6M)
        CPU: 56ms
     CGroup: /system.slice/nut-server.service
             └─1083 /lib/nut/upsd -F

srp 18 18:51:24 leviathan upsd[1083]: Can't connect to UPS [cyberpower] (usbhid-ups-cyberpower): No such file or directory
srp 18 18:51:24 leviathan nut-server[1083]: Can't connect to UPS [cyberpower] (usbhid-ups-cyberpower): No such file or directory
srp 18 18:51:24 leviathan nut-server[1083]: Found 1 UPS defined in ups.conf
srp 18 18:51:24 leviathan upsd[1083]: Found 1 UPS defined in ups.conf
srp 18 18:51:24 leviathan nut-server[1083]: Running as foreground process, not saving a PID file
srp 18 18:51:24 leviathan nut-server[1083]: upsnotify: failed to notify about state 2: no notification tech defined, will not spam more about it
srp 18 18:51:24 leviathan upsd[1083]: Running as foreground process, not saving a PID file
srp 18 18:51:24 leviathan upsd[1083]: upsnotify: failed to notify about state 2: no notification tech defined, will not spam more about it
srp 18 18:51:25 leviathan upsd[1083]: User upsmon@127.0.0.1 logged into UPS [cyberpower]
srp 18 18:51:25 leviathan nut-server[1083]: User upsmon@127.0.0.1 logged into UPS [cyberpower]

● nut-monitor.service - Network UPS Tools - power device monitor and shutdown controller
     Loaded: loaded (/usr/lib/systemd/system/nut-monitor.service; enabled; preset: enabled)
     Active: active (running) since Mon 2025-08-18 18:51:24 UTC; 3min 46s ago
 Invocation: d3e5870e4988442c8181ce6dc479979c
   Main PID: 1090 (upsmon)
      Tasks: 2 (limit: 3824)
     Memory: 3.7M (peak: 4.6M)
        CPU: 59ms
     CGroup: /system.slice/nut-monitor.service
             ├─1090 /lib/nut/upsmon -F
             └─1097 /lib/nut/upsmon -F

srp 18 18:54:25 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:54:30 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:54:35 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:54:40 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:54:45 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:54:50 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:54:55 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:55:00 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:55:05 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
srp 18 18:55:10 leviathan nut-monitor[1097]: Poll UPS [cyberpower@localhost] failed - Driver not connected
« Poslední změna: 18 Srpna 2025, 20:55:37 od Abby »

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #9 kdy: 18 Srpna 2025, 21:02:34 »
Kód: [Vybrat]
sudo upsdrvctl startA pak zase
Kód: [Vybrat]
upsc cyberpower@localhost ups.status
Jsem na mobilu tak to neformatuju.
« Poslední změna: 19 Srpna 2025, 20:20:57 od ramael »
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #10 kdy: 18 Srpna 2025, 21:04:29 »
To nevadí, vyznám se v tom a rozhodně moc díky 👍🏻

Kód: [Vybrat]
sudo upsdrvctl start
Network UPS Tools - UPS driver controller 2.8.1
Network UPS Tools - Generic HID driver 0.52 (2.8.1)
USB communication driver (libusb 1.0) 0.46

Fatal error: 'maxretry' is not a valid variable name for this driver.

Look in the man page or call this driver with -h for a list of
valid variable names and flags.
upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #11 kdy: 18 Srpna 2025, 21:11:14 »
Sakra. Co vypise tohle?
Kód: [Vybrat]
grep -R "maxretry" -n /etc/nut
« Poslední změna: 19 Srpna 2025, 20:21:13 od ramael »
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #12 kdy: 18 Srpna 2025, 21:24:50 »
Kód: [Vybrat]
sudo grep -R "maxretry" -n /etc/nut
/etc/nut/ups.conf:48:#    maxretry: OPTIONAL.  Specify the number of attempts to start the driver(s),
/etc/nut/ups.conf:57:#              driver(s), as specified by 'maxretry'. Caution should be taken
/etc/nut/ups.conf:79:# Set maxretry to 3 by default, this should mitigate race with slow devices:
/etc/nut/ups.conf:80:maxretry = 3
/etc/nut/ups.conf:93:#                driver if `maxretry>1`, or trying another driver if

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #13 kdy: 18 Srpna 2025, 21:29:06 »
Tak smaz 80 radek v /etc/nut/ups.conf
Je tam toto: maxretry = 3
Pak dej
Kód: [Vybrat]
sudo upsdrvctl stop
sudo upsdrvctl start
A pak opet
Kód: [Vybrat]
upsc cyberpower@localhost ups.status
« Poslední změna: 19 Srpna 2025, 20:21:41 od ramael »
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #14 kdy: 18 Srpna 2025, 21:31:08 »
Kód: [Vybrat]
sudo upsdrvctl stop
Network UPS Tools - UPS driver controller 2.8.1
Can't open /run/nut/usbhid-ups-cyberpower.pid: No such file or directory
Can't open /run/nut/usbhid-ups-auto.pid either: No such file or directory

Kód: [Vybrat]
sudo upsdrvctl start
Network UPS Tools - UPS driver controller 2.8.1
Network UPS Tools - Generic HID driver 0.52 (2.8.1)
USB communication driver (libusb 1.0) 0.46
libusb1: Could not open any HID devices: insufficient permissions on everything
No matching HID UPS found
upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it
Driver failed to start (exit status=1)

Mimochodem existuje v nano nějaká snadná možnost, jak vybrat veškerý text a vymazat ho? Nebo nějaký editor pro terminál, který by měl normální klávesové zkratky a fungovalo třeba CTRL+A?
« Poslední změna: 18 Srpna 2025, 21:33:35 od Abby »

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #15 kdy: 18 Srpna 2025, 21:49:13 »
Problem s opravnenim. Copak napise toto
Kód: [Vybrat]
lsusb | grep -i cyber
« Poslední změna: 19 Srpna 2025, 20:22:02 od ramael »
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #16 kdy: 18 Srpna 2025, 21:53:52 »
Nenapíše to nic.

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #17 kdy: 18 Srpna 2025, 22:00:23 »
Blbe se zeptam. Mas tu UPS pripojenou USBeckem k tomu PC?
Pokud ano odpoj ji. Pak spust
Kód: [Vybrat]
sudo udevadm monitor --kernel --udev --property --subsystem-match=usbA opet UPS pripoj. Co to vypise sem postni.
« Poslední změna: 19 Srpna 2025, 20:22:28 od ramael »
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #18 kdy: 18 Srpna 2025, 22:16:00 »
To byla náhodou moc dobrá otázka. Omlouvám se. Připojenou UPS kabelem mám, ale při manipulaci se mi povytáhl konektor a nevšimla jsem si toho.

Teď to píše:
Kód: [Vybrat]
sudo lsusb | grep -i cyber
Bus 001 Device 003: ID 0764:0501 Cyber Power System, Inc. CP1500 AVR UPS

ale
Kód: [Vybrat]
upsc cyberpower@localhost ups.status
Init SSL without certificate database
Error: Driver not connected

edit: po restartu to píše toto:
Kód: [Vybrat]
upsc cyberpower@localhost ups.status
Init SSL without certificate database
OL
« Poslední změna: 18 Srpna 2025, 22:26:38 od Abby »

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #19 kdy: 18 Srpna 2025, 22:37:40 »
Takze to pada na pravech. Nejspis.
Tak tam tohle cele nakopiruj a odentruj
Kód: [Vybrat]
sudo tee /etc/udev/rules.d/99-nut-cyberpower.rules >/dev/null <<'EOF'
SUBSYSTEM=="usb", ATTR{idVendor}=="0764", ATTR{idProduct}=="0501", MODE="0660", GROUP="nut"
EOF

sudo udevadm control --reload-rules
sudo udevadm trigger -s usb

A pak

Kód: [Vybrat]
sudo systemctl stop nut-monitor nut-server
sudo upsdrvctl stop
sudo upsdrvctl start
sudo systemctl start nut-server nut-monitor

upsc cyberpower@localhost ups.status

Jinak to "OL" co mam v emailu na konci prispevku znamena ze je UPS na siti. Jestli ten driver spadnul potom tak je problem jinde nez v pravech...
« Poslední změna: 19 Srpna 2025, 20:23:38 od ramael »
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #20 kdy: 18 Srpna 2025, 22:41:47 »
Tak jsem to všechno udělala a ups.status je:

Kód: [Vybrat]
upsc cyberpower@localhost ups.status
Init SSL without certificate database
OL

ramael

  • Stálý člen
  • **
  • Příspěvků: 845
Re:UPS
« Odpověď #21 kdy: 18 Srpna 2025, 22:49:35 »
Huraaa, funguje. Kdyz odpojis UPC od site, tak ti to napise ze to jde na baterku. Ted ti to vypne PC podle nastaveni v UPS.
Musim jit spat. Zitra napisu systemd sluzbu aby ti ten driver naskocil i po restartu PC. Nezapomen si v biosu nastavit aby ti PC po power on nastartoval.
Lenovo: ThinkPad X380 Yoga Joutůůůůb
Codeberg  GitHub

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #22 kdy: 18 Srpna 2025, 22:57:30 »
Jééé, mockrát děkuju ❤️

To nastavení UPS je konkrétně jak? Přímo v UPS se nic nenastavuje, ta jen ukazuje stav baterie, spotřebu, zatížení a výdrž v minutách. Jediné, co se na ní dá nastavit, je jestli bude pípat nebo bude potichu.

V biosu to nastavené mám, děkuju 🙂

Roman Vacho

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 6306
Re:UPS
« Odpověď #23 kdy: 19 Srpna 2025, 12:28:41 »
A proč že jste nepoužili ovladače výrobce? Vždyť ty ovladače se instalují z CLI. A dokonce k tomu máš i návod. Plus to umí e-maily a cloud.
Ale když ten Ramael je tak šikovný...
« Poslední změna: 19 Srpna 2025, 12:30:18 od Roman Vacho »
Vyřešená vlákna je vhodné uzavřít "Topic Solved" dole pod vláknem.

Prosím označit text kódu v editoru # pro lepší formátování textu případného výpisu. Děkuji.

Abby

  • Stálý člen
  • **
  • Příspěvků: 1498
Re:UPS
« Odpověď #24 kdy: 19 Srpna 2025, 12:34:18 »
To mě taky napadlo, ale neumím z terminálu stáhnout soubor. Navíc to Ramael opravdu dokázal vyřešit 👍🏻

edit: ještě potřebuju nastavit pravidla, jak se to na UPS má chovat a podle všeho, co psal Ramael, se to nespustí automaticky při startu systému, ale jinak je to super. Není důležité jak, ale že to funguje. A klobouk dolů před Ramaelem, já bych si poradit nedokázala...
« Poslední změna: 19 Srpna 2025, 15:16:05 od Abby »

 

Provoz zaštiťuje spolek OpenAlt.