Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Installation auf einem anderen Debian Linux System

Moderatoren: Ulrich, DeBaschdi

Forumsregeln
Bitte immer im Betreff die Hardware und die Softwareversion angeben! Für jede unterschiedliche Version einen eigenen Thread! Es gibt einfach unterschiedliche Probleme bei den einzelnen Versionen.
Benutzeravatar
mysolar123
Beiträge: 15
Registriert: Fr 17. Feb 2023, 16:10
Wohnort: BW
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von mysolar123 »

Hallo,

ich glaube ich muss hier mal einen neuen Thread aufmachen, denn ich komme leider nicht weiter.

Am laufen habe ich ein funktionierendes Proxmox System auf einem ThinClient.
Der LXC Container ist genestet, 512MB Ram, 8GB Festplatte, 1 Core. Installiert habe ich des nach der Basisanleitung von Ulrich:
viewtopic.php?t=4419
inkl. den Abweichungen von malau:
viewtopic.php?t=4499

Tolles Werk an beide. Laufen tut es. Ich hab auch den USB von dem ThinClient zu meinem Container durchgereicht via:
https://www.schreiners-it.de/proxmox/us ... oxmox-7-1/

Mein Dashboard importiert und ich bekomme das auch ans laufen. Ich sehe Daten in dem Dashboard, der Victron lässt sich auslesen.

Die PHP Logdatei habe ich auch in der CLI eingestellt wie hier beschrieben (diese war leer, darum dieser move)
viewtopic.php?t=3597

So, die Basiseinstellungen sind getan, soweit sehr zufrieden bis auf:

Code: Alles auswählen

cat /var/www/log/php.log
liefert folgendes:
[02-Jul-2024 18:57:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 18:58:02 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 18:59:02 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:00:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:01:02 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:02:02 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:03:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:04:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:05:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:06:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:07:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:08:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:09:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:10:02 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:11:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
[02-Jul-2024 19:12:01 UTC] PHP Warning: Undefined array key 1 in /var/www/html/victron_solarregler.php on line 56
das geht die ganze Zeit so, wenn ich in line 56 von dem Script reinschaue finde ich folgendes:

Code: Alles auswählen

//  Hardware Version ermitteln.
$Teile = explode( " ", $Platine );
if ($Teile[1] == "Pi") { // DAS IST ZEILE 56
  $Version = trim( $Teile[2] );
  if ($Teile[3] == "Model") {
    $Version .= trim( $Teile[4] );
    if ($Teile[5] == "Plus") {
      $Version .= trim( $Teile[5] );
    }
  }
}
$funktionen->log_schreiben( "Hardware Version: ".$Version, "o  ", 8 );
switch ($Version) {

  case "2B":
    break;

  case "3B":
    break;

  case "3BPlus":
    break;

  default:
    break;
}
ich habe ja keinen Raspberry, kann man diese Funktion deaktivieren? Ich hab leider wenig Ahnung von PHP (ich kann keine Quelltexte schreiben, nur teilweise verstehen)
cat /var/www/log/solaranzeige.php
liefert folgendes:
02.07. 19:24:02 |------------ Start victron_solarregler.php -----------------
02.07. 19:24:02 -Zentraler Timestamp: 1719948242
02.07. 19:24:02 -Produkt: A060
02.07. 19:24:06 * -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet.
02.07. 19:24:58 -OK. Datenübertragung erfolgreich.
02.07. 19:24:58 |------------ Stop victron_solarregler.php -----------------

Die Übertragung ist also ok, mir gefallen nur aus Prinzip keine Fehleinträge in Logdateien.

In der usb_init an Zeile 1250 ist auch eine Fehlermeldung:

Code: Alles auswählen

//  Auf welcher Platine läuft die Software?
$Platine_Neu = file_get_contents( "/sys/firmware/devicetree/base/model" );
if (!empty($USBDevice)) {
Das hängt auch mit der Platine (Raspberry zusammen...)


Und noch was, ich hab die tzdata eingestellt auf Berlin, um 21.24 bekomme ich in der Logdatei allerdings Einträge mit 19.24

Ein Befehl liefert:
Di 2. Jul 21:24:09 CEST 2024

Code: Alles auswählen

dpkg-reconfigure tzdata
liefert:
cal time is now: Tue Jul 2 21:30:01 CEST 2024.
Universal Time is now: Tue Jul 2 19:30:01 UTC 2024.


Ko mir do ebber helfe? :D
Balkonkraftwerk mit 2x 375 Wp, Victron MPPT100/20, 16S LFP CALB, OpenDTU onBattery (Nulleinspeisung der Effizienz wegen!), Hichi IR, Hoymiles HM-300, Solaranzeige 6XX @ Proxmox

malau
Beiträge: 19
Registriert: So 23. Apr 2023, 19:01
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von malau »

Der Fehler im Log kommt daher, das wir keinen Raspberry Pi verwenden.
In der /var/www/html/usb_init.php wird versucht den entsprechenden Wert auszulesen. Da hier aber nichts geschrieben werden kann, kommt es letztendlich zu dem von dir gefundenem Fehler.

Ich hab mal testweise folgende Änderung ab Zeile 1249 in der usb_init.php vorgenommen:

Code: Alles auswählen

//  Auf welcher Platine läuft die Software?
//$Platine_Neu = file_get_contents( "/sys/firmware/devicetree/base/model" );
$filename = "/sys/firmware/devicetree/base/model";
if (file_exists($filename))
    $Platine_Neu = file_get_contents($filename );
else
    echo "The file $filename does not exist";
$Platine_Neu = "kein Raspberry Pi";

if (!empty($USBDevice)) {
Damit sollte das behoben sein.
Das kann man sicherlich noch eleganter gestalten, bin aber kein php-Experte.

Nach einem Update der Solaranzeige ist die Änderung aber wieder weg.
Um das dauerhaft zu lösen müsste Ulrich das ebenfalls übernehmen.

Zum Thema Zeitzone vermute ich, dass PHP standardmäßig in UTC loggt. Das passt dann auch mit den +2 Stunden Versatz.
Die Zeitzone kann in der php.ini eingestellt werden.

Code: Alles auswählen

date.timezone = Europe/Berlin
Damit passt dann auch die Zeit im Log.

Grüße
malau

Benutzeravatar
mysolar123
Beiträge: 15
Registriert: Fr 17. Feb 2023, 16:10
Wohnort: BW
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von mysolar123 »

Tacho,

malau, sehr gute Arbeit, danke für den Codeschnipsel.
php.log ist nun fehlerfrei.

php.ini ist mit Europe/Berlin nachgetragen - so sieht das ordentlich aus.

Mal bei Ulrich nachfragen, für was die Abfrage welche Platine verwendet wird verwendet wird. Ich kenne natürlich die Abhängigkeiten nicht. Die Victron.php wird nun auch fehlerfrei durchgeführt - das Auslesen hatte ja schon funktioniert, eben halt diese Meldungen.

malau wie machst du das? Ist bei dir in der php.log auch so viel drin? Hattest du den code schon vorher bearbeitet oder heute kurz quick and dirty?
Ich kann ja nicht der einzige sein, der hier das Dingen auf Proxmox installiert hat und diese Fehler nicht sehen will?

Dani
Balkonkraftwerk mit 2x 375 Wp, Victron MPPT100/20, 16S LFP CALB, OpenDTU onBattery (Nulleinspeisung der Effizienz wegen!), Hichi IR, Hoymiles HM-300, Solaranzeige 6XX @ Proxmox

Benutzeravatar
Ulrich
Administrator
Beiträge: 6200
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 131 Mal
Danksagung erhalten: 849 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von Ulrich »

Die Abfrage der Platine ist reine Information. Die wird für nichts benutzt.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]

Benutzeravatar
mysolar123
Beiträge: 15
Registriert: Fr 17. Feb 2023, 16:10
Wohnort: BW
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von mysolar123 »

Danke für die Info :-) könnte man das forcieren, rauszunehmen ODER man erweitert es um zu "kein Raspberry gefunden" ?
Habe eben auf die multi_regler umgestellt, keine php.log Fehler, aber in der solaranzeige.log kommen die Victron Meldungen, da ist auch die Abfrage drin.
Hab ich aber heut abend keine Nerven mehr zu. Pro Minute 3 Zeilen Fehler - damit kann ich heut Nacht schlafen :P

Ulrich, kann man dich irgendwie unterstützen? Seitens mit Tests oder sonstigem?
Ich helfe da gern.

Ich kann auch nen sauberen Container aufsetzen und den hier bereitstellen, wäre dann mit php8.2 und debian12
Balkonkraftwerk mit 2x 375 Wp, Victron MPPT100/20, 16S LFP CALB, OpenDTU onBattery (Nulleinspeisung der Effizienz wegen!), Hichi IR, Hoymiles HM-300, Solaranzeige 6XX @ Proxmox

malau
Beiträge: 19
Registriert: So 23. Apr 2023, 19:01
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von malau »

mysolar123 hat geschrieben:
Mi 3. Jul 2024, 19:17
malau wie machst du das? Ist bei dir in der php.log auch so viel drin? Hattest du den code schon vorher bearbeitet oder heute kurz quick and dirty?
Ich kann ja nicht der einzige sein, der hier das Dingen auf Proxmox installiert hat und diese Fehler nicht sehen will?
Die Änderung hab ich gestern auf Grund deines Hinweises mal schnell zusammengebastelt.
Mein Log ist damit sauber, ich nutze allerdings auch nur die OpenDTU.

Die gleiche Abfrage ist auch in der "multi_usb_init.php" drin. Dort in der Zeile 25. Das muss dort ebenfalls geändert werden.
Kannst du gerne mal testen und berichten.

Benutzeravatar
Ulrich
Administrator
Beiträge: 6200
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 131 Mal
Danksagung erhalten: 849 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von Ulrich »

Woran könnte man denn sicher erkennen, dass die Solaranzeige auf einem Proxmox läuft?
Dann baue ich das ein.
Gibt es eine Datei, die nur in Proxmox vorhanden ist?
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]

Benutzeravatar
mr.big
Beiträge: 595
Registriert: Mi 7. Sep 2022, 12:12
Wohnort: tief im Osten...
Hat sich bedankt: 17 Mal
Danksagung erhalten: 121 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von mr.big »

Um zu erkennen, ob ein Linux-System auf Proxmox läuft, kannst du verschiedene Methoden verwenden.

2. Überprüfen von Systemdateien und -verzeichnissen

Proxmox installiert bestimmte Verzeichnisse und Dateien, die du überprüfen kannst:

Code: Alles auswählen

ls /etc/pve
ls /var/lib/pve-cluster

Das Vorhandensein dieser Verzeichnisse und Dateien deutet auf eine Proxmox-Installation hin.

### 3. Überprüfen der Kernel-Boot-Parameter

Proxmox kann spezifische Boot-Parameter verwenden. Du kannst diese in der Datei `/proc/cmdline` überprüfen:

Code: Alles auswählen

cat /proc/cmdline

Suche nach Einträgen, die auf Proxmox hinweisen könnten, wie z.B. `pve`.

### 4. Überprüfen der Netzwerkinterfaces

Proxmox verwendet oft spezifische Netzwerkschnittstellenkonfigurationen, insbesondere `vmbr` (Bridged Interfaces):


Wenn du `vmbr0`, `vmbr1` oder ähnliche Netzwerkschnittstellen siehst, könnte dies auf eine Proxmox-Installation hinweisen.

### 5. Überprüfen der Systeminformationen

Du kannst die DMI-Tabelle (Desktop Management Interface) auslesen, um Informationen über die Virtualisierungsplattform zu erhalten:

Code: Alles auswählen

sudo dmidecode -s system-product-name

Proxmox verwendet in der Regel KVM als Virtualisierungstechnologie. Ein Eintrag wie `KVM` oder `Proxmox` in den Ausgaben könnte darauf hinweisen.



Diese Methoden sollten dir eine gute Vorstellung davon geben, ob ein Linux-System auf Proxmox läuft.

malau
Beiträge: 19
Registriert: So 23. Apr 2023, 19:01
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von malau »

Einige der oben vorgeschlagen Ansätze funktionieren leider nicht, da wir uns ja im Gast-System befinden.
Am ehesten wäre daher Punkt 3 eine Möglichkeit.

Ich hab aber auch mal noch etwas gesucht.

Unter Debian/Ubuntu liefert z.B. cat /etc/appliance.info

Code: Alles auswählen

Name: debian-12-standard
Version: 12.2-1
Type: lxc
OS: debian-12
Section: system
Maintainer: Proxmox Support Team <support@proxmox.com>
Architecture: amd64
Installed-Size: 531
Infopage: https://pve.proxmox.com/wiki/Linux_Container#pct_supported_distributions
Description: Debian 12 Bookworm (standard)
A small Debian Bullseye system including all standard packages.
 
alternativ: cat /proc/version

Code: Alles auswählen

Linux version 6.5.11-7-pve (build@proxmox) (gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC PMX 6.5.11-7 (2023-12-05T09:44Z)
Das funktioniert bei mir unter Debian, Ubuntu und auch Alpine mit dem gleichen Ergebnis.
/proc wird ja vom host-System eingebunden, daher sollte das immer passen.

Man könnte das Ganze auch noch etwas vereinfachen:

Code: Alles auswählen

cat /proc/sys/kernel/osrelease 
6.5.11-7-pve
Auch interessant, funktioniert aber nur unter Debian ist "hostnamectl"
Das liefert dann folgendes:

Code: Alles auswählen

 Static hostname: solaranzeige
       Icon name: computer-container
         Chassis: container ☐
      Machine ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
         Boot ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  Virtualization: lxc
Operating System: Debian GNU/Linux 12 (bookworm)  
          Kernel: Linux 6.5.11-7-pve
    Architecture: x86-64
Das lässt zwar keine eindeutigen Rückschlüsse auf Proxmox zu, man kann aber eindeutig erkennen das es sich um einen lxc-container handelt.

Benutzeravatar
mr.big
Beiträge: 595
Registriert: Mi 7. Sep 2022, 12:12
Wohnort: tief im Osten...
Hat sich bedankt: 17 Mal
Danksagung erhalten: 121 Mal

Re: Installation Solaranzeige auf Proxmox mit Debian 12 - PHP Meldungen

Beitrag von mr.big »

Code: Alles auswählen

systemd-detect-virt
wirft ein "lxc" aus. Gilt dann aber nur für "Container" nicht in einer "VM" !?

Zurück zu „Installation auf einem anderen Debian Betriebssystem“

Wer ist online?

Mitglieder in diesem Forum: Sonstige [Bot], trendiction [Bot] und 0 Gäste