NEWS
[gelößt] größe influxDB ermitteln
-
@ente34 Ohne sudo geht es auch.
-
@Thomas-Braun
Bei mir nicht (warum?)pi@raspi-iobroker:~ $ du -sh /var/lib/influxdb/data/ du: das Verzeichnis '/var/lib/influxdb/data/_internal' kann nicht gelesen werden: Keine Berechtigung du: das Verzeichnis '/var/lib/influxdb/data/iobroker' kann nicht gelesen werden: Keine Berechtigung 12K /var/lib/influxdb/data/ pi@raspi-iobroker:~ $
-
@ente34
Berechtigungen bei mir:pi@raspi-iobroker:~ $ ls -l /var/lib/influxdb/data/ insgesamt 8 drwx------ 4 influxdb influxdb 4096 Sep 7 18:13 _internal drwx------ 4 influxdb influxdb 4096 Sep 8 17:03 iobroker
-
@ente34
Oh, sorry, mein Fehler, hab in einem anderen Verzeichnis geschaut. -
ah perfekt! danke!
aber was stimmt hier nicht:var result; schedule("* * * * *", async function () { exec('sudo du -sh /var/lib/influxdb/data/', async function (error, result, stderr) { setState("javascript.0.System.influxDB_size"/*influxDB_size*/, result); }); });
das Skript scheint nichts zu tun, folgende info Meldung gibts, sonst nichts...
javascript.0 (14224) script.js.Datenbank.DB_size: registered 0 subscriptions and 1 schedule
wo liegt mein Denkfehler?
Gruß -
@jeti
Nein, das ist ein sudo-Problem.
(Ich gehe davon aus, dass Du in der javascript-Instanz "exec" erlaubt hast)
Du siehst es, wenn Du stderr ausgibts.Meine Unix Kenntnisse stammen von AIX(IBM) Mitte der 90er, da gab es noch kein sudo.
Du kannst Dir aber (einmalig) die Leserechte setzen und dann in Deinem Script ohne sudo arbeiten.sudo chmod -R ugoa+r /var/lib/influxdb/data sudo find /var/lib/influxdb/data/ -type d -exec chmod uoga+x {} \;
Kontrollieren ohne sudo:
du -sh /var/lib/influxdb/data/ | cut -f1
-
-
@Thomas-Braun
Guter Tipp, hat aber bei mir nicht funktioniert.
Und mit /etc/sudoers.d/ kenne ich mich leider nicht aus ... -
@Thomas-Braun du hast recht, hier liegt der Hund begraben:
sudo -u iobroker du -sh /var/lib/influxdb/data/ du: cannot read directory '/var/lib/influxdb/data/_internal': Permission denied du: cannot read directory '/var/lib/influxdb/data/iobroker': Permission denied 12K /var/lib/influxdb/data/
dann fix die rechte vergeben:
sudo chmod -R 755 /var/lib/influxdb/data/
und schon klappts:
sudo -u iobroker du -sh /var/lib/influxdb/data/
Skript pass ich morgen an uns stelle es hier rein
-
Skript sieht nun so aus:
var result; schedule('{"time":{"start":"00:00","end":"24:00","mode":"hours","interval":6},"period":{"days":1}}', async function () { exec('du -sh /var/lib/influxdb/data/', async function (error, result, stderr) { setState("javascript.0.System.influxDB_size"/*influxDB_size*/, parseFloat(result)); }); });
Danke für die Hilfe
-
Wenn der Befehl:
sudo du -sh /var/lib/influxdb/data/
folgendes ausspuckt:
19M /var/lib/influxdb/data/ist meine Datenbank dann 19 MB groß?