NEWS
Akku Zustand Proxmox Laptop abfragen
-
Ich habe auch mal eine Frage dazu. Ich habe eben noch einen Raspi4 mit iobroker und spiele mit dem Gedanken oder besser gesagt es ist schon alles vorbereitet auf meinen alten Laptop mit Proxmox zu arbeiten. Das funktioniert so weit auch super, aber ich würde gerne den Laptop nicht dauerhaft am Strom lassen, sondern über eine schaltbare Steckdose bei einer bestimmten Prozentzahl des Akkus Strom an und bei 100 Prozent wieder ausschalten.
Ich habe in der Konsole bei ausgeschaltetem Netzteil acpi --ac-adapter --battery eingegeben und folgendes Ergebnis bekommen.Ich würde dieses aber gerne mit einem Blockly verarbeiten können. Leider weiß ich nicht, wie man im ioBroker an diese Daten kommt oder ob man sie überhaupt sichtbar machen kann.
Vielleicht hat jemand einen Tipp für mich.
Danke
Edit:
Ich habe mir mal den Proxmox Adapter installiert. Der liest alles mögliche aus, aber bedauerlicherweise nicht den Akkustand. -
@biker1602 Vielleicht mit Linux Control Adapter und dann diesen Zeilen:
acpitool -b | grep "Battery" | awk ' {print $5}' | sed 's/%,//g' acpitool -a
Ergibt bei mir so was:
-
@wendy2702
Sag mal was muss hier rein?
Ich habe den Adapter installiert, dann in der Konsole mal ausgeführt, mit folgendem Ergebnis
acpitool -a
74.65
AC adapter : off-line
root@iobroker:~# -
@biker1602 Müssen tut da nichts rein. Es kann etwas eingetragen werden wenn du keinen Login via User/PW machen möchtest.
User und PW müssen existieren und natürlich die rechte zum ausführen haben.
root@iobroker:~#
Lege dir doch bitte einen eigenen User an und fummel nicht als "root" rum
-
@wendy2702 said in Akkustand vom Laptop auslesen:
Lege dir doch bitte einen eigenen User an und fummel nicht als "root" rum
Das habe ich nicht selber gemacht. Ich habe Proxmox installiert, dann als LXC Container Ubuntu und den iobroker installiert.
Sag mal, die IP-Adresse ist doch vom LXC Container oder vom Proxmox Server?
Unter Objekte sagt er nämlich. is_online als false. -
@biker1602 Egal wie installiert legt man sich einen User an und arbeitet nicht als "root"
Adresse muss die vom Proxmox Server sein.
-
auf dem iob server den simple api adapter installieren
dann in crontab -e jede minute einen befehl ausführen
der befehl ist ein bash script, welches die "80 %" ausliest und über curl an den simple api sendet - das script muss "ausführbar" gemacht werdenbeispiel script (ungetestet) und in crontab aufrufen
#!/bin/bash batt=`acpi --ac-adapter --battery| grep Battery -m 1 | awk '{print $4}' | sed 's/%//g'` curl "http://192.168.178.59:8087/set/0_userdata.0.CONTROL-OWN.mount.Batt?value=$batt"
-
@liv-in-sky das bekomne ich nicht so hin. Da bin ich nicht fit genug in Sachen Linux. Unter dem Proxmox Adapter funktioniert die Verbindung aber unter dem Linux Adapter bekomme ich keine Verbindung.
-
@biker1602 wie wäre es einfach mal wenn Du nochmal folgendes machst:
@wendy2702 sagte in Akkustand vom Laptop auslesen:
@biker1602 Vielleicht mit Linux Control Adapter und dann diesen Zeilen:
acpitool -b | grep "Battery" | awk ' {print $5}' | sed 's/%,//g' acpitool -a
Ergibt bei mir so was:
Wo liegt denn da das Problem ??????
-
@biker1602 sagte in Akkustand vom Laptop auslesen:
aber unter dem Linux Adapter bekomme ich keine Verbindung.
Wenn du ein Terminal auf IOB auf hast, kannst du dich mit dem User/Passwort per SSH auf dem Proxmox Host einloggen?
Kannst du von iob den Proxmox Host per PING erreichen?
-
@wendy2702
Ich habe jetzt im iobroker einen Terminal Adapter installiert und folgenden Befehl eingegeben und er hat mir Akkustand und Netzteil angeschlossen angezeit./opt/iobroker$ acpi --ac-adapter --battery Battery 0: Full, 100% Adapter 0: on-line /opt/iobroker$
Das komische ist, wenn ich unter Objekte bei Ping die Geräte sehe, stehen alle bei "false" und ich komme im Terminal mit Ping und der IP-Adresse nicht einmal auf die Fritzbox. Liegt es an Proxmox, weil iobroker in einem LXC Container läuft? Ich habe den mit Proxmox ja erst nur nebenbei auf einem ausrangierten Laptop installiert, da ich noch nie davor etwas mit Proxmox zu tun hatte und der Raspi noch als Hauptserver läuft. Ich wollte es halt erst testen, bevor ich komplett umziehe. Mit meinem Raspi 4 mit 4GB bin ich an die Grenzen nach der Installation auf Debian 11 Bullseye gekommen. Da musste ich wieder zurück auf Version 10.
-
@biker1602 OK. Das mit dem Terminal war zwar anders gemeint aber auch gut.
Wenn du einen Container verwendet hast kommt es drauf an wie der eingerichtet wurde und ob die Firewall auch aktiviert wurde. Das wären Möglichkeiten warum andere Sachen nicht erreichbar sind.
Wenn du jetzt den LinuxControl Adapter so wie in meinem Screenshots mit der IP von ioBroker Container und den Login daten konfigurierst, was kommt dann im Logfile wenn die Abfrage gemacht wird.
Das Loggen für den Adapter bitte auf Debug stellen.
-
@wendy2702
So ich habe in Proxmox die Firewall deaktiviert im LXC Container mit iobroker war die Firewall aus, Proxmox und iobroker neu gestartet den Adapter auf debug gestellt mit folgendem Ergebnis.2023-01-13 07:25:28.749 - info: linux-control.0 (1108) Got terminate signal TERMINATE_YOURSELF 2023-01-13 07:25:28.750 - info: linux-control.0 (1108) cleaned everything up... 2023-01-13 07:25:28.751 - info: linux-control.0 (1108) terminating 2023-01-13 07:25:28.751 - debug: linux-control.0 (1108) Plugin sentry destroyed 2023-01-13 07:25:28.751 - info: linux-control.0 (1108) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2023-01-13 07:25:32.873 - debug: linux-control.0 (1225) Redis Objects: Use Redis connection: 127.0.0.1:9001 2023-01-13 07:25:32.962 - debug: linux-control.0 (1225) Objects client ready ... initialize now 2023-01-13 07:25:32.964 - debug: linux-control.0 (1225) Objects create System PubSub Client 2023-01-13 07:25:32.965 - debug: linux-control.0 (1225) Objects create User PubSub Client 2023-01-13 07:25:33.173 - debug: linux-control.0 (1225) Objects client initialize lua scripts 2023-01-13 07:25:33.178 - debug: linux-control.0 (1225) Objects connected to redis: 127.0.0.1:9001 2023-01-13 07:25:33.258 - debug: linux-control.0 (1225) Redis States: Use Redis connection: 127.0.0.1:9000 2023-01-13 07:25:33.337 - debug: linux-control.0 (1225) States create System PubSub Client 2023-01-13 07:25:33.338 - debug: linux-control.0 (1225) States create User PubSub Client 2023-01-13 07:25:33.542 - debug: linux-control.0 (1225) States connected to redis: 127.0.0.1:9000 2023-01-13 07:25:33.956 - debug: linux-control.0 (1225) Plugin sentry Initialize Plugin (enabled=true) 2023-01-13 07:25:34.133 - warn: linux-control.0 (1225) Object linux-control.0.command.host is invalid: obj.common.states has an invalid type! Expected "object", received "string" 2023-01-13 07:25:34.134 - warn: linux-control.0 (1225) This object will not be created in future versions. Please report this to the developer. 2023-01-13 07:25:34.140 - info: linux-control.0 (1225) starting. Version 1.1.3 in /opt/iobroker/node_modules/iobroker.linux-control, node: v16.19.0, js-controller: 4.0.24 2023-01-13 07:25:34.177 - warn: linux-control.0 (1225) Object linux-control.0.command.host is invalid: obj.common.states has an invalid type! Expected "object", received "string" 2023-01-13 07:25:34.177 - warn: linux-control.0 (1225) This object will not be created in future versions. Please report this to the developer. 2023-01-13 07:25:34.186 - info: linux-control.0 (1225) getting data from Linux (192.168.57.210:22, Adapter start) 2023-01-13 07:25:34.203 - info: linux-control.0 (1225) [getConnection] Host 'Linux' (192.168.57.210:22) seems not to be online 2023-01-13 07:25:34.203 - debug: linux-control.0 (1225) [getConnection] Host 'Linux' (192.168.57.210:22) ping result: {"inputHost":"192.168.57.210","host":"unknown","alive":false,"output":"","time":"unknown","times":[],"min":"unknown","max":"unknown","avg":"unknown","stddev":"unknown","packetLoss":"unknown"} 2023-01-13 07:25:34.390 - debug: linux-control.0 (1225) [refreshHost] Linux (192.168.57.210:22): button 'linux-control.0.Linux.refresh' subscribed
Beim Ping Adapter das gleiche alle false
Per Putty komme ich auf den ioBroker -
@biker1602 sagte in Akkustand vom Laptop auslesen:
192.168.57.210
Welche IP ist das?
Wurden Objekte angelegt und befüllt?
Wie sieht der Container aus:
Nochmal, wenn du mit Putty auf ioBroker bist kannst du den acpi Befehl ausführen ? Wenn ja was ist davon die Ausgabe?
Wenn du mit Putty auf iobroker bist kannst du dich von da per SSH auf Proxmox anmelden:
ssh <dein user>@<deine Proxmox IP>
Und noch was anderes, vielleicht einfacher: Warum nimmst du den Akku nicht einfach aus dem Rechner wenn das geht. Wäre mir sicherer als Strom aus/an. Wenn das mal nicht sauber funktioniert liegt der Server flach.
-
@wendy2702
die 192.168.78.210 ist die IP vom Iobroker.
Wurden Objekte angelegt und befüllt? Da weiß ich leider nicht, was du meinst.So sieht der Container aus.
Wenn ich mich mit Putty auf den iobroker einlogge und dann auf den Proxmox möchte kommt folgende Meldung
The authenticity of host '192.168.57.3 (192.168.57.3)' can't be established. ED25519 key fingerprint is SHA256:si4tobOJn0oRIAMljoYi/KTHtv0sMMYRwLLGvkhdUsA. This key is not known by any other names Are you sure you want to continue connecting (yes/no/[fingerprint])?
wenn ich bei Putty in der Konsole den Befehl eingebe, bekomme ich folgende Rückmeldung
acpi --ac-adapter --battery
Battery 0: Discharging, 75%, 03:16:38 remaining
Adapter 0: off-line
root@iobroker:~# -
@wendy2702 said in Akkustand vom Laptop auslesen:
Wurden Objekte angelegt und befüllt?
Du meinst im Iobroker richtig?
Unter Objekte bei Proxmox wurde alles befüllt.
Unter Linux Objekte allerdings nicht
-
@biker1602 sagte in Akkustand vom Laptop auslesen:
wenn ich bei Putty in der Konsole den Befehl eingebe, bekomme ich folgende Rückmeldung
acpi --ac-adapter --battery
Battery 0: Discharging, 75%, 03:16:38 remaining
Adapter 0: off-line
root@iobroker:~#OK.
BITTE RICHTE DIR EINEN USER EIN
adduser <dein Username> usermod -aG sudo <dein Username>
Falls Sudo nicht installiert ist:
apt install sudo
dann als root ausloggen und als dein User anmelden.
Da du als root gearbeitet hast kann es sein das Rechte nicht passen. Bitte mal
iob fix
ausführen und die vollständige ausgabe posten.
Welche IP Hat denn jetzt iobroker?
@biker1602 sagte in Akkustand vom Laptop auslesen:
die 192.168.78.210 ist die IP vom Iobroker.
oder doch
192.168.57.210 ?
Bei der Abfrage per ssh auf den Host einfach mit "yes" bestätigen.
Dann mal dort dein "acpi" Befehl eingeben und schauen was kommt.
-
@wendy2702 said in Akkustand vom Laptop auslesen:
192.168.57.210 ?
Bei der Abfrage per ssh auf den Host einfach mit "yes" bestätigen.
Dann mal dort dein "acpi" Befehl eingeben und schauen was kommt.die ist richtig das andere war ein Schreibfehler von mir.
nach der Bestätigung mit yes musste ich das Passwort für Proxmox eingeben und war dann auf Proxmox drauf den Befehl "acpi --ac-adapter --battery"
eingebe, bekomme ich als Rückmeldung command not found -
@biker1602 Dann ist das tool dort nicht installiert.
Was ist mit den anderen sachen die ich geschrieben hatte?
-
@wendy2702
So den User geändert neu eingeloggt und dann iobroker fix gestartet
danachlogin as: biker1602 biker1602@192.168.57.210's password: Welcome to Ubuntu 22.04.1 LTS (GNU/Linux 5.15.83-1-pve x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage Last login: Fri Jan 13 10:14:09 2023 biker1602@iobroker:~$ acpi --ac-adapter --battery Battery 0: Discharging, 44%, 02:30:33 remaining Adapter 0: off-line biker1602@iobroker:~$
im Linux Adapter den Benutzer gewechselt, aber es hat sich nichts geändert.