Raspiblitz reboot endet im Desaster

Hi Leute, eigentlich wollte ich keinen neuen Thread für mein Problem eröffnen, aber ich sitze jetzt schon seit heute morgen in der früh an dem Thema und finde irgendwie nichts, was mir weiterhilft, deshalb fasse ich mal kurz mein Problem zusammen.

Das Display meiner Node zeigte mir seit einigen Tagen einen QR Code an, daher beschloss ich den Blitz zu rebooten, was nicht wirklich funktionierte, im sync Prozess blieb er über 2 Tage hängen. Heute morgen habe ich die SD neu geflashed und wieder gebootet, neues PW A vergeben und die vorhandenen Daten der SSD benutzt.
Dann wurden einige Daten wie der memepoolspace geladen und schlussendlich sehe ich jetzt seit 3-4h den Screen „preparing blockchain sync Please wait…“

Im Debug Log sagt er mir folgendes:

*** BLOCKCHAIN (MAINNET) SYSTEMD STATUS ***
● bitcoind.service - Bitcoin daemon
Loaded: loaded (/etc/systemd/system/bitcoind.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Mon 2022-12-26 12:13:14 GMT; 2h 41min ago
Process: 281200 ExecStartPre=/home/admin/config.scripts/blitz.systemd.sh log blockchain STARTED (code=exited, status=0/SUCCESS)
Process: 281212 ExecStartPre=/bin/chgrp bitcoin /mnt/hdd/bitcoin (code=exited, status=0/SUCCESS)
Process: 281213 ExecStart=/usr/local/bin/bitcoind -daemonwait -conf=/mnt/hdd/bitcoin/bitcoin.conf -datadir=/mnt/hdd/bitcoin -debuglogfile=/mnt/hdd/bitcoin/debug.log (code=exited, status=1/FAILURE)
CPU: 276ms

Dec 26 12:13:14 raspberrypi systemd[1]: bitcoind.service: Failed with result ‚exit-code‘.
Dec 26 12:13:14 raspberrypi systemd[1]: Failed to start Bitcoin daemon.

Von daher gehe ich nicht davon aus, dass „please wait…“ irgendetwas positives hervorbringt.
Evtl kann mir jemand, der mehr Ahnung hat sagen, wo das Problem liegt, wenn der Bitcoin deamon nicht gestartet werden kann, bzw. in irgendeiner Art und Weise helfen :smiley:

Schönen zweiten Weihnachtstag wünsche ich :wink:

Ich glaube die letzten Zeilen des Logfiles wären hilfreich um rauszufinden warum dein Bitcoind nicht laufen will.
sudo tail -100 /mnt/hdd/bitcoin/debug.log
würde zB. die letzten 100 Zeilen ausgeben.

Das mache ich doch gerne :grin:

sudo tail -100 /mnt/hdd/bitcoin/debug.log
2022-12-26T12:13:14Z Config file arg: zmqpubrawtx=„tcp://127.0.0.1:28333“
2022-12-26T12:13:14Z Config file arg: [main] bind=„127.0.0.1“
2022-12-26T12:13:14Z Config file arg: [main] rpcbind=****
2022-12-26T12:13:14Z Config file arg: [main] rpcbind=****
2022-12-26T12:13:14Z Config file arg: [main] rpcport=„8332“
2022-12-26T12:13:14Z Config file arg: [main] wallet=„wallet.dat“
2022-12-26T12:13:14Z Config file arg: [test] bind=„127.0.0.1“
2022-12-26T12:13:14Z Config file arg: [test] rpcbind=****
2022-12-26T12:13:14Z Config file arg: [test] rpcport=„18332“
2022-12-26T12:13:14Z Setting file arg: wallet = [„“]
2022-12-26T12:13:14Z Command-line arg: conf=„/mnt/hdd/bitcoin/bitcoin.conf“
2022-12-26T12:13:14Z Command-line arg: daemonwait=„“
2022-12-26T12:13:14Z Command-line arg: datadir=„/mnt/hdd/bitcoin“
2022-12-26T12:13:14Z Command-line arg: debuglogfile=„/mnt/hdd/bitcoin/debug.log“
2022-12-26T12:13:14Z Using at most 40 automatic connections (1024 file descriptors available)
2022-12-26T12:13:14Z Using 16 MiB out of 32/2 requested for signature cache, able to store 524288 elements
2022-12-26T12:13:14Z Using 16 MiB out of 32/2 requested for script execution cache, able to store 524288 elements
2022-12-26T12:13:14Z Script verification uses 3 additional threads
2022-12-26T12:13:14Z scheduler thread start
2022-12-26T12:13:14Z HTTP: creating work queue of depth 16
2022-12-26T12:13:14Z Config options rpcuser and rpcpassword will soon be deprecated. Locally-run instances may remove rpcuser to use cookie-based auth, or may be replaced with rpcauth. Please see share/rpcauth for rpcauth auth generation.
2022-12-26T12:13:14Z HTTP: starting 4 worker threads
2022-12-26T12:13:14Z Using wallet directory /mnt/hdd/bitcoin
2022-12-26T12:13:14Z init message: Verifying wallet(s)…
2022-12-26T12:13:14Z Using SQLite Version 3.32.1
2022-12-26T12:13:14Z Using wallet /mnt/hdd/bitcoin
2022-12-26T12:13:14Z Error: Failed to load database path ‚/mnt/hdd/bitcoin/wallet.dat‘. Data is not in recognized format.
2022-12-26T12:13:14Z Shutdown: In progress…
2022-12-26T12:13:14Z scheduler thread exit
2022-12-26T12:13:14Z Shutdown: done


Habe die Mode noch einmal rebootet und das ist der gleiche Screen, wie beim ersten reboot, als sie vorher problemlos lief.

Mein RaspiBlitz ist noch auf der Version 1.7.2 und deine möglicherweise aktueller. Ich verstehe nicht, warum bei dir der bitcoind eine wallet.dat laden möchte, an der er sich verschluckt und streikt/schmollt.

P.S.
Bei mir sieht das im debug.log so aus:

2022-12-06T20:00:57Z Using wallet directory /mnt/hdd/bitcoin
2022-12-06T20:00:57Z init message: Verifying wallet(s)…
2022-12-06T20:00:57Z Using BerkeleyDB version Berkeley DB 4.8.30: (April  9, 2010)
2022-12-06T20:00:57Z Using wallet /mnt/hdd/bitcoin/wallet.dat/wallet.dat
2022-12-06T20:00:57Z BerkeleyEnvironment::Open: LogDir=/mnt/hdd/bitcoin/wallet.dat/database ErrorFile=/mnt/hdd/bitcoin/wallet.dat/db.log
2022-12-06T20:00:57Z init message: Loading banlist…

etwas später dann in der debug.log:

2022-12-06T20:01:54Z init message: Loading wallet…
2022-12-06T20:01:54Z BerkeleyEnvironment::Open: LogDir=/mnt/hdd/bitcoin/wallet.dat/database ErrorFile=/mnt/hdd/bitcoin/wallet.dat/db.log
2022-12-06T20:01:54Z [wallet.dat] Wallet File Version = 169900
2022-12-06T20:01:54Z [wallet.dat] Keys: 2001 plaintext, 0 encrypted, 2001 w/ metadata, 2001 total. Unknown wallet records: 0
2022-12-06T20:01:54Z [wallet.dat] Wallet completed loading in             136ms
2022-12-06T20:01:54Z [wallet.dat] setKeyPool.size() = 2000
2022-12-06T20:01:54Z [wallet.dat] mapWallet.size() = 0
2022-12-06T20:01:54Z [wallet.dat] m_address_book.size() = 0

Ich weiß jetzt auch nicht so genau, was da in meiner /mnt/hdd/bitcoin/wallet.dat/wallet.dat drin ist. Ich habe mal Sparrow mit meinem RaspiBlitz verbunden (da ist jetzt auch ein sparrow Directory in /mnt/hdd/bitcoin mit einer eigenen wallet.dat drin). Ich meine, die Lightning-Wallet vom LND verwaltet der LND selber. Aber in diesen Internas bin ich nicht fit.

Ich werde wohl nicht drum herum kommen, die Node nach meinem Urlaub neu aufzusetzen.
Aber ich dachte mir, ich frage mal ChatGPT, ob es evtl. was mit den Logs anfangen kann.
Wollte die Antwort mal teilen, auch wenn es mir nicht direkt hilft, ist die Auskunft besser als das, was ich selber aus den Logs lesen kann :smiley:

Es sieht so aus, als ob beim Versuch, auf die Wallet-Datei zuzugreifen, ein Fehler aufgetreten ist. Die Meldung „Error: Failed to load database path ‚/mnt/hdd/bitcoin/wallet.dat‘. Data is not in recognized format.“ deutet darauf hin, dass die Wallet-Datei möglicherweise beschädigt oder in einem unerwarteten Format vorliegt.

Es gibt ein paar Schritte, die Sie ausprobieren können, um das Problem zu beheben:

  1. Stellen Sie sicher, dass die Wallet-Datei tatsächlich vorhanden ist und sich an der angegebenen Stelle befindet.
  2. Versuchen Sie, die Wallet-Datei zu reparieren, indem Sie den Befehl „bitcoind -salvagewallet“ ausführen. Dieser Befehl versucht, beschädigte Wallet-Dateien zu reparieren und eventuell fehlende Daten wiederherzustellen.
  3. Wenn die obigen Schritte nicht funktionieren, könnte es sein, dass die Wallet-Datei irreparabel beschädigt ist. In diesem Fall müssten Sie möglicherweise eine neue Wallet-Datei erstellen, indem Sie den Befehl „bitcoind -createwallet“ ausführen.

ChatGPT:
" Es sieht so aus, als ob beim Versuch, auf die Wallet-Datei zuzugreifen, ein Fehler aufgetreten ist. Die Meldung „Error: Failed to load database path ‚/mnt/hdd/bitcoin/wallet.dat‘. Data is not in recognized format.“ deutet darauf hin, dass die Wallet-Datei möglicherweise beschädigt oder in einem unerwarteten Format vorliegt.

Es gibt ein paar Schritte, die Sie ausprobieren können, um das Problem zu beheben:

  1. Stellen Sie sicher, dass die Wallet-Datei tatsächlich vorhanden ist und sich an der angegebenen Stelle befindet.
  2. Versuchen Sie, die Wallet-Datei zu reparieren, indem Sie den Befehl „bitcoind -salvagewallet“ ausführen. Dieser Befehl versucht, beschädigte Wallet-Dateien zu reparieren und eventuell fehlende Daten wiederherzustellen.
  3. Wenn die obigen Schritte nicht funktionieren, könnte es sein, dass die Wallet-Datei irreparabel beschädigt ist. In diesem Fall müssten Sie möglicherweise eine neue Wallet-Datei erstellen, indem Sie den Befehl „bitcoind -createwallet“ ausführen.

Es ist auch möglich, dass das Problem nicht direkt mit der Wallet-Datei zusammenhängt, sondern dass es ein anderes Problem mit dem Bitcoin-Client gibt. In diesem Fall könnten weitere Fehlermeldungen im Debug-Log helfen, das Problem zu identifizieren und zu beheben."

Bis nächsten Jahr, keep on hodling :stuck_out_tongue_winking_eye: :v:

Hallo zusammen,

Habe heute mein RaspiBlitz neu gestartet. Nur leider bleibt er beim Reboot und auch beim Kaltstart hängen. Was kann ich machen? HILFE!

Danke euch.
LG
Fabio

Hast du mal nachgesehen, was mit deiner raspiblitz.info passiert ist?
Die scheint ja zu fehlen laut Log. Auch scheint Redis nicht zu starten.

Da wuerde ich anfangen zu debuggen. Auch scheint dein letzter Login ewig her zu sein.
Hast du so lange nicht geupdated?

Habe ehrlich gesagt keine Ahnung was damit geschehen ist. Bislang ist alles prima gelaufen. Habe vor 2-3 Wochen Watchtower installiert und habe täglich meine Lightning Channels gecheckt (via RTL und LNDg) und war alles gut. Als ich heute morgen nicht mehr auf den LNDg Server kam wollte ich den RaspiBlitz neustarten und das ist das Ergebnis…
Ich sag mal so: meine Linux Kenntnisse sind eher bescheiden…:face_with_peeking_eye:
Bin deshalb um jeden Tipp dankbar (inkl. Befehl)…

Mal auf deinem PI anmelden und prüfen, ob das USB-Drive eingehängt ist. Gib mal
df -h
ein.

sieht okay aus, oder?

Nope, ganz und garnicht: /dev/root hat keinen freien Platz mehr, warum auch immer. Das darf definitiv nicht sein, denn dann kann keine Datei neu geschrieben oder ergänzt werden. Irgendetwas ist da aus dem Ruder gelaufen.
Deine microSD-Karte ist vollgelaufen, könnten ausufernde Log-Dateien sein oder 'was anderes. Das musst du beheben, ansonsten wird dein RaspiBlitz nicht froh.

In meinem RaspiBlitz steckt eine Samsung Endurance mit 128GB. Keine Ahnung, wann ich mit RaspiBlitz angefangen habe, muss so v1.7.0 oder so gewesen sein. Bei mir ist /dev/root nur zu ca. 13G belegt und ~100G frei. Viel unbelegter Speicher ist gut für’s Wear Leveling bei Flash-Speicher, da kann der Flash-Controller schön verteilen.

Wie schon @Cricktor feststellte, ist dein microSD voll oder defekt. Schaue mal, wo der Speicherfresser liegt.

sudo du -hd 1 --exclude=/mnt/hdd /

Sollte /var der Speicherfresser sein, sind es wahrscheinlich vollgelaufene Logfiles. Dann mal mit
sudo ls -lSr /var/log/

dir das Ergebnis anschauen, die größten Dateien stehen ganz unten. Habe kein PI, gehe mal davon aus, dass es in etwas einem Debian-System ähnelt.

Vielen Dank für eure Hilf… schon mal vorneweg!

Ja, es sind tatsächlich die Logs die sich füllen. Kann ich die einfach löschen (sind ja schreibgeschützt)? Es ist mir allerdings ein Rätsel warum die sich so füllen und könnte man die nicht über die SSD laufen lassen, da wäre ja mehr Platz…?

Du solltest sie dir mal anschauen, da läuft etwas daneben. Zum Bsp.

sudo less /var/log/syslog
sudo less /var/log/daemon.log

Dann einfach mal durchblättern und schauen ob Fehler protokolliert werden. Mit q kommst du aus less wieder raus.

PS: Keine Ahnung ob es mit einem PI funktioniert. Kannst es ja mal versuchen, die Logfiles zu verkleinern mit:
sudo journalctl --vacuum-time=10d
sudo journalctl --vacuum-size=1G

Der erste Befehl löscht alles was älter als 10 Tage ist, der zweite Befehl löscht alles weg, was mehr als 1 GB belegt.

Guten Morgen, ich hatte letztens auch so ein ähnliches Problem weil meine SSD von meiner RaspiBlitz Node nicht mehr angeschlossen war und deshalb das gleiche Problem bei mir aufgekommen ist. Bei mir hat es geholfen die peers list zu löschen, da die Node wieder neue peers aufbauen muss, aber anscheinend auf die alten noch zurück greift, welche einfach mit einem Command gelöscht werden kann. Anschließend rebooten und dann hat es bei mir wieder funktioniert. Ich hoffe das ich dir damit weiterhelfen konnte. LG :slight_smile:

Danke, werde ich mir heute Abend anschauen, wenn ich wieder zu Hause bin🤞🏼

1 „Gefällt mir“

Hi Bitcoinhodler,
Danke für die Inputs. Kannst du mir als Laien das etwas genauer ausführen? Sorry!:face_with_peeking_eye:
Und heisst das, dass mein SSD abgeraucht ist oder warum ist die auf einmal nicht mehr angeschlossen?

1 „Gefällt mir“

Gerne doch @Saia21. Ja klar gerne. Alles gut I ch bin auch noch ziemlich neu in dem Thema :sweat_smile: Du loggst dich über SSH in den RaspiBlitz ein. Dann drückst du Strg und C um in die Kommandozeile zu gelangen. Anschließend gibst du:

sudo mv /mnt/hdd/bitcoin/peers.dat /mnt/hdd/bitcoin/peers.dat.old

gefolgt von

sudo reboot

ein

Er wird nach Passwort A fragen.

Anschließend wartest du ein paar Minuten, loggst dich wieder ein und schaust, was dann da steht. Dann müsst es hoffentlich wieder funktionieren. Ja probiere es heute Abend mal aus und gebe mir mal Feedback ob es dir geholfen hat. Nein das heißt nicht das die SSD abgetaucht oder beschädigt ist. Das hatte ich auch zuerst gedacht, aber die Node hat eine Liste mit peers, also andere Nodes mit denn sie sich verbindet und diese muss ganz einfach gelöscht werden wenn die SSD nicht mehr angeschlossen war und wieder neu gestartet wird damit eine neue Liste erstellt wird. LG und viel Erfolg :slight_smile:

habe sowohl die Grösse und die Haltezeit reduziert (Dank dem Tipp von fedaykin). Log waren alles „write errors“ und im Daemon waren nur „~“.

Danke Bitcoinhodler, habe das genauso gemacht und zumindest fährt mein Raspi jetzt wieder hoch und ist nun am synchen. Noch ist es nicht überstanden, aber ich bin nun guten Mutes. Danke euch. Melde mich noch, wenn alles wieder ist, wie es muss, oder eben nicht. :slight_smile: