Befehl zur Erkennung des Festplattenplatzes funktioniert nicht auf nicht-ext4

Die Solaranzeige ist ein Programm, was im Prinzip nur PHP 7.x, Grafana und InfluxDB benötigt. Diese Programme müssen zusammen auf einem angepassten Betriebssystem laufen.

Moderator: Ulrich

seldor
Beiträge: 11
Registriert: Do 12. Mär 2020, 16:35

Befehl zur Erkennung des Festplattenplatzes funktioniert nicht auf nicht-ext4

Beitrag von seldor »

In regler_auslesen.php und multi_regler_auslesen.php wird folgndes Kommando verwendet um den freien Speicherplatz zu ermitteln:

Code: Alles auswählen

df -l -BG -t ext4 --output=avail | sed -e 1d
Dies limitiert die Filesysteme auf solche mit ext4 und nimmt dann das erste. Dies ist suboptimal, da auf anderen OSes zb btrfs zum Einsatz kommt. Auch ist das 'erste' vielleicht nicht immer das richtige.
Besser wäre meiner Meinung nach:

Code: Alles auswählen

df -l -BG --output=avail / | sed -e 1d
Dies ermittelt den Speicherplatz des roots (alternativ könnte auch /var/www oder so genommen werden; aber das root ist auch das, was mit dem aktuellen Befehl letztendlich wohl immer verwendet wird.
Damit könnte man die unnötigen Warnungen loswerden die aktuell das Log fluten, weil bei mir eben btrfs im Einsatz ist:

Code: Alles auswählen

21.09. 16:06:01 !! - GB freier Speicher steht auf der SD-Karte / USB Stick zur Verfügung.                                                                                         
21.09. 16:06:01 !! -Das ist zu wenig! Ist der gesamte Speicherplatz freigegeben? Bitte prüfen!
Vielen Dank

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

Re: Befehl zur Erkennung des Festplattenplatzes funktioniert nicht auf nicht-ext4

Beitrag von Ulrich »

Vielen Dank für den Hinweis. Ich habe die Änderung übernommen.
-----------------------------------------------------
Ulrich . . . . . . . . [Projekt Administrator]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste