PiHole Crash bei Gravity-Update

Moin zusammen,

ich habe seit einigen Tagen das Problem, dass PiHole beim Gravity-Update immer wieder crasht.

[i] Creating new gravity databases...
[✗] Unable to copy data from /etc/pihole/gravity.db to /etc/pihole/gravity.db_temp
Error: near line 3: stepping, database is locked (5)
Error: near line 7: in prepare, database is locked (5)
Error: near line 8: stepping, attempt to write a readonly database (8)
Error: near line 9: stepping, attempt to write a readonly database (8)
Error: near line 11: in prepare, no such table: OLD.group (1)
Error: near line 12: in prepare, no such table: OLD.domain_audit (1)
Error: near line 14: in prepare, no such table: OLD.domainlist (1)
Error: near line 15: in prepare, no such table: OLD.domainlist_by_group (1)
Error: near line 16: in prepare, no such table: OLD.domainlist_by_group (1)
Error: near line 18: in prepare, no such table: OLD.adlist (1)
Error: near line 19: in prepare, no such table: OLD.adlist_by_group (1)
Error: near line 20: in prepare, no such table: OLD.adlist_by_group (1)
Error: near line 22: in prepare, no such table: OLD.info (1)
Error: near line 24: in prepare, no such table: OLD.client (1)
Error: near line 25: in prepare, no such table: OLD.client_by_group (1)
Error: near line 26: in prepare, no such table: OLD.client_by_group (1)
Error: near line 29: in prepare, trigger tr_domainlist_add already exists (1)
Error: near line 34: in prepare, trigger tr_client_add already exists (1)
Error: near line 39: in prepare, trigger tr_adlist_add already exists (1)
[i] Building tree...
[✗] Unable to build gravity tree in /etc/pihole/gravity.db_temp
Error: in prepare, database is locked (5)
[✗] Unable to create database. Please contact support.

Woran kann das liegen?
Danach sind alle Adlist, Black- und Whitelist leer.

Hier ist mein Debug-Code:
https://tricorder.pi-hole.net/SHvXQEV5/

Vielen Dank schonmal vorab.

Hier noch der Debug-Code nach dem laden des BackUps:
https://tricorder.pi-hole.net/z7fymIFv/

Deine beiden Debug logs zeigen Probleme mit der gravity.db. Aus irgendeinem Grund ist die korrupt, im ersten log ist sie komplett leer, im 2. zwar befüllt, aber immer noch nicht in Ordnung.
Hast du zwischen den Versuchen die Datenbank komplett gelöscht?

Ich würde die Datenbank von Pi-hole mal komplett neu anlegen lassen

pihole -g -r recreate

und danach sukzessiv mit Domains und Adlisten befüllen.

Hallo,

Ich hatte Mittwoch Abend 2 Adlist und einige RegEx Einträge angelegt und dann Gavityupdate gemacht.
Da lief alles noch.

2 Auto Updates (also 8h später) später hat sich der pi dann aufgehängt und alle Listen waren leer.

Als ich dann das BackUp wieder aufgespielt habe, g7ng die PI Load anzeige hoch auf 6,.. 4,.. 2,..
Das scheint mir auf überlastung anzuzeigen.

Kann ich nur irgendwie nicht nachvollziehen, da bisher der Pi immer weit unter 1,.. war bei allen 3 Werten.

Also sollte ich die Gravity Datenbank neu machen umd dann wieder alles aufspielen, hab ich das so richtig verstanden?

Was meinst du damit? Lässt du irgendein Skript laufen, damit sich Pi-hole automatisch updated? Oder nur die Adlisten?

Du sollst den Befehl ausführen. Der löscht die Datenbank und legt eine leer neu an. Dann fügst du ein paar Adlisten manuell hinzu und schaust, ob alles läuft. Wenn ja, kannst du über Teleporter das Backup einspielen.

man kann doch nen Crownjob anlegen, das die Gravity automatisch aktualisiert wird, das meine ich.

Hab jetzt Gravity.db resettet und alles neu aufgespielt.
Scheint erstmal zu laufen, wenn nochmal aufhängt melde ich mich nochmal

Danke dir schonmal

Gravity wird bereits von Haus aus einmal in der Woche per cron geupdated.

Genau diesen Cron hab ich auf alle 4 h gesetzt

Leider ist das Problem heute erneut aufgetreten, wieder alle Ad-, Black- und Whitelist leer

Warum passiert das immer wieder?

Habe den Pi jetzt mal komplett neu installiert und die neusten AD-List nicht mit aufgespielt, aber PiHole ist wieder gecrasht beim nächsten Gravity Update.

Was kann ich noch tun?

Wie sieht denn dieser Job bei Dir aus?

Bitte stell uns ein neues Debug Token zur Verfügung.

Hallo, Debug-Token werde ich gleich nochmal erstellen.

gestern Abend habe ich nochmal ein BackUp vom RaspberryPi aufgespielt und darauf hin heute nacht wieder den Überlastungsfehler bekommen und die Listen sind wieder alle leer.

Hier der Debugcode:
https://tricorder.pi-hole.net/sG1gK2im/

beim Versuch über Teleporter die Listen wieder einzulesen ist beim Gravityupdate folgender Fehler aufgetreten:

[✓] Creating new gravity databases
[✓] Storing downloaded domains in new gravity database
[i] Building tree...
[✗] Unable to build gravity tree in /etc/pihole/gravity.db_temp
Error: stepping, disk I/O error (10)
[✗] Unable to create database. Please contact support.
pi@raspberrypi:~ $

Erneut Probleme mit der Datenbank und nun dieser Fehler: es sieht aus, als ob die SD Karte ihr Lebensende erreicht hat. Probiere mal bitte eine neue SD Karte.

Hallo,
Die SD-Karte ist eine SanDisk Extreme Pro,welche genau wie der Raspberry Pi erst vor einigen Wochen gekauft wurde.
Die kann doch nicht schon kaputt sein

Check below:

Das könnte auch auf ein übergelaufenes tmp-Filesystem hindeuten.
Wie groß ist Deine gravity.db, wenn sie vollständig bestückt ist?

ls -lah /etc/pihole/gravity.db

Und verlinkst Du /etc/pihole/gravity.db bei Dir eventuell auf ein NFS-Dateisystem? Das könnte u.U. Probleme beim Locking der DB verursachen.

Hast du irgend ein Script laufen, dass mit Pi-hole bzw. dessen gravity.db interagiert?

Ich hatte mal den YoutubeAdsBlocker laufen gehabt, aber der ist in dem BackUp nicht drin gewesen

Hier der Link, wo ich das Skript her habe: